| [9] | 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 | 
 | 
|---|