sdk-hwV1.3/external/eyesee-mpp/system/private/onvif/makefile.main

79 lines
1.8 KiB
Plaintext
Raw Normal View History

2024-05-07 10:09:20 +00:00
CC := gcc
CXX := g++
AR := ar
# CC := arm-aw-linux-gnueabi-gcc
# CXX := arm-aw-linux-gnueabi-g++
# AR := arm-aw-linux-gnueabi-ar
CPP_OBJ_FILES := $(patsubst %.cpp, %.o, $(filter %.cpp, $(SRC_FILES)))
C_OBJ_FILES := $(patsubst %.c, %.o, $(filter %.c, $(SRC_FILES)))
SRC_DIRS := $(dir $(SRC_FILES))
D_FILES := $(CPP_OBJ_FILES:.o=.d)
D_FILES += $(C_OBJ_FILES:.o=.d)
D_FILES_TMP := $(addsuffix .*, $(D_FILES))
CC_FLAGS += $(foreach dir, $(INC_DIRS), -I$(dir))
TARGET_SHARED_LIB := $(addprefix $(TARGET_DIR)/, $(addsuffix .so, $(TARGET_NAME)))
TARGET_STATIC_LIB := $(addprefix $(TARGET_DIR)/, $(addsuffix .a, $(TARGET_NAME)))
TARGET_EXE_FILE := $(addprefix $(TARGET_DIR)/, $(TARGET_NAME))
TARGET_CLEAN += $(CPP_OBJ_FILES) $(C_OBJ_FILES)
ifeq ($(build-share), t)
ALL += $(TARGET_SHARED_LIB)
LD_FLAGS += -shared
CC_FLAGS += -fPIC
TARGET_CLEAN += $(TARGET_SHARED_LIB)
endif
ifeq ($(build-static), t)
ALL += $(TARGET_STATIC_LIB)
LD_FLAGS +=
CC_FLAGS +=
TARGET_CLEAN += $(TARGET_STATIC_LIB)
endif
ifeq ($(build-exe), t)
ALL += $(TARGET_NAME)
LD_FLAGS +=
CC_FLAGS += -Wall -Wno-unknown-pragmas -Wno-format
TARGET_CLEAN += $(TARGET_EXE_FILE)
endif
all: $(ALL)
$(TARGET_STATIC_LIB) : $(CPP_OBJ_FILES) $(C_OBJ_FILES)
$(AR) cr $(LD_FLAGS) -o $@ $^
$(TARGET_SHARED_LIB) : $(CPP_OBJ_FILES) $(C_OBJ_FILES)
$(CXX) $(LD_FLAGS) -o $@ $^
$(TARGET_NAME) : $(CPP_OBJ_FILES) $(C_OBJ_FILES)
$(CXX) $(LD_FLAGS) -o $(TARGET_DIR)/$@ $^
%.o : %.cpp
$(CXX) $(CC_FLAGS) -c -o $@ $<
%.o : %.c
$(CC) $(CC_FLAGS) -c -o $@ $<
%.d : %.cpp
@set -e; \
$(CXX) -MM $(CC_FLAGS) $< > $@.$$$$; \
sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
rm -f $@.$$$$
%.d : %.c
@set -e; \
$(CXX) -MM $(CC_FLAGS) $< > $@.$$$$; \
sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \
rm -f $@.$$$$
-include $(D_FILES)
# debug
# $(info "TARGET_CLEAN:" $(TARGET_CLEAN))