panic() cleanup.
[minix.git] / Makefile
blob3f4ed1a12753acb2be9e31c69555b53762e11882
1 # Master Makefile to compile everything in /usr/src except the system.
3 MAKE=make
5 usage:
6 @echo ""
7 @echo "Master Makefile for MINIX commands and utilities."
8 @echo "Root privileges are required for some actions."
9 @echo ""
10 @echo "Usage:"
11 @echo " make world # Compile everything (libraries & commands)"
12 @echo " make includes # Install include files from src/"
13 @echo " make libraries # Compile and install libraries"
14 @echo " make commands # Compile all, commands, but don't install"
15 @echo " make install # Compile and install commands"
16 @echo " make depend # Generate required .depend files"
17 @echo " make clean # Remove all compiler results"
18 @echo ""
19 @echo "Run 'make' in tools/ to create a new MINIX configuration."
20 @echo ""
22 # world has to be able to make a new system, even if there
23 # is no complete old system. it has to install commands, for which
24 # it has to install libraries, for which it has to install includes,
25 # for which it has to install /etc (for users and ownerships).
26 # etcfiles also creates a directory hierarchy in its
27 # 'make install' target.
29 # etcfiles has to be done first.
30 world: mkfiles includes depend libraries install postinstall
32 mkfiles:
33 cp etc/mk/*.mk /etc/mk/
35 includes:
36 cd include && $(MAKE) install gcc
38 libraries:
39 cd lib && sh ack_build.sh obj depend all install
41 gnu-libraries:
42 cd lib && sh gnu_build.sh obj depend all install
44 commands:
45 cd commands && $(MAKE) all
47 depend::
48 mkdep kernel
49 mkdep servers
50 mkdep drivers
51 cd kernel && $(MAKE) $@
52 cd servers && $(MAKE) $@
53 cd drivers && $(MAKE) $@
55 etcfiles::
56 cd etc && $(MAKE) install
58 all::
59 cd boot && $(MAKE) all
60 cd man && $(MAKE) all
61 cd commands && $(MAKE) all
62 cd tools && $(MAKE) all
63 cd servers && $(MAKE) all
65 install::
66 cd boot && $(MAKE) all install
67 cd man && $(MAKE) all install
68 cd commands && $(MAKE) all install
69 cd tools && $(MAKE) all install
70 cd servers && $(MAKE) all install
72 clean::
73 cd boot && $(MAKE) clean
74 cd man && $(MAKE) clean
75 cd commands && $(MAKE) clean
76 cd tools && $(MAKE) clean
77 cd servers && $(MAKE) clean
78 cd lib && sh ack_build.sh clean
79 cd lib && sh gnu_build.sh clean
80 cd commands && $(MAKE) clean
81 cd test && $(MAKE) clean
83 postinstall:
84 cd etc && $(MAKE) $@