winix/winixcli/src/Makefile

59 lines
1.1 KiB
Makefile

sourcefiles:=$(shell find . -name "*.cpp")
objfiles:=$(patsubst %.cpp,%.o,$(sourcefiles))
GLOBAL_WORKING_DIR := $(shell pwd)/../../..
CXX = g++10
CXXFLAGS = -Wall -pedantic -O0 -g -std=c++20 -I$(GLOBAL_WORKING_DIR)/pikotools/src -I$(GLOBAL_WORKING_DIR)/ezc/src -I$(GLOBAL_WORKING_DIR)/morm/src -I/usr/local/include -DEZC_HAS_MORM_LIBRARY -DMORM_HAS_EZC_LIBRARY
LDFLAGS = -L/usr/local/lib
export CXX
export CXXFLAGS
export LDFLAGS
progname = winix
all: $(progname)
$(progname): $(objfiles) pikotools morm ezc
$(CXX) -o $(progname) $(CXXFLAGS) $(LDFLAGS) $(objfiles) $(GLOBAL_WORKING_DIR)/ezc/src/ezc.a $(GLOBAL_WORKING_DIR)/morm/src/morm.a $(GLOBAL_WORKING_DIR)/pikotools/src/pikotools.a
%.o: %.cpp
$(CXX) -c $(CXXFLAGS) -o $@ $<
.PHONY: pikotools
.PHONY: morm
.PHONY: ezc
pikotools:
$(MAKE) -C ../../../pikotools
morm:
$(MAKE) -C ../../../morm/src
ezc:
$(MAKE) -C ../../../ezc/src
clean:
rm -f $(objfiles)
rm -f $(progname)
$(MAKE) -C ../../../pikotools clean
$(MAKE) -C ../../../morm/src clean
$(MAKE) -C ../../../ezc/src clean
depend:
makedepend -Y. -f- $(sourcefiles) > Makefile.dep
-include Makefile.dep