main.mk - scc - simple c99 compiler
(HTM) git clone git://git.simple-cc.org/scc
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) Submodules
(DIR) README
(DIR) LICENSE
---
main.mk (978B)
---
1 .POSIX:
2
3 DIRS =\
4 src\
5 src/libc\
6 src/libcrt\
7 include/scc/bits/scc\
8 tests\
9
10 PROJECTDIR = .
11 include scripts/rules.mk
12
13 ROOT = $(DESTDIR)$(PREFIX)
14 NODEP = 1
15
16 all:
17 +@$(MAKE) -f main.mk toolchain
18 +@$(MAKE) -f main.mk $(ARCH)
19
20 config: FORCE
21 +@cd include/scc/bits/scc && $(MAKE)
22
23 install: all
24 $(SCRIPTDIR)/install $(ROOT)
25 +@$(MAKE) -f main.mk install-$(ARCH)
26
27 uninstall:
28 $(SCRIPTDIR)/uninstall $(ROOT)
29 +@$(MAKE) -f main.mk uninstall-$(ARCH)
30
31 toolchain: src
32 libc: src/libc
33 libcrt: src/libcrt
34
35 src src/libc src/libcrt: dirs
36
37 dirs: $(SCRIPTDIR)/libc-dirs
38 xargs mkdir -p < $(SCRIPTDIR)/libc-dirs
39 touch dirs
40
41 clean:
42 xargs rm -rf < $(SCRIPTDIR)/libc-dirs
43 find . -name '*.gcno' -o -name '*.gcda' | xargs rm -f
44 rm -rf dirs coverage
45
46 distclean: clean
47 rm -f include/scc/bits/scc/cstd.h
48 rm -f include/scc/bits/scc/sys.h
49 rm -f include/scc/bits/scc/config.h
50
51 include scripts/amd64.mk
52 include scripts/arm.mk
53 include scripts/arm64.mk
54 include scripts/i386.mk
55 include scripts/ppc.mk