diff options
Diffstat (limited to 'build/TFbuild.leave')
-rw-r--r-- | build/TFbuild.leave | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/build/TFbuild.leave b/build/TFbuild.leave new file mode 100644 index 0000000..ee71fab --- /dev/null +++ b/build/TFbuild.leave @@ -0,0 +1,20 @@ +# Store per-directory variables +#$(call MemoizeVariables, CFLAGS LDFLAGS LIBS) + +file-vars := $(filter $(foreach m,$(local-vars),$(m)_%),$(.VARIABLES)) +file-vars := $(filter-out $(foreach m,$(local-vars),$(m)_ALL),$(file-vars)) +$(foreach m,$(file-vars),$(eval $(call MemoizeVariable,$(m)))) + +# Handle this directory's rules +$(foreach m,$(libs-y),$(eval $(call CreateLibrary,$(m)))) +$(foreach m,$(progs-y),$(eval $(call CreateProgram,$(m)))) + +# Handle subdir of this subdir +subdirs--$(recursion-level) := $(addsuffix /,$(subdirs-y)) +include $(subdirs-y:%=$(build-enter) $(current-dir)%/TFbuild $(build-leave)) + +# And restore parent context +$(foreach m,$(local-vars),$(eval $(call MemoizeAndPopVariable,$(m)))) + +current-dir := $(parent-dir--$(recursion-level)) +current-dirc := $(parent-dirc--$(recursion-level)) |