tarball,Makefiles; uniform use of _CF_DIR when importing crossplatform.mk and default...
[sdk] / compiler / bootstrap / Makefile
1 .PHONY: bindir ecere libec ecp ecc ecs cleantarget clean realclean distclean
2 ifneq ($(V),1)
3 .SILENT:
4 endif
5
6 OBJ = obj/bin.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/
7
8 _CF_DIR = ../../
9
10 include $(_CF_DIR)crossplatform.mk
11 include $(_CF_DIR)default.cf
12
13 all: bindir ecere libec ecp ecc ecs
14         $(call cpq,ecp/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecp$(E) ecc/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecc$(E) ecs/obj/bootstrap.$(PLATFORM)$(COMPILER_SUFFIX)$(DEBUG_SUFFIX)/ecs$(E),$(OBJ))
15         @$(call echo,All done!)
16
17 bindir:
18         $(if $(wildcard $(OBJ)),,$(call mkdirq,$(OBJ)))
19
20 cleantarget: bindir
21         $(call rmq,$(OBJ)ecp$(E) $(OBJ)ecc$(E) $(OBJ)ecs$(E))
22 ifdef WINDOWS_TARGET
23         $(call rmq,$(OBJ)$(LP)ecere$(SO) $(OBJ)$(LP)ec$(SO))
24 endif
25
26 clean: cleantarget
27         cd ecere && $(MAKE) clean
28         cd libec && $(MAKE) clean
29         cd ecp && $(MAKE) clean
30         cd ecc && $(MAKE) clean
31         cd ecs && $(MAKE) clean
32
33 realclean: cleantarget
34         $(call rmrq,$(OBJ))
35         cd ecere && $(MAKE) realclean
36         cd libec && $(MAKE) realclean
37         cd ecp && $(MAKE) realclean
38         cd ecc && $(MAKE) realclean
39         cd ecs && $(MAKE) realclean
40
41 distclean: cleantarget
42         $(call rmrq,obj/)
43         cd ecere && $(MAKE) distclean
44         cd libec && $(MAKE) distclean
45         cd ecp && $(MAKE) distclean
46         cd ecc && $(MAKE) distclean
47         cd ecs && $(MAKE) distclean
48
49 ecere:
50         @$(call echo,Building ecere...)
51         cd ecere && $(MAKE)
52         
53 libec:
54         @$(call echo,Building ec...)
55         cd libec && $(MAKE)
56
57 ecp: ecere libec
58         @$(call echo,Building ecp...)
59         cd ecp && $(MAKE)
60
61 ecc: ecere libec
62         @$(call echo,Building ecc...)
63         cd ecc && $(MAKE)
64
65 ecs: ecere libec
66         @$(call echo,Building ecs...)
67         cd ecs && $(MAKE)