summaryrefslogblamecommitdiff
path: root/generate.make
blob: 8701a452b3c8d95f96c329d8690bc8b9fa4d4818 (plain) (tree)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15














                                                      
                      

                      

                                                  
                      
                                   


                                      

                                                                   
                      
                                   
                                           

                                                                                    

                
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 $@