2019-08-21 17:59:03 +02:00
|
|
|
include Makefile.o.dep
|
|
|
|
|
|
|
|
name=mormsample
|
|
|
|
|
|
|
|
ifndef GLOBAL_WORKING_DIR
|
|
|
|
GLOBAL_WORKING_DIR := $(shell pwd)/../..
|
|
|
|
endif
|
|
|
|
|
|
|
|
|
2021-03-09 18:10:34 +01:00
|
|
|
CXX = g++10
|
2019-08-21 17:59:03 +02:00
|
|
|
#CXX = clang++
|
|
|
|
|
|
|
|
# -fsanitize=address
|
|
|
|
# -Wl,-rpath=/usr/local/lib/gcc5 or just compile with -static-libstdc++
|
|
|
|
|
2021-03-09 18:10:34 +01:00
|
|
|
CXXFLAGS = -Wl,-rpath=/usr/local/lib/gcc10 -Wfatal-errors -fPIC -Wall -pedantic -O0 -g3 -gdwarf-2 -pthread -std=c++20 -I/usr/local/include -I$(GLOBAL_WORKING_DIR)/pikotools -I$(GLOBAL_WORKING_DIR)/morm/src
|
2019-08-21 17:59:03 +02:00
|
|
|
LDFLAGS = -L/usr/local/lib
|
|
|
|
|
|
|
|
|
|
|
|
export CXX
|
|
|
|
export CXXFLAGS
|
|
|
|
export LDFLAGS
|
|
|
|
export GLOBAL_WORKING_DIR
|
|
|
|
|
|
|
|
|
|
|
|
current_path := $(shell pwd)
|
|
|
|
global_relative_working_dir := $(shell relative_path $(current_path) $(GLOBAL_WORKING_DIR))
|
|
|
|
|
|
|
|
|
2021-03-11 12:22:37 +01:00
|
|
|
# IMPROVE ME
|
|
|
|
# add dependency to pikotools
|
2019-08-21 17:59:03 +02:00
|
|
|
all: morm $(name)
|
|
|
|
|
|
|
|
|
2021-03-11 12:22:37 +01:00
|
|
|
$(name): morm $(o)
|
2019-08-21 17:59:03 +02:00
|
|
|
$(CXX) -o $(name) $(CXXFLAGS) $(LDFLAGS) $(o) $(GLOBAL_WORKING_DIR)/morm/src/morm.a $(GLOBAL_WORKING_DIR)/pikotools/log/log.a $(GLOBAL_WORKING_DIR)/pikotools/space/space.a $(GLOBAL_WORKING_DIR)/pikotools/mainspaceparser/mainspaceparser.a $(GLOBAL_WORKING_DIR)/pikotools/date/date.a $(GLOBAL_WORKING_DIR)/pikotools/convert/convert.a $(GLOBAL_WORKING_DIR)/pikotools/utf8/utf8.a $(LDFLAGS) -lpq -lpthread
|
|
|
|
|
|
|
|
|
|
|
|
.PHONY: morm
|
|
|
|
|
|
|
|
|
|
|
|
morm:
|
|
|
|
@cd $(GLOBAL_WORKING_DIR)/morm/src ; $(MAKE) -e
|
|
|
|
|
|
|
|
|
|
|
|
%.o: %.cpp
|
|
|
|
$(CXX) -c $(CXXFLAGS) $<
|
|
|
|
|
|
|
|
|
|
|
|
depend:
|
|
|
|
makedepend -Y. -I$(global_relative_working_dir)/pikotools -I$(global_relative_working_dir)/morm/src -f- *.cpp > Makefile.dep
|
|
|
|
echo -n "o = " > Makefile.o.dep
|
|
|
|
ls -1 *.cpp | xargs -I foo echo -n foo " " | sed -E "s/([^\.]*)\.cpp[ ]/\1\.o/g" >> Makefile.o.dep
|
|
|
|
|
|
|
|
|
|
|
|
clean:
|
|
|
|
@cd $(GLOBAL_WORKING_DIR)/morm/src ; $(MAKE) -e clean
|
|
|
|
rm -f *.o
|
|
|
|
rm -f $(name)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
include Makefile.dep
|