merging in memory freeer.
[minix3.git] / tools / Makefile
blobe0f465a7376e0974db3a2daa501d2a11c0b489c4
1 # Makefile for the kernel image.
3 u=/usr
4 CC= exec cc
5 CFLAGS= -O -D_MINIX -D_POSIX_SOURCE
6 MDEC= /usr/mdec
8 # Specify the programs that are part of the system image.
9 PROGRAMS= ../kernel/kernel \
10 ../servers/pm/pm \
11 ../servers/vfs/vfs \
12 ../servers/rs/rs \
13 ../servers/ds/ds \
14 ../drivers/tty/tty \
15 ../drivers/memory/memory \
16 ../drivers/log/log \
17 ../servers/mfs/mfs \
18 ../servers/vm/vm \
19 ../servers/init/init
21 usage:
22 @echo " " >&2
23 @echo "Master Makefile to create new MINIX configuration." >& 2
24 @echo "Root privileges are required." >&2
25 @echo " " >&2
26 @echo "Usage:" >&2
27 @echo " make includes # Install include files" >&2
28 @echo " make depend # Generate dependency files" >&2
29 @echo " make libraries # Make system libraries" >&2
30 @echo " make services # Compile and install all services" >&2
31 @echo " make fresh # Make clean, libraries, and services" >&2
32 @echo " make image # Make needed services and create boot image" >&2
33 @echo " make install # Make image, and install to hard disk" >&2
34 @echo " make hdboot # Make image, and install to hard disk" >&2
35 @echo " make fdboot # Make image, and install to floppy disk" >&2
36 @echo " make bootable # Make hard disk bootable" >&2
37 @echo " make clean # Remove all compiler results, except libs" >&2
38 @echo " " >&2
39 @echo "To create a fresh MINIX configuration, try:" >&2
40 @echo " make clean install # new boot image" >&2
41 @echo " make fresh install # new everything" >&2
42 @echo " " >&2
44 # create a fresh configuration or system image
45 fresh:
46 cd ../lib && $(MAKE) clean
47 $(MAKE) clean
48 $(MAKE) libraries services
50 all: services image
52 image: includes
53 cd ../kernel && $(MAKE) EXTRA_OPTS=$(EXTRA_OPTS)
54 cd ../servers && $(MAKE) image
55 cd ../drivers && $(MAKE) image
56 installboot -image $@ $(PROGRAMS)
58 image_small: includes
59 cd ../kernel && $(MAKE) EXTRA_OPTS=$(EXTRA_OPTS)
60 cd ../servers && $(MAKE) EXTRA_OPTS=-D_MINIX_SMALL=1 image
61 cd ../drivers && $(MAKE) EXTRA_OPTS=$(EXTRA_OPTS) image
62 installboot -image $@ $(PROGRAMS)
64 # rebuild the program or system libraries
65 includes:
66 cd ../include && $(MAKE) install
68 depend: includes
69 cd ../ && $(MAKE) depend
71 services: includes
72 cd ../kernel && $(MAKE)
73 cd ../servers && $(MAKE) install
74 cd ../drivers && $(MAKE) install
76 libraries: includes
77 cd ../lib && $(MAKE) clean
78 cd ../lib && $(MAKE) all
79 cd ../lib && $(MAKE) install
82 # make bootable and place system images
83 bootable:
84 exec su root mkboot bootable
86 hdboot: image
87 exec sh mkboot $@
88 @sync
90 fdboot: image
91 exec su root mkboot $@
92 @sync
94 install: includes services hdboot
96 # clean up compile results
97 clean:
98 cd ../kernel && $(MAKE) $@
99 cd ../servers && $(MAKE) $@
100 cd ../drivers && $(MAKE) $@
101 rm -rf *.bak image image_small *.iso *.iso.gz cdfdimage rootimage src