# set CPUS for Linux or FreeBSD
PLATFORM := $(shell uname)
CPUS := $(strip $(if $(shell echo $(PLATFORM)|grep Linux),\
$(shell cat /proc/cpuinfo|grep -c processor),\
$(shell sysctl -a | egrep -i 'hw.ncpu' | cut -d: -f2)))
CC := gcc
CXX := g++
DEBUG := -D_DEBUG
DEBUG := -DNDEBUG -O3
CXXFLAGS := -g $(DEBUG) -fPIC -MMD -Wcast-qual -Wcast-align \
-Wwrite-strings -Wsign-compare -Winvalid-pch -fms-extensions \
-Wfloat-equal -Wextra -Wall -Wno-unused-parameter \
-Wno-unused-function -Wunused-variable -Wunused-value \
-Woverloaded-virtual -Wsign-promo -fno-gnu-keywords -pipe \
-I/usr/local/include \
-I/home/s/include \
-I/home/cloud/zhongchao/.local/token/include \
-I/home/cloud/zhongchao/.local/token/qmodule/qcommon-1.0.1/include \
-I/home/cloud/zhongchao/.local/token/qmodule/segment-2.2.0/include \
-I/home/cloud/zhongchao/.local/token/qmodule/transcode-1.0.0/include \
-I.
LDFLAGS := -L.. \
-L/usr/local/lib \
-L/usr/lib64/ \
-L/home/s/lib \
-L/home/cloud/zhongchao/.local/token/lib \
-L./lib \
-lpthread
ifeq ($(PLATFORM), Linux)
RPATH := -Wl,-rpath
else
RPATH := -rpath
endif
RTFLAGS := \
$(RPATH)=.. \
$(RPATH)=/home/s/lib\
$(RPATH)=/usr/local/lib
SRCS := $(wildcard *.cpp)
OBJS := $(patsubst %.cpp, %.o, $(SRCS))
DEPS := $(patsubst %.o, %.d, $(OBJS))
#install : all
#cp -f $(TARGET) ../webscan_restart/bin/$(PLATFORM)
#all : $(TARGET)
#.PHONY : all
#$(TARGET) : $(OBJS)
#.PHONY : $(TARGET)
# $(CXX) $^ $(LDFLAGS) $(RTFLAGS) $(LIBS) -o $@
#clean:
# rm -rf *.d *.o core.* *.out $(TARGET)
#-include $(DEPS)
#ill : $(TARGET)
#.PHONY : all
#files := $(foreach(target, $(TARGET), $(target) : $(OBJS) $(CXX) $(OBJS) $(LDFLAGS) $(RTFLAGS) $(libs) -o $(TARGET)))
#$(TARGET) : $(OBJS)
#.PHONY : $(TARGET)
# $(CXX) $^ $(LDFLAGS) $(RTFLAGS) $(libs) -o $@
#token_demo : token_demo.o
# $(CXX) $^ $(LDFLAGS) $(RTFLAGS) $(libs) -o $@
main : main.o reader.o
$(CXX) $^ $(LDFLAGS) $(RTFLAGS) $(libs) -o $@
$(OBJS) : %.o : %.cpp
$(CC) -c $(CXXFLAGS) $< -o $@
#$(OBJS) : %.o %.cc
# $(CXX) -c $(CXXFLAGS) $< -o $@
#$(OBJS) : %.o : %.c
# $(CXX) -c $(CXXFLAGS) $(SRCS) -o $(OBJS)
clean:
rm -rf *.d *.o core.* *.out $(TARGET)
#.PHONY: clean check
我的Makefile
最新推荐文章于 2024-06-12 09:49:04 发布