Makefile.pc98 (53371) | Makefile.pc98 (53689) |
---|---|
1# Makefile for FreeBSD(98) after: 2# 3# Makefile.i386 -- with config changes. 4# Copyright 1990 W. Jolitz 5# from: @(#)Makefile.i386 7.1 5/10/91 | 1# Makefile for FreeBSD(98) after: 2# 3# Makefile.i386 -- with config changes. 4# Copyright 1990 W. Jolitz 5# from: @(#)Makefile.i386 7.1 5/10/91 |
6# $FreeBSD: head/sys/conf/Makefile.pc98 53371 1999-11-18 11:26:45Z nyan $ | 6# $FreeBSD: head/sys/conf/Makefile.pc98 53689 1999-11-25 12:52:13Z nyan $ |
7# 8# Makefile for FreeBSD 9# 10# This makefile is constructed from a machine description: 11# config machineid 12# Most changes should be made in the machine description 13# /sys/i386/conf/``machineid'' 14# after which you should do --- 16 unchanged lines hidden (view full) --- 31S= ./@ 32.else 33S= ../.. 34.endif 35.endif 36PC98= ${S}/pc98 37I386= ${S}/i386 38 | 7# 8# Makefile for FreeBSD 9# 10# This makefile is constructed from a machine description: 11# config machineid 12# Most changes should be made in the machine description 13# /sys/i386/conf/``machineid'' 14# after which you should do --- 16 unchanged lines hidden (view full) --- 31S= ./@ 32.else 33S= ../.. 34.endif 35.endif 36PC98= ${S}/pc98 37I386= ${S}/i386 38 |
39SIZE?= size 40 |
|
39COPTFLAGS?=-O 40INCLUDES= -nostdinc -I- -I. -I$S 41# This hack is to allow kernel compiles to succeed on machines w/out srcdist 42.if exists($S/../include) 43INCLUDES+= -I$S/../include 44.else 45INCLUDES+= -I/usr/include 46.endif | 41COPTFLAGS?=-O 42INCLUDES= -nostdinc -I- -I. -I$S 43# This hack is to allow kernel compiles to succeed on machines w/out srcdist 44.if exists($S/../include) 45INCLUDES+= -I$S/../include 46.else 47INCLUDES+= -I/usr/include 48.endif |
47COPTS= ${INCLUDES} ${IDENT} -DKERNEL -include opt_global.h | 49COPTS= ${INCLUDES} ${IDENT} -DKERNEL -include opt_global.h 50# KAME mandatory flags 51COPTS+= -D_KERNEL |
48CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} 49 50# XXX LOCORE means "don't declare C stuff" not "for locore.s". 51ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${CFLAGS} 52 53# Use the default object format for genassym, etc. 54GEN_CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} -UKERNEL 55 56# Select the correct set of tools. Can't set OBJFORMAT here because it 57# doesn't get exported into the environment, and if it were exported 58# then it might break building of genassym, etc. 59.if ${KERNFORMAT} == "elf" | 52CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} 53 54# XXX LOCORE means "don't declare C stuff" not "for locore.s". 55ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${CFLAGS} 56 57# Use the default object format for genassym, etc. 58GEN_CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} -UKERNEL 59 60# Select the correct set of tools. Can't set OBJFORMAT here because it 61# doesn't get exported into the environment, and if it were exported 62# then it might break building of genassym, etc. 63.if ${KERNFORMAT} == "elf" |
60CFLAGS+= -elf | 64FMT= -elf |
61.else | 65.else |
62CFLAGS+= -aout | 66FMT= -aout |
63.endif | 67.endif |
68CFLAGS+= ${FMT} |
|
64 65LOAD_ADDRESS?= C0100000 66DEFINED_PROF= ${PROF} 67.if defined(PROF) 68CFLAGS+= -malign-functions=4 69.if ${PROFLEVEL} >= 2 70IDENT+= -DGPROF4 -DGUPROF 71PROF+= -mprofiler-epilogue --- 11 unchanged lines hidden (view full) --- 83 84GEN_CFILES= ${I386}/i386/genassym.c 85# setdef0.c and setdef1.c are intentionally 86# omitted from SYSTEM_CFILES. They include setdefs.h, a header which 87# is generated from all of ${OBJS}. We don't want to have to compile 88# everything just to do a make depend. 89SYSTEM_CFILES= ioconf.c param.c vnode_if.c config.c 90SYSTEM_SFILES= ${I386}/i386/locore.s | 69 70LOAD_ADDRESS?= C0100000 71DEFINED_PROF= ${PROF} 72.if defined(PROF) 73CFLAGS+= -malign-functions=4 74.if ${PROFLEVEL} >= 2 75IDENT+= -DGPROF4 -DGUPROF 76PROF+= -mprofiler-epilogue --- 11 unchanged lines hidden (view full) --- 88 89GEN_CFILES= ${I386}/i386/genassym.c 90# setdef0.c and setdef1.c are intentionally 91# omitted from SYSTEM_CFILES. They include setdefs.h, a header which 92# is generated from all of ${OBJS}. We don't want to have to compile 93# everything just to do a make depend. 94SYSTEM_CFILES= ioconf.c param.c vnode_if.c config.c 95SYSTEM_SFILES= ${I386}/i386/locore.s |
91SYSTEM_DEP= Makefile symbols.exclude symbols.sort ${SYSTEM_OBJS} 92.if ${CFLAGS:M-g} == "" 93SYMORDER_EXCLUDE=-x symbols.exclude 94.endif | 96SYSTEM_DEP= Makefile ${SYSTEM_OBJS} |
95 96.if ${KERNFORMAT} == aout || ${KERNFORMAT} == aoutkld 97SYSTEM_OBJS= locore.o vnode_if.o ${OBJS} ioconf.o param.o config.o | 97 98.if ${KERNFORMAT} == aout || ${KERNFORMAT} == aoutkld 99SYSTEM_OBJS= locore.o vnode_if.o ${OBJS} ioconf.o param.o config.o |
98SYSTEM_LD= @${LD} -aout -Bforcedynamic -Z -T ${LOAD_ADDRESS} -o ${.TARGET} -X ${SYSTEM_OBJS} vers.o 99SYSTEM_LD_TAIL= @echo rearranging symbols; \ 100 symorder -m ${SYMORDER_EXCLUDE} symbols.sort ${.TARGET}; \ 101 size -aout ${.TARGET} ; chmod 755 ${.TARGET} | 100SYSTEM_LD= @${LD} ${FMT} -Bforcedynamic -Z -T ${LOAD_ADDRESS} -o ${.TARGET} -X ${SYSTEM_OBJS} vers.o 101SYSTEM_LD_TAIL= @${SIZE} ${FMT} ${.TARGET} ; chmod 755 ${.TARGET} |
102.endif 103 104.if ${KERNFORMAT} == elf 105SYSTEM_OBJS= locore.o setdef0.o vnode_if.o ${OBJS} ioconf.o param.o config.o \ 106 setdef1.o hack.So | 102.endif 103 104.if ${KERNFORMAT} == elf 105SYSTEM_OBJS= locore.o setdef0.o vnode_if.o ${OBJS} ioconf.o param.o config.o \ 106 setdef1.o hack.So |
107SYSTEM_LD= @${LD} -elf -Bdynamic -T $S/i386/conf/kernel.script \ | 107SYSTEM_LD= @${LD} ${FMT} -Bdynamic -T $S/i386/conf/kernel.script \ |
108 -export-dynamic -dynamic-linker /red/herring \ 109 -o ${.TARGET} -X ${SYSTEM_OBJS} vers.o | 108 -export-dynamic -dynamic-linker /red/herring \ 109 -o ${.TARGET} -X ${SYSTEM_OBJS} vers.o |
110SYSTEM_LD_TAIL= @size -elf ${.TARGET} ; chmod 755 ${.TARGET} | 110SYSTEM_LD_TAIL= @${SIZE} ${FMT} ${.TARGET} ; chmod 755 ${.TARGET} |
111SYSTEM_DEP+= $S/i386/conf/kernel.script 112.endif 113 114%BEFORE_DEPEND 115 116%OBJS 117 118%CFILES --- 36 unchanged lines hidden (view full) --- 155 vers.c vnode_if.c vnode_if.h ${CLEAN} 156 157#lint: /tmp param.c 158# @lint -hbxn -DGENERIC -Dvolatile= ${COPTS} \ 159# ${I386}/i386/Locore.c ${CFILES} ioconf.c param.c | \ 160# grep -v 'struct/union .* never defined' | \ 161# grep -v 'possible pointer alignment problem' 162 | 111SYSTEM_DEP+= $S/i386/conf/kernel.script 112.endif 113 114%BEFORE_DEPEND 115 116%OBJS 117 118%CFILES --- 36 unchanged lines hidden (view full) --- 155 vers.c vnode_if.c vnode_if.h ${CLEAN} 156 157#lint: /tmp param.c 158# @lint -hbxn -DGENERIC -Dvolatile= ${COPTS} \ 159# ${I386}/i386/Locore.c ${CFILES} ioconf.c param.c | \ 160# grep -v 'struct/union .* never defined' | \ 161# grep -v 'possible pointer alignment problem' 162 |
163symbols.exclude: 164 echo "gcc2_compiled." >symbols.exclude 165 echo "___gnu_compiled_c" >>symbols.exclude 166 167symbols.sort: ${I386}/i386/symbols.raw 168 grep -v '^#' ${I386}/i386/symbols.raw \ 169 | sed 's/^ //' | sort -u > symbols.sort 170 | |
171locore.o: ${I386}/i386/locore.s assym.s 172 ${NORMAL_S} 173 174.if ${KERNFORMAT} == elf 175# This is a hack. BFD "optimizes" away dynamic mode if there are no 176# dynamic references. We could probably do a '-Bforcedynamic' mode like 177# in the a.out ld. For now, this works. 178hack.So: Makefile 179 touch hack.c | 163locore.o: ${I386}/i386/locore.s assym.s 164 ${NORMAL_S} 165 166.if ${KERNFORMAT} == elf 167# This is a hack. BFD "optimizes" away dynamic mode if there are no 168# dynamic references. We could probably do a '-Bforcedynamic' mode like 169# in the a.out ld. For now, this works. 170hack.So: Makefile 171 touch hack.c |
180 ${CC} -elf -shared -nostdlib hack.c -o hack.So | 172 ${CC} ${FMT} -shared -nostdlib hack.c -o hack.So |
181 rm -f hack.c 182.endif 183 184.ORDER: setdefs.h setdef0.c setdef1.c 185 186setdef0.o: setdef0.c setdefs.h 187 ${NORMAL_C} 188 --- 109 unchanged lines hidden --- | 173 rm -f hack.c 174.endif 175 176.ORDER: setdefs.h setdef0.c setdef1.c 177 178setdef0.o: setdef0.c setdefs.h 179 ${NORMAL_C} 180 --- 109 unchanged lines hidden --- |