1 # Neatcc top-level Makefile
3 # output architecture: x64, x86, arm
12 @echo
"Neatcc top-level makefile"
14 @echo
" init Initialise git repositories"
15 @echo
" neat Compile the programs"
16 @echo
" boot Compile neatcc using itself"
17 @echo
" pull Update git repositories"
18 @echo
" clean Remove the generated files"
22 @
test -d neatcc || git clone git
://repo.or.cz
/neatcc.git
23 @
test -d neatld || git clone git
://repo.or.cz
/ld.git neatld
24 @
test -d neatlibc || git clone git
://repo.or.cz
/neatlibc.git
25 @
test -d neatas || git clone git
://repo.or.cz
/neatas.git
30 cd neatlibc
&& git pull
35 # compiling the programs
36 @cd neatcc
&& $(MAKE
) OUT
=$(OUT
) CC
=$(CC
)
37 @cd neatld
&& $(MAKE
) OUT
=$(OUT
) CC
=$(CC
)
38 @cd neatlibc
&& $(MAKE
) OUT
=$(OUT
) CC
=..
/neatcc
/ncc
39 # setting up neatrun/neatcc
40 @cd neatrun
&& $(MAKE
) OUT
=$(OUT
) NCC
=$(BASE
)/neatcc
/ncc \
41 NLD
=$(BASE
)/neatld
/nld NLC
=$(BASE
)/neatlibc
clean all
43 @cd neatas
&& $(MAKE
) CC
=..
/neatrun
/neatcc OUT
=$(OUT
)
44 @cd neatdbg
&& $(MAKE
) CC
=..
/neatrun
/neatcc OUT
=$(OUT
)
47 # the previous version
48 @cp neatrun
/neatcc _neatcc
49 @cd neatrun
&& $(MAKE
) OUT
=$(OUT
) CC
=..
/_neatcc \
50 NCC
=..
/_ncc NLD
=..
/_nld NLC
=..
/neatlibc
clean all
53 @cp neatrun
/neatcc _neatcc
54 # compiling the programs
55 @cd neatcc
&& $(MAKE
) OUT
=$(OUT
) CC
=..
/_neatcc
clean all
56 @cd neatld
&& $(MAKE
) OUT
=$(OUT
) CC
=..
/_neatcc
clean all
57 @cd neatlibc
&& $(MAKE
) OUT
=$(OUT
) CC
=..
/neatcc
/ncc
clean all
58 # setting up neatrun/neatcc
59 @cd neatrun
&& $(MAKE
) OUT
=$(OUT
) CC
=..
/_neatcc NCC
=$(BASE
)/neatcc
/ncc \
60 NLD
=$(BASE
)/neatld
/nld NLC
=$(BASE
)/neatlibc
clean all
63 @cd neatas
&& $(MAKE
) CC
=..
/neatrun
/neatcc OUT
=$(OUT
) clean all
64 @cd neatdbg
&& $(MAKE
) CC
=..
/neatrun
/neatcc OUT
=$(OUT
) clean all
67 @cd neatcc
&& $(MAKE
) clean
68 @cd neatlibc
&& $(MAKE
) clean
69 @cd neatas
&& $(MAKE
) clean
70 @cd neatld
&& $(MAKE
) clean
71 @cd neatrun
&& $(MAKE
) clean
72 @cd neatdbg
&& $(MAKE
) clean