fix dependency check logic cause config always disabled
[lunaix-os.git] / lunaix-os / makeinc / lunabuild.mkinc
1 lbuild_dir := $(CURDIR)/.builder
2 lbuild_config_h := $(lbuild_dir)/config.h
3 lbuild_mkinc := $(lbuild_dir)/build.mkinc
4 lconfig_mkinc := $(lbuild_dir)/config.mkinc
5 lconfig_save := $(CURDIR)/.config.json
6
7 all_lconfigs = $(shell find $(CURDIR) -name "LConfig")
8 all_lbuilds = $(shell find $(CURDIR) -name "LBuild")
9
10 .PHONY: __gen_config __gen_build __gen_both config
11
12 define __gen_config
13         @echo restarting configuration...
14         @$(LBUILD) --gen-config $(lbuild_dir)
15 endef
16
17 define __gen_build
18         @$(LBUILD) --gen-build $(lbuild_dir)
19 endef
20
21 define __gen_both
22         @echo restarting configuration...
23         @$(LBUILD) --gen-build --gen-config $(lbuild_dir)
24 endef
25
26 export
27 $(lconfig_save): $(all_lconfigs)
28         $(call __gen_config)
29
30 export
31 $(lconfig_mkinc): $(lconfig_save)
32         $(call __gen_config)
33
34 export
35 $(lbuild_config_h): $(lconfig_save) $(all_lbuilds)
36         $(call __gen_build)
37
38 export
39 $(lbuild_mkinc): $(lconfig_save) $(all_lbuilds)
40         $(call __gen_build)
41
42 config: $(all_lbuilds) $(all_lconfigs)
43         $(call __gen_both)
44
45 reconfig:
46         @rm -rf $(lbuild_dir)
47         @rm -rf $(lconfig_save)
48         $(call __gen_both)