59 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Makefile
		
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Makefile
		
	
	
######################################
 | 
						||
#
 | 
						||
######################################
 | 
						||
#source file
 | 
						||
#源文件,自动找所有.c和.cpp文件,并将目标定义为同名.o文件
 | 
						||
SOURCE  := $(wildcard *.c) $(wildcard *.cpp)
 | 
						||
OBJS    := $(patsubst %.c,%.o,$(patsubst %.cpp,%.o,$(SOURCE)))
 | 
						||
 | 
						||
#target you can change test to what you want
 | 
						||
#目标文件名,输入任意你想要的执行文件名
 | 
						||
TARGET  := datahubs
 | 
						||
 | 
						||
#compile and lib parameter
 | 
						||
#编译参数
 | 
						||
CC      := g++
 | 
						||
LIBS    := -L/usr/local/lib -lhv -lsqlite3 -lopdb -lpthread -liconv -ldl -lz
 | 
						||
LDFLAGS :=
 | 
						||
DEFINES :=
 | 
						||
INCLUDE := -I. -I/usr/local/include
 | 
						||
 | 
						||
CFLAGS  := -Wall -O3 $(DEFINES) $(INCLUDE) -std=c++11
 | 
						||
 | 
						||
# 根据 DEBUG 宏决定是否包含调试信息
 | 
						||
ifeq ($(DEBUG), 1)
 | 
						||
    CFLAGS += -g -D_DEBUG
 | 
						||
else ifeq ($(debug),1)
 | 
						||
    CFLAGS += -g -D_DEBUG
 | 
						||
endif
 | 
						||
 | 
						||
CXXFLAGS:= $(CFLAGS) -DHAVE_CONFIG_H
 | 
						||
 | 
						||
#i think you should do anything here
 | 
						||
#下面的基本上不需要做任何改动了
 | 
						||
.PHONY : everything objs clean veryclean rebuild
 | 
						||
 | 
						||
 | 
						||
everything : $(TARGET) 
 | 
						||
 | 
						||
all : $(TARGET)
 | 
						||
 | 
						||
 | 
						||
objs : $(OBJS)
 | 
						||
 | 
						||
 | 
						||
rebuild: veryclean everything
 | 
						||
 | 
						||
 | 
						||
clean :
 | 
						||
	rm -fr *.so
 | 
						||
	rm -fr *.o
 | 
						||
 | 
						||
 | 
						||
veryclean : clean
 | 
						||
	rm -fr $(TARGET)
 | 
						||
 | 
						||
 | 
						||
$(TARGET) : $(OBJS)
 | 
						||
	$(CC) $(CXXFLAGS) -o $@ $(OBJS) $(LDFLAGS) $(LIBS)
 |