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