|
|
1.1.1.3 root 1: #
1.1.1.8 root 2: # ROOT_DEV specifies the default root-device when making the image.
3: # This can be either FLOPPY, /dev/xxxx or empty, in which case the
4: # default of FLOPPY is used by 'build'.
1.1.1.7 root 5: #
6:
1.1.1.12! root 7: ROOT_DEV =# /dev/hdb1
! 8:
! 9: #
! 10: # uncomment this if you want kernel profiling: the profile_shift is the
! 11: # granularity of the profiling (5 = 32-byte granularity)
! 12: #
! 13:
! 14: PROFILING =# -DPROFILE_SHIFT=2
1.1.1.7 root 15:
16: #
17: # uncomment the correct keyboard:
18: #
1.1.1.8 root 19: # The value of KBDFLAGS should be or'ed together from the following
20: # bits, depending on which features you want enabled.
21: # 0x80 - Off: the Alt key will set bit 7 if pressed together with
22: # another key.
23: # On: the Alt key will NOT set the high bit; an escape
24: # character is prepended instead.
25: # The least significant bits control if the following keys are "dead".
26: # The key is dead by default if the bit is on.
27: # 0x01 - backquote (`)
28: # 0x02 - accent acute
29: # 0x04 - circumflex (^)
30: # 0x08 - tilde (~)
31: # 0x10 - dieresis (umlaut)
32:
1.1.1.12! root 33: # KEYBOARD = -DKBD_FINNISH -DKBDFLAGS=0
1.1.1.8 root 34: # KEYBOARD = -DKBD_FINNISH_LATIN1 -DKBDFLAGS=0x9F
1.1.1.12! root 35: KEYBOARD = -DKBD_US -DKBDFLAGS=0
1.1.1.8 root 36: # KEYBOARD = -DKBD_GR -DKBDFLAGS=0
37: # KEYBOARD = -DKBD_GR_LATIN1 -DKBDFLAGS=0x9F
38: # KEYBOARD = -DKBD_FR -DKBDFLAGS=0
39: # KEYBOARD = -DKBD_FR_LATIN1 -DKBDFLAGS=0x9F
40: # KEYBOARD = -DKBD_UK -DKBDFLAGS=0
41: # KEYBOARD = -DKBD_DK -DKBDFLAGS=0
42: # KEYBOARD = -DKBD_DK_LATIN1 -DKBDFLAGS=0x9F
43: # KEYBOARD = -DKBD_DVORAK -DKBDFLAGS=0
1.1.1.11 root 44: # KEYBOARD = -DKBD_SG -DKBDFLAGS=0
45: # KEYBOARD = -DKBD_SG_LATIN1 -DKBDFLAGS=0x9F
1.1.1.12! root 46: # KEYBOARD = -DKBD_SF -DKBDFLAGS=0
! 47: # KEYBOARD = -DKBD_SF_LATIN1 -DKBDFLAGS=0x9F
1.1.1.11 root 48: # KEYBOARD = -DKDB_NO
1.1.1.7 root 49:
1.1.1.8 root 50: #
51: # comment this line if you don't want the emulation-code
52: #
53:
54: MATH_EMULATION = -DKERNEL_MATH_EMULATION
1.1.1.7 root 55:
56: #
1.1.1.12! root 57: # Maximum memory used by the kernel. This is normally 16MB - some of the
! 58: # SCSI drivers may have problems with anything else due to DMA limits. The
! 59: # drivers should check, but they don't. The ONLY valid values for
! 60: # MAX_MEGABYTES are 16 and 32 - anything else needs kernel diffs.
! 61: #
! 62: # EVEN IF YOU HAVE > 16MB, YOU SHOULD EDIT THIS ONLY IF YOU ARE 100%
! 63: # SURE YOU AREN'T USING ANY DEVICE THAT DOES UNCHECKED DMA!! THE
! 64: # FLOPPY DRIVER IS OK, BUT OTHERS MIGHT HAVE PROBLEMS.
! 65: #
! 66:
! 67: MAX_MEGABYTES = 16
! 68:
! 69: #
1.1.1.7 root 70: # standard CFLAGS
71: #
72:
1.1.1.12! root 73: CFLAGS =-Wall -O6 -fomit-frame-pointer -DMAX_MEGABYTES=$(MAX_MEGABYTES)
1.1.1.7 root 74:
75: #
1.1.1.3 root 76: # if you want the ram-disk device, define this to be the
77: # size in blocks.
78: #
1.1.1.7 root 79:
1.1.1.5 root 80: #RAMDISK = -DRAMDISK=512
1.1 root 81:
1.1.1.3 root 82: AS86 =as86 -0 -a
83: LD86 =ld86 -0
1.1 root 84:
1.1.1.11 root 85: #
86: # If you want to preset the SVGA mode, uncomment the next line and
87: # set SVGA_MODE to whatever number you want.
88: # Set it to -DSVGA_MODE=NORMAL_VGA if you just want the EGA/VGA mode.
89: # The number is the same as you would ordinarily press at bootup.
90: #
1.1.1.12! root 91: SVGA_MODE= -DSVGA_MODE=1
1.1.1.11 root 92:
1.1.1.5 root 93: AS =as
94: LD =ld
1.1.1.10 root 95: HOSTCC =gcc -static
1.1.1.12! root 96: CC =gcc -DKERNEL
1.1.1.10 root 97: MAKE =make
1.1.1.12! root 98: CPP =$(CC) -E -DMAX_MEGABYTES=$(MAX_MEGABYTES)
1.1.1.10 root 99: AR =ar
1.1 root 100:
1.1.1.8 root 101: ARCHIVES =kernel/kernel.o mm/mm.o fs/fs.o net/net.o
1.1.1.12! root 102: FILESYSTEMS =fs/minix/minix.o fs/ext/ext.o fs/msdos/msdos.o fs/proc/proc.o
1.1.1.8 root 103: DRIVERS =kernel/blk_drv/blk_drv.a kernel/chr_drv/chr_drv.a \
104: kernel/blk_drv/scsi/scsi.a
1.1.1.5 root 105: MATH =kernel/math/math.a
106: LIBS =lib/lib.a
1.1.1.10 root 107: SUBDIRS =kernel mm fs net lib
108:
109: KERNELHDRS =/usr/src/linux/include
1.1 root 110:
111: .c.s:
1.1.1.12! root 112: $(CC) $(CFLAGS) -S -o $*.s $<
1.1 root 113: .s.o:
114: $(AS) -c -o $*.o $<
115: .c.o:
1.1.1.10 root 116: $(CC) $(CFLAGS) -c -o $*.o $<
1.1 root 117:
1.1.1.7 root 118: all: Version Image
119:
1.1.1.12! root 120: lilo: Image
! 121: if [ -f /vmlinux ]; then mv /vmlinux /vmlinux.old; fi
! 122: dd if=Image of=/vmlinux
! 123: /etc/lilo/lilo -b /dev/hda /vmlinux
! 124:
1.1.1.11 root 125: linuxsubdirs: dummy
1.1.1.12! root 126: @for i in $(SUBDIRS); do (cd $$i && echo $$i && $(MAKE)) || exit; done
1.1.1.10 root 127:
1.1.1.7 root 128: Version:
129: @./makever.sh
1.1.1.12! root 130: @echo \#define UTS_RELEASE \"0.98-`cat .version`\" > tools/version.h
! 131: @echo \#define UTS_VERSION \"`date +%D`\" >> tools/version.h
! 132: @echo \#define LINUX_COMPILE_TIME \"`date +%T`\" >> tools/version.h
! 133: @echo \#define LINUX_COMPILE_BY \"`whoami`\" >> tools/version.h
! 134: @echo \#define LINUX_COMPILE_HOST \"`hostname`\" >> tools/version.h
1.1 root 135:
1.1.1.2 root 136: Image: boot/bootsect boot/setup tools/system tools/build
1.1.1.7 root 137: cp tools/system system.tmp
138: strip system.tmp
139: tools/build boot/bootsect boot/setup system.tmp $(ROOT_DEV) > Image
140: rm system.tmp
1.1 root 141: sync
142:
1.1.1.3 root 143: disk: Image
1.1.1.11 root 144: dd bs=8192 if=Image of=/dev/fd0
1.1.1.3 root 145:
1.1 root 146: tools/build: tools/build.c
1.1.1.10 root 147: $(HOSTCC) $(CFLAGS) \
1.1 root 148: -o tools/build tools/build.c
149:
150: boot/head.o: boot/head.s
151:
1.1.1.12! root 152: boot/head.s: boot/head.S
! 153: $(CPP) -traditional boot/head.S -o boot/head.s
! 154:
! 155: tools/version.o: tools/version.c tools/version.h
! 156:
! 157: init/main.o: init/main.c
! 158: $(CC) $(CFLAGS) $(PROFILING) -c -o $*.o $<
! 159:
! 160: tools/system: boot/head.o init/main.o tools/version.o linuxsubdirs
! 161: $(LD) $(LDFLAGS) -M boot/head.o init/main.o tools/version.o \
1.1.1.10 root 162: $(ARCHIVES) \
163: $(FILESYSTEMS) \
164: $(DRIVERS) \
165: $(MATH) \
166: $(LIBS) \
167: -o tools/system > System.map
1.1 root 168:
1.1.1.3 root 169: boot/setup: boot/setup.s
170: $(AS86) -o boot/setup.o boot/setup.s
171: $(LD86) -s -o boot/setup boot/setup.o
172:
1.1.1.4 root 173: boot/setup.s: boot/setup.S include/linux/config.h
1.1.1.11 root 174: $(CPP) -traditional $(SVGA_MODE) boot/setup.S -o boot/setup.s
1.1.1.4 root 175:
176: boot/bootsect.s: boot/bootsect.S include/linux/config.h
177: $(CPP) -traditional boot/bootsect.S -o boot/bootsect.s
178:
1.1.1.3 root 179: boot/bootsect: boot/bootsect.s
180: $(AS86) -o boot/bootsect.o boot/bootsect.s
181: $(LD86) -s -o boot/bootsect boot/bootsect.o
182:
1.1.1.11 root 183: fs: dummy
184: $(MAKE) linuxsubdirs SUBDIRS=fs
185:
1.1.1.12! root 186: mm: dummy
! 187: $(MAKE) linuxsubdirs SUBDIRS=mm
! 188:
! 189: kernel: dummy
! 190: $(MAKE) linuxsubdirs SUBDIRS=kernel
! 191:
1.1 root 192: clean:
1.1.1.4 root 193: rm -f Image System.map tmp_make core boot/bootsect boot/setup \
1.1.1.12! root 194: boot/bootsect.s boot/setup.s boot/head.s init/main.s
! 195: rm -f init/*.o tools/system tools/build boot/*.o tools/*.o
! 196: for i in $(SUBDIRS); do (cd $$i && $(MAKE) clean); done
1.1 root 197:
198: backup: clean
1.1.1.12! root 199: cd .. && tar cf - linux | compress - > backup.Z
1.1 root 200: sync
201:
1.1.1.10 root 202: depend dep:
1.1 root 203: sed '/\#\#\# Dependencies/q' < Makefile > tmp_make
1.1.1.10 root 204: for i in init/*.c;do echo -n "init/";$(CPP) -M $$i;done >> tmp_make
1.1 root 205: cp tmp_make Makefile
1.1.1.12! root 206: for i in $(SUBDIRS); do (cd $$i && $(MAKE) dep) || exit; done
1.1 root 207:
1.1.1.6 root 208: dummy:
209:
1.1 root 210: ### Dependencies:
1.1.1.12! root 211: init/main.o : init/main.c /usr/lib/gcc-lib/i386-linux/2.2.2d/include/stdarg.h /usr/include/asm/system.h \
! 212: /usr/include/asm/io.h /usr/include/linux/mktime.h /usr/include/linux/types.h \
! 213: /usr/include/linux/fcntl.h /usr/include/linux/config.h /usr/include/linux/config.dist.h \
! 214: /usr/include/linux/sched.h /usr/include/linux/head.h /usr/include/linux/fs.h \
! 215: /usr/include/linux/limits.h /usr/include/linux/wait.h /usr/include/linux/dirent.h \
! 216: /usr/include/linux/vfs.h /usr/include/linux/pipe_fs_i.h /usr/include/linux/minix_fs_i.h \
! 217: /usr/include/linux/ext_fs_i.h /usr/include/linux/msdos_fs_i.h /usr/include/linux/minix_fs_sb.h \
! 218: /usr/include/linux/ext_fs_sb.h /usr/include/linux/msdos_fs_sb.h /usr/include/linux/mm.h \
! 219: /usr/include/linux/kernel.h /usr/include/linux/signal.h /usr/include/linux/time.h \
! 220: /usr/include/linux/param.h /usr/include/linux/resource.h /usr/include/linux/vm86.h \
! 221: /usr/include/linux/tty.h /usr/include/linux/termios.h /usr/include/linux/unistd.h
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.