#CROSS = arm-linux-gnueabi-
CC = $(CROSS)gcc
CXX = $(CROSS)g++
.PHONY :all
.PHONY :clean
C_SRC := $(wildcard *.c)
X_SRC := $(wildcard *.cpp)
COM_SRC := common.c
COM_OBJ := $(COM_SRC:%.c=./obj/%.o)
C_OBJ := $(patsubst %.c, ./obj/%.o, $(C_SRC))
C_OBJ := $(filter-out $(COM_OBJ),$(C_OBJ))
X_OBJ := $(patsubst %.cpp, ./obj/%.o, $(X_SRC))
C_TAG := $(notdir $(C_OBJ:%.o=%))
X_TAG := $(notdir $(X_OBJ:%.o=%))
CFLAGS = -static -Wall -Wno-missing-braces
CPPFLAGS += -g -std=c++11 -Wall -Wno-unused-but-set-variable -Wno-unused-variable
CV_INC +=`pkg-config --cflags opencv4`
CV_LIBS +=`pkg-config --libs opencv4`
LIBS = -lm -lpthread
.PHONY:all
.PHONY:clean
#TARGET := $(C_TAG)
TARGET := $(C_TAG) $(X_TAG)
####TARGET = $(C_TAG) $(X_TAG)
all:$(TARGET)
@echo "<======== over .. ======>"
$(C_TAG):$(C_OBJ) $(COM_OBJ)
$(CC) -o $@ ./obj/$@.o $(COM_OBJ) $(LIBS)
$(X_TAG):$(X_OBJ)
$(CXX) -o $@ ./obj/$@.o $(CV_LIBS)
./obj/%.o:%.c
$(CC) -c $(CFLAGS) $< -o $@ -fdiagnostics-color=auto
./obj/%.o:%.cpp
$(CXX) $(CV_INC) $(CPPFLAGS) -c $< -o $@ -fdiagnostics-color=auto
clean:
-rm -f ./obj/* $(TARGET)