46 lines
1.1 KiB
Makefile
46 lines
1.1 KiB
Makefile
include ./../../../linux.mk
|
|
|
|
ROOT := $(realpath $(CURDIR)/../../../..)
|
|
|
|
INC_PATH := -I$(ROOT)/release/inc \
|
|
-I$(ROOT)/src/system/inc \
|
|
-I$(ROOT)/src/public/libdatacenter/inc \
|
|
-I$(ROOT)/src/public/liblog/inc \
|
|
-I$(ROOT)/src/public/libfunc/inc \
|
|
-I$(ROOT)/src/public/libcmd/inc \
|
|
-I$(ROOT)/src/public/libtask/inc \
|
|
-I$(ROOT)/src/public/libmy_xxhash/inc \
|
|
-I$(ROOT)/src/protocol/libmodbus/inc
|
|
|
|
LIBS := -L$(ROOT)/release/$(BUILD_TYPE)/lib \
|
|
-lsystem -lmodbus_m -lmodbus -l60870 \
|
|
-ldatacenter -lxml -lcmd -ltask \
|
|
-llog -lfunc -lmy_xxhash -lcJSON -lmd5 -lcomm \
|
|
-lpthread -lstdc++
|
|
|
|
O := $(ROOT)/release/$(BUILD_TYPE)/exe/RTU
|
|
S := $(ROOT)/src/system/RTU/src
|
|
B := $(CURDIR)/RTU/obj
|
|
SRCS := $(wildcard $(S)/*.c)
|
|
OBJS := $(patsubst $(S)/%.c, $(B)/%.o, $(SRCS))
|
|
F := $(C_FLAGS) $(INC_PATH)
|
|
|
|
.PHONY: all
|
|
all: $(O)
|
|
@echo "[RTU] built -> $(O)"
|
|
|
|
$(O): $(OBJS)
|
|
@mkdir -p $(dir $@)
|
|
$(CXX) $^ $(LIBS) -o $@
|
|
|
|
$(B)/%.o: $(S)/%.c
|
|
@mkdir -p $(dir $@)
|
|
$(CC) $(F) -c $< -o $@
|
|
|
|
.PHONY: clean
|
|
clean:
|
|
rm -rf $(B) $(O)
|
|
|
|
.PHONY: rebuild
|
|
rebuild: clean all
|