scc

simple c99 compiler
git clone git://git.simple-cc.org/scc
Log | Files | Refs | Submodules | README | LICENSE

main.mk (958B)


      1 .POSIX:
      2 
      3 DIRS  =\
      4 	src\
      5 	src/libc\
      6 	src/libcrt\
      7 	include/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/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/bits/scc/cstd.h
     48 	rm -f include/bits/scc/sys.h
     49 	rm -f include/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