diff options
author | Thorbjørn Lindeijer <bjorn@lindeijer.nl> | 2024-10-16 10:28:00 +0200 |
---|---|---|
committer | Thorbjørn Lindeijer <bjorn@lindeijer.nl> | 2024-10-16 10:28:26 +0200 |
commit | c69a09c693fc390f0e85de17ffede0809be89d9e (patch) | |
tree | 6cac386ef282f6a5a8a0409fc9d4d79675eac505 /generate.mk | |
parent | e6e23a2b707784ae905ebcc23d05d2318718b8bf (diff) | |
parent | 0db9190dd147196531b16a050fb7a019dd1873af (diff) | |
download | tmwa-c69a09c693fc390f0e85de17ffede0809be89d9e.tar.gz tmwa-c69a09c693fc390f0e85de17ffede0809be89d9e.tar.bz2 tmwa-c69a09c693fc390f0e85de17ffede0809be89d9e.tar.xz tmwa-c69a09c693fc390f0e85de17ffede0809be89d9e.zip |
Merge branch 'blaming-the-tools'
Build system overhaul: attoconf from python 2->3, add CMake
Merge request !280
Diffstat (limited to 'generate.mk')
-rw-r--r-- | generate.mk | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/generate.mk b/generate.mk new file mode 100644 index 0000000..c32ca8d --- /dev/null +++ b/generate.mk @@ -0,0 +1,42 @@ +SHELL=bash + +MKDIR_FIRST = @mkdir -p ${@D} +SRC_DIR := $(patsubst %/,%,$(dir ${MAKEFILE_LIST})) +PIES := $(shell cd ${SRC_DIR}; find src/ -name '*.py') +PIES := $(filter-out src/main-gdb-%.py,${PIES}) + +export PATH:=$(realpath ${SRC_DIR}/tools):${PATH} + +vpath %.cpp ${SRC_DIR} +vpath %.hpp ${SRC_DIR} +vpath %.tcc ${SRC_DIR} +vpath tools/% ${SRC_DIR} +vpath %.py ${SRC_DIR} + +stamp/generated.stamp: + $(MKDIR_FIRST) + touch $@ + +stamp/generated.stamp: stamp/generate-proto2.stamp +stamp/generate-proto2.stamp: tools/protocol.py + $(MKDIR_FIRST) + rm -f stamp/generated.stamp + mkdir -p ${SRC_DIR}/src/proto2 + cd ${SRC_DIR} && protocol.py + touch $@ + +stamp/generated.stamp: stamp/generate-debug-debug.stamp +stamp/generate-debug-debug.stamp: tools/debug-debug-scripts ${PIES} + $(MKDIR_FIRST) + rm -f stamp/generated.stamp + mkdir -p ${SRC_DIR}/src/debug-debug + rm -f ${SRC_DIR}/src/debug-debug/test.cpp + debug-debug-scripts ${SRC_DIR}/src/debug-debug/ $(wordlist 2,$(words $^),$^) + touch $@ + +stamp/generated.stamp: stamp/generate-config.stamp +stamp/generate-config.stamp: tools/config.py + $(MKDIR_FIRST) + rm -f stamp/generated.stamp + cd ${SRC_DIR} && config.py + touch $@ |