e9f341d8bf60054d3b78434099d012200949b863
[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 include ../../crossplatform.mk
9 include ../../default.cf
10
11 all: bindir ecere libec ecp ecc ecs
12         $(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))
13         @$(call echo,All done!)
14
15 bindir:
16         $(if $(wildcard $(OBJ)),,$(call mkdirq,$(OBJ)))
17
18 cleantarget: bindir
19         $(call rmq,$(OBJ)ecp$(E) $(OBJ)ecc$(E) $(OBJ)ecs$(E))
20 ifdef WINDOWS_TARGET
21         $(call rmq,$(OBJ)$(LP)ecere$(SO) $(OBJ)$(LP)ec$(SO))
22 endif
23
24 clean: cleantarget
25         cd ecere && $(MAKE) clean
26         cd libec && $(MAKE) clean
27         cd ecp && $(MAKE) clean
28         cd ecc && $(MAKE) clean
29         cd ecs && $(MAKE) clean
30
31 realclean: cleantarget
32         $(call rmrq,$(OBJ))
33         cd ecere && $(MAKE) realclean
34         cd libec && $(MAKE) realclean
35         cd ecp && $(MAKE) realclean
36         cd ecc && $(MAKE) realclean
37         cd ecs && $(MAKE) realclean
38
39 distclean: cleantarget
40         $(call rmrq,obj/)
41         cd ecere && $(MAKE) distclean
42         cd libec && $(MAKE) distclean
43         cd ecp && $(MAKE) distclean
44         cd ecc && $(MAKE) distclean
45         cd ecs && $(MAKE) distclean
46
47 ecere:
48         @$(call echo,Building ecere...)
49         cd ecere && $(MAKE)
50         
51 libec:
52         @$(call echo,Building ec...)
53         cd libec && $(MAKE)
54
55 ecp: ecere libec
56         @$(call echo,Building ecp...)
57         cd ecp && $(MAKE)
58
59 ecc: ecere libec
60         @$(call echo,Building ecc...)
61         cd ecc && $(MAKE)
62
63 ecs: ecere libec
64         @$(call echo,Building ecs...)
65         cd ecs && $(MAKE)