fcc9647983
* Package fuzzers * Provide ability to remove main * Don't build fuzzers by default
80 lines
2.1 KiB
Makefile
80 lines
2.1 KiB
Makefile
#Makefile to build BACnet Application for the GCC port
|
|
|
|
# tools - only if you need them.
|
|
# Most platforms have this already defined
|
|
# CC = gcc
|
|
|
|
# Executable file name
|
|
TARGET = fuzz-afl
|
|
|
|
TARGET_BIN = ${TARGET}$(TARGET_EXT)
|
|
|
|
# BACNET_PORT, BACNET_PORT_DIR, BACNET_PORT_SRC are defined in common Makefile
|
|
# BACNET_SRC_DIR is defined in common apps Makefile
|
|
BACNET_OBJECT_DIR = $(BACNET_SRC_DIR)/bacnet/basic/object
|
|
SRC = main.c \
|
|
$(BACNET_OBJECT_DIR)/netport.c \
|
|
$(BACNET_OBJECT_DIR)/client/device-client.c
|
|
|
|
PORT_MSTP_SRC = \
|
|
$(BACNET_PORT_DIR)/rs485.c \
|
|
$(BACNET_PORT_DIR)/dlmstp.c \
|
|
$(BACNET_SRC_DIR)/bacnet/datalink/mstp.c \
|
|
$(BACNET_SRC_DIR)/bacnet/datalink/mstptext.c \
|
|
$(BACNET_SRC_DIR)/bacnet/datalink/crc.c
|
|
|
|
PORT_BIP_SRC = \
|
|
$(BACNET_PORT_DIR)/bip-init.c \
|
|
$(BACNET_SRC_DIR)/bacnet/datalink/bvlc.c \
|
|
$(BACNET_SRC_DIR)/bacnet/basic/bbmd/h_bbmd.c
|
|
|
|
# WARNINGS, DEBUGGING, OPTIMIZATION are defined in common apps Makefile
|
|
# BACNET_DEFINES is defined in common apps Makefile
|
|
# put all the flags together
|
|
INCLUDES = -I$(BACNET_SRC_DIR) -I$(BACNET_PORT_DIR)
|
|
CFLAGS += $(WARNINGS) $(DEBUGGING) $(OPTIMIZATION) $(BACNET_DEFINES) $(INCLUDES)
|
|
LFLAGS += -Wl,$(SYSTEM_LIB)
|
|
ifneq (${BACNET_LIB},)
|
|
LFLAGS += -Wl,$(BACNET_LIB)
|
|
endif
|
|
# GCC dead code removal
|
|
CFLAGS += -ffunction-sections -fdata-sections
|
|
LFLAGS += -Wl,--gc-sections
|
|
|
|
BACNET_SRC = \
|
|
$(wildcard $(BACNET_SRC_DIR)/bacnet/*.c) \
|
|
$(wildcard $(BACNET_SRC_DIR)/bacnet/basic/*.c) \
|
|
$(wildcard $(BACNET_SRC_DIR)/bacnet/basic/binding/*.c) \
|
|
$(wildcard $(BACNET_SRC_DIR)/bacnet/basic/service/*.c) \
|
|
$(wildcard $(BACNET_SRC_DIR)/bacnet/basic/sys/*.c) \
|
|
$(BACNET_SRC_DIR)/bacnet/basic/npdu/h_routed_npdu.c \
|
|
$(BACNET_SRC_DIR)/bacnet/basic/npdu/s_router.c \
|
|
$(BACNET_SRC_DIR)/bacnet/basic/tsm/tsm.c
|
|
|
|
SRCS = ${SRC} ${BACNET_SRC} ${PORT_MSTP_SRC} ${PORT_BIP_SRC}
|
|
|
|
OBJS += ${SRCS:.c=.o}
|
|
|
|
.PHONY: all
|
|
all: Makefile ${TARGET_BIN}
|
|
|
|
${TARGET_BIN}: ${OBJS}
|
|
${CC} ${PFLAGS} ${OBJS} ${LFLAGS} -o $@
|
|
size $@
|
|
cp $@ ../../bin
|
|
|
|
.c.o:
|
|
${CC} -c ${CFLAGS} $*.c -o $@
|
|
|
|
.PHONY: depend
|
|
depend:
|
|
rm -f .depend
|
|
${CC} -MM ${CFLAGS} *.c >> .depend
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
rm -f core ${TARGET_BIN} ${OBJS} $(TARGET).map
|
|
|
|
.PHONY: include
|
|
include: .depend
|