diff --git a/sys/alpha/conf/Makefile.alpha b/sys/alpha/conf/Makefile.alpha index b626efdca32d..d7d4c54ecaba 100644 --- a/sys/alpha/conf/Makefile.alpha +++ b/sys/alpha/conf/Makefile.alpha @@ -1,309 +1,309 @@ # Makefile.alpha -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.alpha 7.1 5/10/91 # $FreeBSD$ # # Makefile for FreeBSD # # This makefile is constructed from a machine description: # config machineid # Most changes should be made in the machine description # /sys/alpha/conf/``machineid'' # after which you should do # config machineid # Generic makefile changes should be made in # /sys/alpha/conf/Makefile.alpha # after which config should be rerun for all machines. # # Which version of config(8) is required. %VERSREQ= 400016 # Can be overridden by makeoptions or /etc/make.conf KERNEL?= kernel KERNFORMAT?= elf STD8X16FONT?= iso .if !defined(S) .if exists(./@/.) S= ./@ .else S= ../.. .endif .endif ALPHA= ${S}/alpha SIZE?= size COPTFLAGS?=-O INCLUDES= -nostdinc -I- -I. -I$S # This hack is to allow kernel compiles to succeed on machines w/out srcdist .if exists($S/../include) INCLUDES+= -I$S/../include .else INCLUDES+= -I/usr/include .endif COPTS= ${INCLUDES} ${IDENT} -DKERNEL -include opt_global.h # KAME mandatory flags COPTS+= -D_KERNEL CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} # XXX LOCORE means "don't declare C stuff" not "for locore.s". ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${CFLAGS} # Use the default object format for genassym, etc. GEN_CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} -UKERNEL FMT= CFLAGS+= ${FMT} LOAD_ADDRESS?= 0xfffffc0000300000 DEFINED_PROF= ${PROF} .if defined(PROF) CFLAGS+= -malign-functions=4 .if ${PROFLEVEL} >= 2 IDENT+= -DGPROF4 -DGUPROF PROF+= -mprofiler-epilogue .endif .endif # Put configuration-specific C flags last (except for ${PROF}) so that they # can override the others. CFLAGS+= ${CONF_CFLAGS} NORMAL_C= ${CC} -c ${CFLAGS} ${PROF} $< NORMAL_C_C= ${CC} -c ${CFLAGS} ${PROF} $< NORMAL_S= ${CC} -c ${ASM_CFLAGS} $< PROFILE_C= ${CC} -c ${CFLAGS} $< GEN_CFILES= ${ALPHA}/alpha/genassym.c # setdef0.c and setdef1.c are intentionally # omitted from SYSTEM_CFILES. They include setdefs.h, a header which # is generated from all of ${OBJS}. We don't want to have to compile # everything just to do a make depend. SYSTEM_CFILES= ioconf.c param.c vnode_if.c config.c SYSTEM_SFILES= ${ALPHA}/alpha/locore.s SYSTEM_DEP= Makefile ${SYSTEM_OBJS} SYSTEM_OBJS= locore.o setdef0.o vnode_if.o ${OBJS} ioconf.o param.o config.o \ setdef1.o hack.So SYSTEM_LD= @${LD} ${FMT} -Bdynamic -T $S/alpha/conf/kernel.script \ -e locorestart \ -export-dynamic -dynamic-linker /red/herring \ -o ${.TARGET} -X ${SYSTEM_OBJS} vers.o SYSTEM_LD_TAIL= @${SIZE} ${FMT} ${.TARGET} ; chmod 755 ${.TARGET} SYSTEM_DEP+= $S/alpha/conf/kernel.script %BEFORE_DEPEND %OBJS %CFILES %SFILES %MFILES %CLEAN all: ${KERNEL} .if !defined(DEBUG) FULLKERNEL= ${KERNEL} .else FULLKERNEL= ${KERNEL}.debug ${KERNEL}: ${FULLKERNEL} objcopy --strip-debug ${FULLKERNEL} ${KERNEL} .endif ${FULLKERNEL}: ${BEFORE_DEPEND} ${SYSTEM_DEP} vers.o @rm -f ${.TARGET} @echo linking ${.TARGET} ${SYSTEM_LD} ${SYSTEM_LD_TAIL} .if !exists(.depend) ${SYSTEM_OBJS}: vnode_if.h ${BEFORE_DEPEND:M*.h} .endif clean: rm -f *.o *.so *.So *.ko *.s eddep errs genassym gensetdefs \ ${KERNEL} ${FULLKERNEL} linterrs makelinks param.c \ setdef[01].c setdefs.h symbols.exclude symbols.sort tags \ vers.c vnode_if.c vnode_if.h ${CLEAN} #lint: /tmp param.c # @lint -hbxn -DGENERIC -Dvolatile= ${COPTS} \ # ${ALPHA}/alpha/Locore.c ${CFILES} ioconf.c param.c | \ # grep -v 'struct/union .* never defined' | \ # grep -v 'possible pointer alignment problem' locore.o: ${ALPHA}/alpha/locore.s assym.s ${NORMAL_S} # This is a hack. BFD "optimizes" away dynamic mode if there are no # dynamic references. We could probably do a '-Bforcedynamic' mode like # in the a.out ld. For now, this works. hack.So: Makefile touch hack.c ${CC} -shared -nostdlib hack.c -o hack.So rm -f hack.c .ORDER: setdefs.h setdef0.c setdef1.c setdef0.o: setdef0.c setdefs.h ${NORMAL_C} setdef1.o: setdef1.c setdefs.h ${NORMAL_C} setdef0.c setdef1.c setdefs.h: ${OBJS} @gensetdefs ${OBJS} # this rule stops ./assym.s in .depend from causing problems ./assym.s: assym.s assym.s: genassym ./genassym >assym.s genassym.o: ${ALPHA}/alpha/genassym.c ${CC} -c ${GEN_CFLAGS} ${ALPHA}/alpha/genassym.c genassym: genassym.o ${CC} ${GEN_CFLAGS} genassym.o -o ${.TARGET} SYSTEM_OBJS+= __divqu.o __divq.o __divlu.o __divl.o SYSTEM_OBJS+= __remqu.o __remq.o __remlu.o __reml.o CLEAN+= __divqu.S __divq.S __divlu.S __divl.S CLEAN+= __remqu.S __remq.S __remlu.S __reml.S __divqu.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__divqu')define(OP,\`div')define(S,\`false')"; \ echo "define(WORDSIZE,64)"; cat ${.ALLSRC}) | m4 > ${.TARGET} __divq.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__divq')define(OP,\`div')define(S,\`true')"; \ echo "define(WORDSIZE,64)"; cat ${.ALLSRC}) | m4 > ${.TARGET} __divlu.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__divlu')define(OP,\`div')define(S,\`false')"; \ echo "define(WORDSIZE,32)"; cat ${.ALLSRC}) | m4 > ${.TARGET} __divl.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__divl')define(OP,\`div')define(S,\`true')"; \ echo "define(WORDSIZE,32)"; cat ${.ALLSRC}) | m4 > ${.TARGET} __remqu.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__remqu')define(OP,\`rem')define(S,\`false')"; \ echo "define(WORDSIZE,64)"; cat ${.ALLSRC}) | m4 > ${.TARGET} __remq.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__remq')define(OP,\`rem')define(S,\`true')"; \ echo "define(WORDSIZE,64)"; cat ${.ALLSRC}) | m4 > ${.TARGET} __remlu.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__remlu')define(OP,\`rem')define(S,\`false')"; \ echo "define(WORDSIZE,32)"; cat ${.ALLSRC}) | m4 > ${.TARGET} __reml.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__reml')define(OP,\`rem')define(S,\`true')"; \ echo "define(WORDSIZE,32)"; cat ${.ALLSRC}) | m4 > ${.TARGET} ${SYSTEM_OBJS} genassym.o vers.o: opt_global.h depend: assym.s param.c vnode_if.h ${BEFORE_DEPEND} \ ${CFILES} ${SYSTEM_CFILES} ${GEN_CFILES} ${SFILES} ${SYSTEM_SFILES} rm -f .newdep mkdep -a -f .newdep ${CFLAGS} ${CFILES} ${SYSTEM_CFILES} mkdep -a -f .newdep ${GEN_CFLAGS} ${GEN_CFILES} env MKDEP_CPP="${CC} -E" \ mkdep -a -f .newdep ${ASM_CFLAGS} ${SFILES} ${SYSTEM_SFILES} rm -f .depend mv -f .newdep .depend cleandepend: rm -f .depend links: egrep '#if' ${CFILES} | sed -f $S/conf/defines | \ sed -e 's/:.*//' -e 's/\.c/.o/' | sort -u > dontlink echo ${CFILES} | tr -s ' ' '\12' | sed 's/\.c/.o/' | \ sort -u | comm -23 - dontlink | \ sed 's,../.*/\(.*.o\),rm -f \1;ln -s ../GENERIC/\1 \1,' > makelinks sh makelinks && rm -f dontlink tags: @[ -f .depend ] || { echo "you must make depend first"; exit 1; } sh $S/conf/systags.sh rm -f tags1 sed -e 's, ../, ,' tags > tags1 install install.debug: @if [ ! -f ${KERNEL}${.TARGET:S/install//} ] ; then \ echo "You must build a kernel first." ; \ exit 1 ; \ fi .if exists(${DESTDIR}/${KERNEL}) -chflags noschg ${DESTDIR}/${KERNEL} mv ${DESTDIR}/${KERNEL} ${DESTDIR}/${KERNEL}.old .endif PATH=$${PATH}:/sbin:/usr/sbin; \ if [ `sysctl -n kern.bootfile` = ${DESTDIR}/${KERNEL} ] ; then \ sysctl -w kern.bootfile=${DESTDIR}/${KERNEL}.old ; \ if [ -f /var/db/kvm_${KERNEL}.db ] ; then \ mv -f /var/db/kvm_${KERNEL}.db /var/db/kvm_${KERNEL}.old.db ; \ fi \ fi install -c -m 555 -o root -g wheel -fschg \ ${KERNEL}${.TARGET:S/install//} ${DESTDIR}/${KERNEL} reinstall reinstall.debug: install -c -m 555 -o root -g wheel -fschg \ ${KERNEL}${.TARGET:S/reinstall//} ${DESTDIR}/${KERNEL} config.o: ${NORMAL_C} ioconf.o: ${NORMAL_C} param.c: $S/conf/param.c -rm -f param.c cp $S/conf/param.c . param.o: ${NORMAL_C} vers.c: $S/conf/newvers.sh $S/sys/param.h ${SYSTEM_DEP} sh $S/conf/newvers.sh ${KERN_IDENT} ${IDENT} # XXX strictly, everything depends on Makefile because changes to ${PROF} # only appear there, but we don't handle that. vers.o: ${NORMAL_C} -vnode_if.c: $S/kern/vnode_if.sh $S/kern/vnode_if.src - perl $S/kern/vnode_if.sh -c $S/kern/vnode_if.src +vnode_if.c: $S/kern/vnode_if.pl $S/kern/vnode_if.src + perl5 $S/kern/vnode_if.pl -c $S/kern/vnode_if.src -vnode_if.h: $S/kern/vnode_if.sh $S/kern/vnode_if.src - perl $S/kern/vnode_if.sh -h $S/kern/vnode_if.src +vnode_if.h: $S/kern/vnode_if.pl $S/kern/vnode_if.src + perl5 $S/kern/vnode_if.pl -h $S/kern/vnode_if.src vnode_if.o: ${NORMAL_C} .if exists($S/../share/mk) .include "$S/../share/mk/bsd.kern.mk" .else .include .endif %RULES # DO NOT DELETE THIS LINE -- make depend uses it diff --git a/sys/alpha/conf/files.alpha b/sys/alpha/conf/files.alpha index f817a519c658..c932b64d401d 100644 --- a/sys/alpha/conf/files.alpha +++ b/sys/alpha/conf/files.alpha @@ -1,201 +1,201 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # # $FreeBSD$ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and # dependency lines other than the first are silently ignored. # # font8x16.o optional std8x16font \ compile-with "uudecode < /usr/share/syscons/fonts/${STD8X16FONT}-8x16.fnt && file2c 'unsigned char font_16[16*256] = {' '};' < ${STD8X16FONT}-8x16 > font8x16.c && ${CC} -c ${CFLAGS} font8x16.c" \ no-implicit-rule before-depend \ clean "${STD8X16FONT}-8x16 font8x16.c" # make sure apm.h gets made correctly apm.h standard \ compile-with "echo '#define NAPM 0' > apm.h" \ no-obj no-implicit-rule before-depend # atkbdmap.h optional atkbd_dflt_keymap \ compile-with "kbdcontrol -L ${ATKBD_DFLT_KEYMAP} | sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = /static accentmap_t accent_map = /' > atkbdmap.h" \ no-obj no-implicit-rule before-depend \ clean "atkbdmap.h" # alpha/alpha/autoconf.c standard alpha/alpha/cpuconf.c standard alpha/alpha/atomic.s standard alpha/alpha/dec_kn8ae.c optional dec_kn8ae alpha/alpha/dec_eb164.c optional dec_eb164 alpha/alpha/dec_eb64plus.c optional dec_eb64plus alpha/alpha/dec_kn20aa.c optional dec_kn20aa alpha/alpha/dec_1000a.c optional dec_1000a alpha/alpha/dec_1000a.c optional dec_1000a alpha/alpha/dec_2100_a50.c optional dec_2100_a50 alpha/alpha/dec_st550.c optional dec_st550 alpha/alpha/dec_st6600.c optional dec_st6600 alpha/alpha/dec_axppci_33.c optional dec_axppci_33 alpha/alpha/dec_3000_300.c optional dec_3000_300 alpha/alpha/dec_3000_500.c optional dec_3000_500 alpha/alpha/mountroot.c optional slice alpha/alpha/ipl_funcs.c standard alpha/alpha/pal.s standard alpha/alpha/busdma_machdep.c standard alpha/alpha/sgmap.c standard alpha/alpha/prom.c standard alpha/alpha/promcons.c standard alpha/alpha/prom_disp.s standard alpha/alpha/alpha-gdbstub.c optional ddb alpha/alpha/db_disasm.c optional ddb alpha/alpha/db_interface.c optional ddb alpha/alpha/db_trace.c optional ddb alpha/alpha/exception.s standard alpha/alpha/in_cksum.c optional inet # locore.s needs to be handled in Makefile to put it first. Otherwise it's # now normal. # alpha/alpha/locore.s standard alpha/alpha/machdep.c standard alpha/alpha/fp_emulate.c standard alpha/alpha/ieee_float.c standard alpha/alpha/mem.c standard alpha/alpha/mp_machdep.c optional smp alpha/alpha/perfmon.c optional perfmon profiling-routine alpha/alpha/perfmon.c optional perfmon alpha/alpha/pmap.c standard alpha/alpha/procfs_machdep.c standard alpha/alpha/simplelock.s optional smp alpha/alpha/support.s standard alpha/alpha/swtch.s standard alpha/alpha/sys_machdep.c standard alpha/alpha/trap.c standard alpha/alpha/interrupt.c standard alpha/alpha/userconfig.c optional userconfig alpha/alpha/vm_machdep.c standard alpha/alpha/clock.c standard clock_if.o standard \ dependency "clock_if.c" \ compile-with "${NORMAL_C}" \ no-implicit-rule local clock_if.c standard \ dependency "$S/kern/makedevops.pl $S/alpha/alpha/clock_if.m" \ - compile-with "perl $S/kern/makedevops.pl -c $S/alpha/alpha/clock_if.m" \ + compile-with "perl5 $S/kern/makedevops.pl -c $S/alpha/alpha/clock_if.m" \ no-obj no-implicit-rule before-depend local \ clean "clock_if.c" clock_if.h standard \ dependency "$S/kern/makedevops.pl $S/alpha/alpha/clock_if.m" \ - compile-with "perl $S/kern/makedevops.pl -h $S/alpha/alpha/clock_if.m" \ + compile-with "perl5 $S/kern/makedevops.pl -h $S/alpha/alpha/clock_if.m" \ no-obj no-implicit-rule before-depend \ clean "clock_if.h" alpha/tlsb/tlsb.c optional tlsb alpha/tlsb/gbus.c optional gbus alpha/tlsb/kftxx.c optional kft alpha/tlsb/mcclock_tlsb.c optional gbus alpha/tlsb/zs_tlsb.c optional gbus alpha/tlsb/dwlpx.c optional dwlpx alpha/tc/tcasic.c optional dec_3000_300 alpha/tc/tcasic.c optional dec_3000_500 alpha/tc/tc.c optional dec_3000_300 alpha/tc/tc.c optional dec_3000_500 alpha/tc/ioasic.c optional dec_3000_300 alpha/tc/ioasic.c optional dec_3000_500 alpha/tc/mcclock_ioasic.c optional dec_3000_300 alpha/tc/mcclock_ioasic.c optional dec_3000_500 alpha/tc/if_le_ioasic.c optional le dec_3000_300 alpha/tc/if_le_ioasic.c optional le dec_3000_500 alpha/tc/if_le_dec.c optional le dec_3000_300 alpha/tc/if_le_dec.c optional le dec_3000_500 alpha/tc/am7990.c optional le dec_3000_300 alpha/tc/am7990.c optional le dec_3000_500 alpha/tc/tcds.c optional esp dec_3000_300 alpha/tc/tcds.c optional esp dec_3000_500 alpha/tc/tcds_dma.c optional tcds dec_3000_300 alpha/tc/tcds_dma.c optional tcds dec_3000_500 alpha/tc/esp.c optional esp dec_3000_300 alpha/tc/esp.c optional esp dec_3000_500 dev/dec/mcclock.c optional mcclock mcclock_if.o optional mcclock \ dependency "mcclock_if.c" \ compile-with "${NORMAL_C}" \ no-implicit-rule local mcclock_if.c standard \ dependency "$S/kern/makedevops.pl $S/dev/dec/mcclock_if.m" \ - compile-with "perl $S/kern/makedevops.pl -c $S/dev/dec/mcclock_if.m" \ + compile-with "perl5 $S/kern/makedevops.pl -c $S/dev/dec/mcclock_if.m" \ no-obj no-implicit-rule before-depend local \ clean "mcclock_if.c" mcclock_if.h optional mcclock \ dependency "$S/kern/makedevops.pl $S/dev/dec/mcclock_if.m" \ - compile-with "perl $S/kern/makedevops.pl -h $S/dev/dec/mcclock_if.m" \ + compile-with "perl5 $S/kern/makedevops.pl -h $S/dev/dec/mcclock_if.m" \ no-obj no-implicit-rule before-depend \ clean "mcclock_if.h" alpha/alpha/elf_machdep.c standard alpha/isa/isa.c optional isa alpha/isa/isa_dma.c optional isa alpha/isa/mcclock_isa.c optional isa alpha/pci/apecs.c optional dec_2100_a50 alpha/pci/apecs.c optional dec_eb64plus alpha/pci/apecs.c optional dec_1000a alpha/pci/apecs_pci.c optional dec_2100_a50 alpha/pci/apecs_pci.c optional dec_eb64plus alpha/pci/apecs_pci.c optional dec_1000a alpha/pci/cia.c optional dec_eb164 alpha/pci/cia.c optional dec_kn20aa alpha/pci/cia.c optional dec_st550 alpha/pci/cia.c optional dec_1000a alpha/pci/cia_pci.c optional dec_eb164 alpha/pci/cia_pci.c optional dec_kn20aa alpha/pci/cia_pci.c optional dec_st550 alpha/pci/cia_pci.c optional dec_1000a alpha/pci/lca.c optional dec_axppci_33 alpha/pci/lca_pci.c optional dec_axppci_33 alpha/pci/pci_eb164_intr.s optional dec_eb164 alpha/pci/pci_eb164_intr.s optional dec_kn20aa alpha/pci/pci_eb164_intr.s optional dec_st550 alpha/pci/pci_eb64plus_intr.s optional dec_2100_a50 alpha/pci/pci_eb64plus_intr.s optional dec_eb64plus alpha/pci/pcibus.c optional pci alpha/pci/tsunami.c optional dec_st6600 alpha/pci/tsunami_pci.c optional dec_st6600 dev/ata/ata-all.c optional ata dev/ata/ata-disk.c optional atadisk dev/ata/ata-dma.c optional ata dev/ata/atapi-all.c optional ata dev/ata/atapi-cd.c optional atapicd dev/ata/atapi-fd.c optional atapifd dev/ata/atapi-tape.c optional atapist dev/fb/fb.c optional fb dev/fb/fb.c optional vga dev/fb/splash.c optional splash dev/fb/vga.c optional vga dev/kbd/atkbd.c optional atkbd dev/kbd/atkbdc.c optional atkbdc dev/kbd/kbd.c optional atkbd dev/kbd/kbd.c optional kbd dev/kbd/kbd.c optional sc dev/kbd/kbd.c optional ukbd dev/sound/isa/ad1816.c optional pcm isa dev/sound/isa/es1888.c optional pcm isa dev/sound/isa/gusc.c optional gusc dev/sound/isa/mss.c optional pcm isa dev/sound/isa/sb.c optional pcm isa dev/sound/isa/sbc.c optional sbc dev/syscons/schistory.c optional sc dev/syscons/scmouse.c optional sc dev/syscons/scvgarndr.c optional sc dev/syscons/scvidctl.c optional sc dev/syscons/scvtb.c optional sc dev/syscons/syscons.c optional sc isa/atkbd_isa.c optional atkbd isa/atkbdc_isa.c optional atkbdc isa/fd.c optional fd isa/psm.c optional psm isa/sio.c optional sio isa/syscons_isa.c optional sc isa/vga_isa.c optional vga kern/subr_diskmbr.c standard libkern/alpha/htonl.S standard libkern/alpha/htons.S standard libkern/alpha/ntohl.S standard libkern/alpha/ntohs.S standard libkern/bcmp.c standard libkern/ffs.c standard diff --git a/sys/conf/Makefile.alpha b/sys/conf/Makefile.alpha index b626efdca32d..d7d4c54ecaba 100644 --- a/sys/conf/Makefile.alpha +++ b/sys/conf/Makefile.alpha @@ -1,309 +1,309 @@ # Makefile.alpha -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.alpha 7.1 5/10/91 # $FreeBSD$ # # Makefile for FreeBSD # # This makefile is constructed from a machine description: # config machineid # Most changes should be made in the machine description # /sys/alpha/conf/``machineid'' # after which you should do # config machineid # Generic makefile changes should be made in # /sys/alpha/conf/Makefile.alpha # after which config should be rerun for all machines. # # Which version of config(8) is required. %VERSREQ= 400016 # Can be overridden by makeoptions or /etc/make.conf KERNEL?= kernel KERNFORMAT?= elf STD8X16FONT?= iso .if !defined(S) .if exists(./@/.) S= ./@ .else S= ../.. .endif .endif ALPHA= ${S}/alpha SIZE?= size COPTFLAGS?=-O INCLUDES= -nostdinc -I- -I. -I$S # This hack is to allow kernel compiles to succeed on machines w/out srcdist .if exists($S/../include) INCLUDES+= -I$S/../include .else INCLUDES+= -I/usr/include .endif COPTS= ${INCLUDES} ${IDENT} -DKERNEL -include opt_global.h # KAME mandatory flags COPTS+= -D_KERNEL CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} # XXX LOCORE means "don't declare C stuff" not "for locore.s". ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${CFLAGS} # Use the default object format for genassym, etc. GEN_CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} -UKERNEL FMT= CFLAGS+= ${FMT} LOAD_ADDRESS?= 0xfffffc0000300000 DEFINED_PROF= ${PROF} .if defined(PROF) CFLAGS+= -malign-functions=4 .if ${PROFLEVEL} >= 2 IDENT+= -DGPROF4 -DGUPROF PROF+= -mprofiler-epilogue .endif .endif # Put configuration-specific C flags last (except for ${PROF}) so that they # can override the others. CFLAGS+= ${CONF_CFLAGS} NORMAL_C= ${CC} -c ${CFLAGS} ${PROF} $< NORMAL_C_C= ${CC} -c ${CFLAGS} ${PROF} $< NORMAL_S= ${CC} -c ${ASM_CFLAGS} $< PROFILE_C= ${CC} -c ${CFLAGS} $< GEN_CFILES= ${ALPHA}/alpha/genassym.c # setdef0.c and setdef1.c are intentionally # omitted from SYSTEM_CFILES. They include setdefs.h, a header which # is generated from all of ${OBJS}. We don't want to have to compile # everything just to do a make depend. SYSTEM_CFILES= ioconf.c param.c vnode_if.c config.c SYSTEM_SFILES= ${ALPHA}/alpha/locore.s SYSTEM_DEP= Makefile ${SYSTEM_OBJS} SYSTEM_OBJS= locore.o setdef0.o vnode_if.o ${OBJS} ioconf.o param.o config.o \ setdef1.o hack.So SYSTEM_LD= @${LD} ${FMT} -Bdynamic -T $S/alpha/conf/kernel.script \ -e locorestart \ -export-dynamic -dynamic-linker /red/herring \ -o ${.TARGET} -X ${SYSTEM_OBJS} vers.o SYSTEM_LD_TAIL= @${SIZE} ${FMT} ${.TARGET} ; chmod 755 ${.TARGET} SYSTEM_DEP+= $S/alpha/conf/kernel.script %BEFORE_DEPEND %OBJS %CFILES %SFILES %MFILES %CLEAN all: ${KERNEL} .if !defined(DEBUG) FULLKERNEL= ${KERNEL} .else FULLKERNEL= ${KERNEL}.debug ${KERNEL}: ${FULLKERNEL} objcopy --strip-debug ${FULLKERNEL} ${KERNEL} .endif ${FULLKERNEL}: ${BEFORE_DEPEND} ${SYSTEM_DEP} vers.o @rm -f ${.TARGET} @echo linking ${.TARGET} ${SYSTEM_LD} ${SYSTEM_LD_TAIL} .if !exists(.depend) ${SYSTEM_OBJS}: vnode_if.h ${BEFORE_DEPEND:M*.h} .endif clean: rm -f *.o *.so *.So *.ko *.s eddep errs genassym gensetdefs \ ${KERNEL} ${FULLKERNEL} linterrs makelinks param.c \ setdef[01].c setdefs.h symbols.exclude symbols.sort tags \ vers.c vnode_if.c vnode_if.h ${CLEAN} #lint: /tmp param.c # @lint -hbxn -DGENERIC -Dvolatile= ${COPTS} \ # ${ALPHA}/alpha/Locore.c ${CFILES} ioconf.c param.c | \ # grep -v 'struct/union .* never defined' | \ # grep -v 'possible pointer alignment problem' locore.o: ${ALPHA}/alpha/locore.s assym.s ${NORMAL_S} # This is a hack. BFD "optimizes" away dynamic mode if there are no # dynamic references. We could probably do a '-Bforcedynamic' mode like # in the a.out ld. For now, this works. hack.So: Makefile touch hack.c ${CC} -shared -nostdlib hack.c -o hack.So rm -f hack.c .ORDER: setdefs.h setdef0.c setdef1.c setdef0.o: setdef0.c setdefs.h ${NORMAL_C} setdef1.o: setdef1.c setdefs.h ${NORMAL_C} setdef0.c setdef1.c setdefs.h: ${OBJS} @gensetdefs ${OBJS} # this rule stops ./assym.s in .depend from causing problems ./assym.s: assym.s assym.s: genassym ./genassym >assym.s genassym.o: ${ALPHA}/alpha/genassym.c ${CC} -c ${GEN_CFLAGS} ${ALPHA}/alpha/genassym.c genassym: genassym.o ${CC} ${GEN_CFLAGS} genassym.o -o ${.TARGET} SYSTEM_OBJS+= __divqu.o __divq.o __divlu.o __divl.o SYSTEM_OBJS+= __remqu.o __remq.o __remlu.o __reml.o CLEAN+= __divqu.S __divq.S __divlu.S __divl.S CLEAN+= __remqu.S __remq.S __remlu.S __reml.S __divqu.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__divqu')define(OP,\`div')define(S,\`false')"; \ echo "define(WORDSIZE,64)"; cat ${.ALLSRC}) | m4 > ${.TARGET} __divq.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__divq')define(OP,\`div')define(S,\`true')"; \ echo "define(WORDSIZE,64)"; cat ${.ALLSRC}) | m4 > ${.TARGET} __divlu.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__divlu')define(OP,\`div')define(S,\`false')"; \ echo "define(WORDSIZE,32)"; cat ${.ALLSRC}) | m4 > ${.TARGET} __divl.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__divl')define(OP,\`div')define(S,\`true')"; \ echo "define(WORDSIZE,32)"; cat ${.ALLSRC}) | m4 > ${.TARGET} __remqu.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__remqu')define(OP,\`rem')define(S,\`false')"; \ echo "define(WORDSIZE,64)"; cat ${.ALLSRC}) | m4 > ${.TARGET} __remq.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__remq')define(OP,\`rem')define(S,\`true')"; \ echo "define(WORDSIZE,64)"; cat ${.ALLSRC}) | m4 > ${.TARGET} __remlu.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__remlu')define(OP,\`rem')define(S,\`false')"; \ echo "define(WORDSIZE,32)"; cat ${.ALLSRC}) | m4 > ${.TARGET} __reml.S: ${S}/alpha/alpha/divrem.m4 @echo 'building ${.TARGET} from ${.ALLSRC}' @(echo "define(NAME,\`__reml')define(OP,\`rem')define(S,\`true')"; \ echo "define(WORDSIZE,32)"; cat ${.ALLSRC}) | m4 > ${.TARGET} ${SYSTEM_OBJS} genassym.o vers.o: opt_global.h depend: assym.s param.c vnode_if.h ${BEFORE_DEPEND} \ ${CFILES} ${SYSTEM_CFILES} ${GEN_CFILES} ${SFILES} ${SYSTEM_SFILES} rm -f .newdep mkdep -a -f .newdep ${CFLAGS} ${CFILES} ${SYSTEM_CFILES} mkdep -a -f .newdep ${GEN_CFLAGS} ${GEN_CFILES} env MKDEP_CPP="${CC} -E" \ mkdep -a -f .newdep ${ASM_CFLAGS} ${SFILES} ${SYSTEM_SFILES} rm -f .depend mv -f .newdep .depend cleandepend: rm -f .depend links: egrep '#if' ${CFILES} | sed -f $S/conf/defines | \ sed -e 's/:.*//' -e 's/\.c/.o/' | sort -u > dontlink echo ${CFILES} | tr -s ' ' '\12' | sed 's/\.c/.o/' | \ sort -u | comm -23 - dontlink | \ sed 's,../.*/\(.*.o\),rm -f \1;ln -s ../GENERIC/\1 \1,' > makelinks sh makelinks && rm -f dontlink tags: @[ -f .depend ] || { echo "you must make depend first"; exit 1; } sh $S/conf/systags.sh rm -f tags1 sed -e 's, ../, ,' tags > tags1 install install.debug: @if [ ! -f ${KERNEL}${.TARGET:S/install//} ] ; then \ echo "You must build a kernel first." ; \ exit 1 ; \ fi .if exists(${DESTDIR}/${KERNEL}) -chflags noschg ${DESTDIR}/${KERNEL} mv ${DESTDIR}/${KERNEL} ${DESTDIR}/${KERNEL}.old .endif PATH=$${PATH}:/sbin:/usr/sbin; \ if [ `sysctl -n kern.bootfile` = ${DESTDIR}/${KERNEL} ] ; then \ sysctl -w kern.bootfile=${DESTDIR}/${KERNEL}.old ; \ if [ -f /var/db/kvm_${KERNEL}.db ] ; then \ mv -f /var/db/kvm_${KERNEL}.db /var/db/kvm_${KERNEL}.old.db ; \ fi \ fi install -c -m 555 -o root -g wheel -fschg \ ${KERNEL}${.TARGET:S/install//} ${DESTDIR}/${KERNEL} reinstall reinstall.debug: install -c -m 555 -o root -g wheel -fschg \ ${KERNEL}${.TARGET:S/reinstall//} ${DESTDIR}/${KERNEL} config.o: ${NORMAL_C} ioconf.o: ${NORMAL_C} param.c: $S/conf/param.c -rm -f param.c cp $S/conf/param.c . param.o: ${NORMAL_C} vers.c: $S/conf/newvers.sh $S/sys/param.h ${SYSTEM_DEP} sh $S/conf/newvers.sh ${KERN_IDENT} ${IDENT} # XXX strictly, everything depends on Makefile because changes to ${PROF} # only appear there, but we don't handle that. vers.o: ${NORMAL_C} -vnode_if.c: $S/kern/vnode_if.sh $S/kern/vnode_if.src - perl $S/kern/vnode_if.sh -c $S/kern/vnode_if.src +vnode_if.c: $S/kern/vnode_if.pl $S/kern/vnode_if.src + perl5 $S/kern/vnode_if.pl -c $S/kern/vnode_if.src -vnode_if.h: $S/kern/vnode_if.sh $S/kern/vnode_if.src - perl $S/kern/vnode_if.sh -h $S/kern/vnode_if.src +vnode_if.h: $S/kern/vnode_if.pl $S/kern/vnode_if.src + perl5 $S/kern/vnode_if.pl -h $S/kern/vnode_if.src vnode_if.o: ${NORMAL_C} .if exists($S/../share/mk) .include "$S/../share/mk/bsd.kern.mk" .else .include .endif %RULES # DO NOT DELETE THIS LINE -- make depend uses it diff --git a/sys/conf/Makefile.i386 b/sys/conf/Makefile.i386 index f87b33c8e641..4086ac740b9b 100644 --- a/sys/conf/Makefile.i386 +++ b/sys/conf/Makefile.i386 @@ -1,288 +1,288 @@ # Makefile.i386 -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 # $FreeBSD$ # # Makefile for FreeBSD # # This makefile is constructed from a machine description: # config machineid # Most changes should be made in the machine description # /sys/i386/conf/``machineid'' # after which you should do # config machineid # Generic makefile changes should be made in # /sys/i386/conf/Makefile.i386 # after which config should be rerun for all machines. # # Which version of config(8) is required. %VERSREQ= 400016 # Can be overridden by makeoptions or /etc/make.conf KERNEL?= kernel KERNFORMAT?= elf STD8X16FONT?= iso .if !defined(S) .if exists(./@/.) S= ./@ .else S= ../.. .endif .endif I386= ${S}/i386 SIZE?= size COPTFLAGS?=-O INCLUDES= -nostdinc -I- -I. -I$S # This hack is to allow kernel compiles to succeed on machines w/out srcdist .if exists($S/../include) INCLUDES+= -I$S/../include .else INCLUDES+= -I/usr/include .endif COPTS= ${INCLUDES} ${IDENT} -DKERNEL -include opt_global.h # KAME mandatory flags COPTS+= -D_KERNEL CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} # XXX LOCORE means "don't declare C stuff" not "for locore.s". ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${CFLAGS} # Use the default object format for genassym, etc. GEN_CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} -UKERNEL # Select the correct set of tools. Can't set OBJFORMAT here because it # doesn't get exported into the environment, and if it were exported # then it might break building of genassym, etc. .if ${KERNFORMAT} == "elf" FMT= -elf .else FMT= -aout .endif CFLAGS+= ${FMT} LOAD_ADDRESS?= C0100000 DEFINED_PROF= ${PROF} .if defined(PROF) CFLAGS+= -malign-functions=4 .if ${PROFLEVEL} >= 2 IDENT+= -DGPROF4 -DGUPROF PROF+= -mprofiler-epilogue .endif .endif # Put configuration-specific C flags last (except for ${PROF}) so that they # can override the others. CFLAGS+= ${CONF_CFLAGS} NORMAL_C= ${CC} -c ${CFLAGS} ${PROF} $< NORMAL_C_C= ${CC} -c ${CFLAGS} ${PROF} $< NORMAL_S= ${CC} -c ${ASM_CFLAGS} $< PROFILE_C= ${CC} -c ${CFLAGS} $< GEN_CFILES= ${I386}/i386/genassym.c # setdef0.c and setdef1.c are intentionally # omitted from SYSTEM_CFILES. They include setdefs.h, a header which # is generated from all of ${OBJS}. We don't want to have to compile # everything just to do a make depend. SYSTEM_CFILES= ioconf.c param.c vnode_if.c config.c SYSTEM_SFILES= ${I386}/i386/locore.s SYSTEM_DEP= Makefile ${SYSTEM_OBJS} .if ${KERNFORMAT} == aout || ${KERNFORMAT} == aoutkld SYSTEM_OBJS= locore.o vnode_if.o ${OBJS} ioconf.o param.o config.o SYSTEM_LD= @${LD} ${FMT} -Bforcedynamic -Z -T ${LOAD_ADDRESS} -o ${.TARGET} -X ${SYSTEM_OBJS} vers.o SYSTEM_LD_TAIL= @${SIZE} ${FMT} ${.TARGET} ; chmod 755 ${.TARGET} .endif .if ${KERNFORMAT} == elf SYSTEM_OBJS= locore.o setdef0.o vnode_if.o ${OBJS} ioconf.o param.o config.o \ setdef1.o hack.So SYSTEM_LD= @${LD} ${FMT} -Bdynamic -T $S/i386/conf/kernel.script \ -export-dynamic -dynamic-linker /red/herring \ -o ${.TARGET} -X ${SYSTEM_OBJS} vers.o SYSTEM_LD_TAIL= @${SIZE} ${FMT} ${.TARGET} ; chmod 755 ${.TARGET} SYSTEM_DEP+= $S/i386/conf/kernel.script .endif %BEFORE_DEPEND %OBJS %CFILES %SFILES %MFILES %CLEAN all: ${KERNEL} .if !defined(DEBUG) FULLKERNEL= ${KERNEL} .else FULLKERNEL= ${KERNEL}.debug ${KERNEL}: ${FULLKERNEL} .if ${KERNFORMAT} == "elf" objcopy --strip-debug ${FULLKERNEL} ${KERNEL} .else cp ${FULLKERNEL} ${KERNEL} strip -d ${KERNEL} .endif .endif ${FULLKERNEL}: ${BEFORE_DEPEND} ${SYSTEM_DEP} vers.o @rm -f ${.TARGET} @echo linking ${.TARGET} ${SYSTEM_LD} ${SYSTEM_LD_TAIL} .if !exists(.depend) ${SYSTEM_OBJS}: vnode_if.h ${BEFORE_DEPEND:M*.h} .endif clean: rm -f *.o *.so *.So *.ko *.s eddep errs genassym gensetdefs \ ${KERNEL} ${FULLKERNEL} linterrs makelinks param.c \ setdef[01].c setdefs.h symbols.exclude symbols.sort tags \ vers.c vnode_if.c vnode_if.h ${CLEAN} #lint: /tmp param.c # @lint -hbxn -DGENERIC -Dvolatile= ${COPTS} \ # ${I386}/i386/Locore.c ${CFILES} ioconf.c param.c | \ # grep -v 'struct/union .* never defined' | \ # grep -v 'possible pointer alignment problem' locore.o: ${I386}/i386/locore.s assym.s ${NORMAL_S} .if ${KERNFORMAT} == elf # This is a hack. BFD "optimizes" away dynamic mode if there are no # dynamic references. We could probably do a '-Bforcedynamic' mode like # in the a.out ld. For now, this works. hack.So: Makefile touch hack.c ${CC} ${FMT} -shared -nostdlib hack.c -o hack.So rm -f hack.c .endif .ORDER: setdefs.h setdef0.c setdef1.c setdef0.o: setdef0.c setdefs.h ${NORMAL_C} setdef1.o: setdef1.c setdefs.h ${NORMAL_C} setdef0.c setdef1.c setdefs.h: ${OBJS} @gensetdefs ${OBJS} # this rule stops ./assym.s in .depend from causing problems ./assym.s: assym.s assym.s: genassym ./genassym >assym.s genassym.o: ${I386}/i386/genassym.c ${CC} -c ${GEN_CFLAGS} ${I386}/i386/genassym.c genassym: genassym.o ${CC} ${GEN_CFLAGS} genassym.o -o ${.TARGET} ${SYSTEM_OBJS} genassym.o vers.o: opt_global.h depend: assym.s param.c vnode_if.h ${BEFORE_DEPEND} \ ${CFILES} ${SYSTEM_CFILES} ${GEN_CFILES} ${SFILES} ${SYSTEM_SFILES} rm -f .newdep mkdep -a -f .newdep ${CFLAGS} ${CFILES} ${SYSTEM_CFILES} mkdep -a -f .newdep ${GEN_CFLAGS} ${GEN_CFILES} env MKDEP_CPP="${CC} -E" \ mkdep -a -f .newdep ${ASM_CFLAGS} ${SFILES} ${SYSTEM_SFILES} rm -f .depend mv -f .newdep .depend cleandepend: rm -f .depend links: egrep '#if' ${CFILES} | sed -f $S/conf/defines | \ sed -e 's/:.*//' -e 's/\.c/.o/' | sort -u > dontlink echo ${CFILES} | tr -s ' ' '\12' | sed 's/\.c/.o/' | \ sort -u | comm -23 - dontlink | \ sed 's,../.*/\(.*.o\),rm -f \1;ln -s ../GENERIC/\1 \1,' > makelinks sh makelinks && rm -f dontlink tags: @[ -f .depend ] || { echo "you must make depend first"; exit 1; } sh $S/conf/systags.sh rm -f tags1 sed -e 's, ../, ,' tags > tags1 install install.debug: @if [ ! -f ${KERNEL}${.TARGET:S/install//} ] ; then \ echo "You must build a kernel first." ; \ exit 1 ; \ fi .if exists(${DESTDIR}/${KERNEL}) -chflags noschg ${DESTDIR}/${KERNEL} mv ${DESTDIR}/${KERNEL} ${DESTDIR}/${KERNEL}.old .endif PATH=$${PATH}:/sbin:/usr/sbin; \ if [ `sysctl -n kern.bootfile` = ${DESTDIR}/${KERNEL} ] ; then \ sysctl -w kern.bootfile=${DESTDIR}/${KERNEL}.old ; \ if [ -f /var/db/kvm_${KERNEL}.db ] ; then \ mv -f /var/db/kvm_${KERNEL}.db /var/db/kvm_${KERNEL}.old.db ; \ fi \ fi install -c -m 555 -o root -g wheel -fschg \ ${KERNEL}${.TARGET:S/install//} ${DESTDIR}/${KERNEL} reinstall reinstall.debug: install -c -m 555 -o root -g wheel -fschg \ ${KERNEL}${.TARGET:S/reinstall//} ${DESTDIR}/${KERNEL} config.o: ${NORMAL_C} ioconf.o: ${NORMAL_C} param.c: $S/conf/param.c -rm -f param.c cp $S/conf/param.c . param.o: ${NORMAL_C} vers.c: $S/conf/newvers.sh $S/sys/param.h ${SYSTEM_DEP} sh $S/conf/newvers.sh ${KERN_IDENT} ${IDENT} # XXX strictly, everything depends on Makefile because changes to ${PROF} # only appear there, but we don't handle that. vers.o: ${NORMAL_C} -vnode_if.c: $S/kern/vnode_if.sh $S/kern/vnode_if.src - perl $S/kern/vnode_if.sh -c $S/kern/vnode_if.src +vnode_if.c: $S/kern/vnode_if.pl $S/kern/vnode_if.src + perl5 $S/kern/vnode_if.pl -c $S/kern/vnode_if.src -vnode_if.h: $S/kern/vnode_if.sh $S/kern/vnode_if.src - perl $S/kern/vnode_if.sh -h $S/kern/vnode_if.src +vnode_if.h: $S/kern/vnode_if.pl $S/kern/vnode_if.src + perl5 $S/kern/vnode_if.pl -h $S/kern/vnode_if.src vnode_if.o: ${NORMAL_C} # Commented out for now pending a better solution. # How do we pick up compiler version specific flags?? #.if exists($S/../share/mk) #.include "$S/../share/mk/bsd.kern.mk" #.else .include #.endif %RULES # DO NOT DELETE THIS LINE -- make depend uses it diff --git a/sys/conf/Makefile.powerpc b/sys/conf/Makefile.powerpc index f87b33c8e641..4086ac740b9b 100644 --- a/sys/conf/Makefile.powerpc +++ b/sys/conf/Makefile.powerpc @@ -1,288 +1,288 @@ # Makefile.i386 -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 # $FreeBSD$ # # Makefile for FreeBSD # # This makefile is constructed from a machine description: # config machineid # Most changes should be made in the machine description # /sys/i386/conf/``machineid'' # after which you should do # config machineid # Generic makefile changes should be made in # /sys/i386/conf/Makefile.i386 # after which config should be rerun for all machines. # # Which version of config(8) is required. %VERSREQ= 400016 # Can be overridden by makeoptions or /etc/make.conf KERNEL?= kernel KERNFORMAT?= elf STD8X16FONT?= iso .if !defined(S) .if exists(./@/.) S= ./@ .else S= ../.. .endif .endif I386= ${S}/i386 SIZE?= size COPTFLAGS?=-O INCLUDES= -nostdinc -I- -I. -I$S # This hack is to allow kernel compiles to succeed on machines w/out srcdist .if exists($S/../include) INCLUDES+= -I$S/../include .else INCLUDES+= -I/usr/include .endif COPTS= ${INCLUDES} ${IDENT} -DKERNEL -include opt_global.h # KAME mandatory flags COPTS+= -D_KERNEL CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} # XXX LOCORE means "don't declare C stuff" not "for locore.s". ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${CFLAGS} # Use the default object format for genassym, etc. GEN_CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} -UKERNEL # Select the correct set of tools. Can't set OBJFORMAT here because it # doesn't get exported into the environment, and if it were exported # then it might break building of genassym, etc. .if ${KERNFORMAT} == "elf" FMT= -elf .else FMT= -aout .endif CFLAGS+= ${FMT} LOAD_ADDRESS?= C0100000 DEFINED_PROF= ${PROF} .if defined(PROF) CFLAGS+= -malign-functions=4 .if ${PROFLEVEL} >= 2 IDENT+= -DGPROF4 -DGUPROF PROF+= -mprofiler-epilogue .endif .endif # Put configuration-specific C flags last (except for ${PROF}) so that they # can override the others. CFLAGS+= ${CONF_CFLAGS} NORMAL_C= ${CC} -c ${CFLAGS} ${PROF} $< NORMAL_C_C= ${CC} -c ${CFLAGS} ${PROF} $< NORMAL_S= ${CC} -c ${ASM_CFLAGS} $< PROFILE_C= ${CC} -c ${CFLAGS} $< GEN_CFILES= ${I386}/i386/genassym.c # setdef0.c and setdef1.c are intentionally # omitted from SYSTEM_CFILES. They include setdefs.h, a header which # is generated from all of ${OBJS}. We don't want to have to compile # everything just to do a make depend. SYSTEM_CFILES= ioconf.c param.c vnode_if.c config.c SYSTEM_SFILES= ${I386}/i386/locore.s SYSTEM_DEP= Makefile ${SYSTEM_OBJS} .if ${KERNFORMAT} == aout || ${KERNFORMAT} == aoutkld SYSTEM_OBJS= locore.o vnode_if.o ${OBJS} ioconf.o param.o config.o SYSTEM_LD= @${LD} ${FMT} -Bforcedynamic -Z -T ${LOAD_ADDRESS} -o ${.TARGET} -X ${SYSTEM_OBJS} vers.o SYSTEM_LD_TAIL= @${SIZE} ${FMT} ${.TARGET} ; chmod 755 ${.TARGET} .endif .if ${KERNFORMAT} == elf SYSTEM_OBJS= locore.o setdef0.o vnode_if.o ${OBJS} ioconf.o param.o config.o \ setdef1.o hack.So SYSTEM_LD= @${LD} ${FMT} -Bdynamic -T $S/i386/conf/kernel.script \ -export-dynamic -dynamic-linker /red/herring \ -o ${.TARGET} -X ${SYSTEM_OBJS} vers.o SYSTEM_LD_TAIL= @${SIZE} ${FMT} ${.TARGET} ; chmod 755 ${.TARGET} SYSTEM_DEP+= $S/i386/conf/kernel.script .endif %BEFORE_DEPEND %OBJS %CFILES %SFILES %MFILES %CLEAN all: ${KERNEL} .if !defined(DEBUG) FULLKERNEL= ${KERNEL} .else FULLKERNEL= ${KERNEL}.debug ${KERNEL}: ${FULLKERNEL} .if ${KERNFORMAT} == "elf" objcopy --strip-debug ${FULLKERNEL} ${KERNEL} .else cp ${FULLKERNEL} ${KERNEL} strip -d ${KERNEL} .endif .endif ${FULLKERNEL}: ${BEFORE_DEPEND} ${SYSTEM_DEP} vers.o @rm -f ${.TARGET} @echo linking ${.TARGET} ${SYSTEM_LD} ${SYSTEM_LD_TAIL} .if !exists(.depend) ${SYSTEM_OBJS}: vnode_if.h ${BEFORE_DEPEND:M*.h} .endif clean: rm -f *.o *.so *.So *.ko *.s eddep errs genassym gensetdefs \ ${KERNEL} ${FULLKERNEL} linterrs makelinks param.c \ setdef[01].c setdefs.h symbols.exclude symbols.sort tags \ vers.c vnode_if.c vnode_if.h ${CLEAN} #lint: /tmp param.c # @lint -hbxn -DGENERIC -Dvolatile= ${COPTS} \ # ${I386}/i386/Locore.c ${CFILES} ioconf.c param.c | \ # grep -v 'struct/union .* never defined' | \ # grep -v 'possible pointer alignment problem' locore.o: ${I386}/i386/locore.s assym.s ${NORMAL_S} .if ${KERNFORMAT} == elf # This is a hack. BFD "optimizes" away dynamic mode if there are no # dynamic references. We could probably do a '-Bforcedynamic' mode like # in the a.out ld. For now, this works. hack.So: Makefile touch hack.c ${CC} ${FMT} -shared -nostdlib hack.c -o hack.So rm -f hack.c .endif .ORDER: setdefs.h setdef0.c setdef1.c setdef0.o: setdef0.c setdefs.h ${NORMAL_C} setdef1.o: setdef1.c setdefs.h ${NORMAL_C} setdef0.c setdef1.c setdefs.h: ${OBJS} @gensetdefs ${OBJS} # this rule stops ./assym.s in .depend from causing problems ./assym.s: assym.s assym.s: genassym ./genassym >assym.s genassym.o: ${I386}/i386/genassym.c ${CC} -c ${GEN_CFLAGS} ${I386}/i386/genassym.c genassym: genassym.o ${CC} ${GEN_CFLAGS} genassym.o -o ${.TARGET} ${SYSTEM_OBJS} genassym.o vers.o: opt_global.h depend: assym.s param.c vnode_if.h ${BEFORE_DEPEND} \ ${CFILES} ${SYSTEM_CFILES} ${GEN_CFILES} ${SFILES} ${SYSTEM_SFILES} rm -f .newdep mkdep -a -f .newdep ${CFLAGS} ${CFILES} ${SYSTEM_CFILES} mkdep -a -f .newdep ${GEN_CFLAGS} ${GEN_CFILES} env MKDEP_CPP="${CC} -E" \ mkdep -a -f .newdep ${ASM_CFLAGS} ${SFILES} ${SYSTEM_SFILES} rm -f .depend mv -f .newdep .depend cleandepend: rm -f .depend links: egrep '#if' ${CFILES} | sed -f $S/conf/defines | \ sed -e 's/:.*//' -e 's/\.c/.o/' | sort -u > dontlink echo ${CFILES} | tr -s ' ' '\12' | sed 's/\.c/.o/' | \ sort -u | comm -23 - dontlink | \ sed 's,../.*/\(.*.o\),rm -f \1;ln -s ../GENERIC/\1 \1,' > makelinks sh makelinks && rm -f dontlink tags: @[ -f .depend ] || { echo "you must make depend first"; exit 1; } sh $S/conf/systags.sh rm -f tags1 sed -e 's, ../, ,' tags > tags1 install install.debug: @if [ ! -f ${KERNEL}${.TARGET:S/install//} ] ; then \ echo "You must build a kernel first." ; \ exit 1 ; \ fi .if exists(${DESTDIR}/${KERNEL}) -chflags noschg ${DESTDIR}/${KERNEL} mv ${DESTDIR}/${KERNEL} ${DESTDIR}/${KERNEL}.old .endif PATH=$${PATH}:/sbin:/usr/sbin; \ if [ `sysctl -n kern.bootfile` = ${DESTDIR}/${KERNEL} ] ; then \ sysctl -w kern.bootfile=${DESTDIR}/${KERNEL}.old ; \ if [ -f /var/db/kvm_${KERNEL}.db ] ; then \ mv -f /var/db/kvm_${KERNEL}.db /var/db/kvm_${KERNEL}.old.db ; \ fi \ fi install -c -m 555 -o root -g wheel -fschg \ ${KERNEL}${.TARGET:S/install//} ${DESTDIR}/${KERNEL} reinstall reinstall.debug: install -c -m 555 -o root -g wheel -fschg \ ${KERNEL}${.TARGET:S/reinstall//} ${DESTDIR}/${KERNEL} config.o: ${NORMAL_C} ioconf.o: ${NORMAL_C} param.c: $S/conf/param.c -rm -f param.c cp $S/conf/param.c . param.o: ${NORMAL_C} vers.c: $S/conf/newvers.sh $S/sys/param.h ${SYSTEM_DEP} sh $S/conf/newvers.sh ${KERN_IDENT} ${IDENT} # XXX strictly, everything depends on Makefile because changes to ${PROF} # only appear there, but we don't handle that. vers.o: ${NORMAL_C} -vnode_if.c: $S/kern/vnode_if.sh $S/kern/vnode_if.src - perl $S/kern/vnode_if.sh -c $S/kern/vnode_if.src +vnode_if.c: $S/kern/vnode_if.pl $S/kern/vnode_if.src + perl5 $S/kern/vnode_if.pl -c $S/kern/vnode_if.src -vnode_if.h: $S/kern/vnode_if.sh $S/kern/vnode_if.src - perl $S/kern/vnode_if.sh -h $S/kern/vnode_if.src +vnode_if.h: $S/kern/vnode_if.pl $S/kern/vnode_if.src + perl5 $S/kern/vnode_if.pl -h $S/kern/vnode_if.src vnode_if.o: ${NORMAL_C} # Commented out for now pending a better solution. # How do we pick up compiler version specific flags?? #.if exists($S/../share/mk) #.include "$S/../share/mk/bsd.kern.mk" #.else .include #.endif %RULES # DO NOT DELETE THIS LINE -- make depend uses it diff --git a/sys/conf/files.alpha b/sys/conf/files.alpha index f817a519c658..c932b64d401d 100644 --- a/sys/conf/files.alpha +++ b/sys/conf/files.alpha @@ -1,201 +1,201 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # # $FreeBSD$ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and # dependency lines other than the first are silently ignored. # # font8x16.o optional std8x16font \ compile-with "uudecode < /usr/share/syscons/fonts/${STD8X16FONT}-8x16.fnt && file2c 'unsigned char font_16[16*256] = {' '};' < ${STD8X16FONT}-8x16 > font8x16.c && ${CC} -c ${CFLAGS} font8x16.c" \ no-implicit-rule before-depend \ clean "${STD8X16FONT}-8x16 font8x16.c" # make sure apm.h gets made correctly apm.h standard \ compile-with "echo '#define NAPM 0' > apm.h" \ no-obj no-implicit-rule before-depend # atkbdmap.h optional atkbd_dflt_keymap \ compile-with "kbdcontrol -L ${ATKBD_DFLT_KEYMAP} | sed -e 's/^static keymap_t.* = /static keymap_t key_map = /' -e 's/^static accentmap_t.* = /static accentmap_t accent_map = /' > atkbdmap.h" \ no-obj no-implicit-rule before-depend \ clean "atkbdmap.h" # alpha/alpha/autoconf.c standard alpha/alpha/cpuconf.c standard alpha/alpha/atomic.s standard alpha/alpha/dec_kn8ae.c optional dec_kn8ae alpha/alpha/dec_eb164.c optional dec_eb164 alpha/alpha/dec_eb64plus.c optional dec_eb64plus alpha/alpha/dec_kn20aa.c optional dec_kn20aa alpha/alpha/dec_1000a.c optional dec_1000a alpha/alpha/dec_1000a.c optional dec_1000a alpha/alpha/dec_2100_a50.c optional dec_2100_a50 alpha/alpha/dec_st550.c optional dec_st550 alpha/alpha/dec_st6600.c optional dec_st6600 alpha/alpha/dec_axppci_33.c optional dec_axppci_33 alpha/alpha/dec_3000_300.c optional dec_3000_300 alpha/alpha/dec_3000_500.c optional dec_3000_500 alpha/alpha/mountroot.c optional slice alpha/alpha/ipl_funcs.c standard alpha/alpha/pal.s standard alpha/alpha/busdma_machdep.c standard alpha/alpha/sgmap.c standard alpha/alpha/prom.c standard alpha/alpha/promcons.c standard alpha/alpha/prom_disp.s standard alpha/alpha/alpha-gdbstub.c optional ddb alpha/alpha/db_disasm.c optional ddb alpha/alpha/db_interface.c optional ddb alpha/alpha/db_trace.c optional ddb alpha/alpha/exception.s standard alpha/alpha/in_cksum.c optional inet # locore.s needs to be handled in Makefile to put it first. Otherwise it's # now normal. # alpha/alpha/locore.s standard alpha/alpha/machdep.c standard alpha/alpha/fp_emulate.c standard alpha/alpha/ieee_float.c standard alpha/alpha/mem.c standard alpha/alpha/mp_machdep.c optional smp alpha/alpha/perfmon.c optional perfmon profiling-routine alpha/alpha/perfmon.c optional perfmon alpha/alpha/pmap.c standard alpha/alpha/procfs_machdep.c standard alpha/alpha/simplelock.s optional smp alpha/alpha/support.s standard alpha/alpha/swtch.s standard alpha/alpha/sys_machdep.c standard alpha/alpha/trap.c standard alpha/alpha/interrupt.c standard alpha/alpha/userconfig.c optional userconfig alpha/alpha/vm_machdep.c standard alpha/alpha/clock.c standard clock_if.o standard \ dependency "clock_if.c" \ compile-with "${NORMAL_C}" \ no-implicit-rule local clock_if.c standard \ dependency "$S/kern/makedevops.pl $S/alpha/alpha/clock_if.m" \ - compile-with "perl $S/kern/makedevops.pl -c $S/alpha/alpha/clock_if.m" \ + compile-with "perl5 $S/kern/makedevops.pl -c $S/alpha/alpha/clock_if.m" \ no-obj no-implicit-rule before-depend local \ clean "clock_if.c" clock_if.h standard \ dependency "$S/kern/makedevops.pl $S/alpha/alpha/clock_if.m" \ - compile-with "perl $S/kern/makedevops.pl -h $S/alpha/alpha/clock_if.m" \ + compile-with "perl5 $S/kern/makedevops.pl -h $S/alpha/alpha/clock_if.m" \ no-obj no-implicit-rule before-depend \ clean "clock_if.h" alpha/tlsb/tlsb.c optional tlsb alpha/tlsb/gbus.c optional gbus alpha/tlsb/kftxx.c optional kft alpha/tlsb/mcclock_tlsb.c optional gbus alpha/tlsb/zs_tlsb.c optional gbus alpha/tlsb/dwlpx.c optional dwlpx alpha/tc/tcasic.c optional dec_3000_300 alpha/tc/tcasic.c optional dec_3000_500 alpha/tc/tc.c optional dec_3000_300 alpha/tc/tc.c optional dec_3000_500 alpha/tc/ioasic.c optional dec_3000_300 alpha/tc/ioasic.c optional dec_3000_500 alpha/tc/mcclock_ioasic.c optional dec_3000_300 alpha/tc/mcclock_ioasic.c optional dec_3000_500 alpha/tc/if_le_ioasic.c optional le dec_3000_300 alpha/tc/if_le_ioasic.c optional le dec_3000_500 alpha/tc/if_le_dec.c optional le dec_3000_300 alpha/tc/if_le_dec.c optional le dec_3000_500 alpha/tc/am7990.c optional le dec_3000_300 alpha/tc/am7990.c optional le dec_3000_500 alpha/tc/tcds.c optional esp dec_3000_300 alpha/tc/tcds.c optional esp dec_3000_500 alpha/tc/tcds_dma.c optional tcds dec_3000_300 alpha/tc/tcds_dma.c optional tcds dec_3000_500 alpha/tc/esp.c optional esp dec_3000_300 alpha/tc/esp.c optional esp dec_3000_500 dev/dec/mcclock.c optional mcclock mcclock_if.o optional mcclock \ dependency "mcclock_if.c" \ compile-with "${NORMAL_C}" \ no-implicit-rule local mcclock_if.c standard \ dependency "$S/kern/makedevops.pl $S/dev/dec/mcclock_if.m" \ - compile-with "perl $S/kern/makedevops.pl -c $S/dev/dec/mcclock_if.m" \ + compile-with "perl5 $S/kern/makedevops.pl -c $S/dev/dec/mcclock_if.m" \ no-obj no-implicit-rule before-depend local \ clean "mcclock_if.c" mcclock_if.h optional mcclock \ dependency "$S/kern/makedevops.pl $S/dev/dec/mcclock_if.m" \ - compile-with "perl $S/kern/makedevops.pl -h $S/dev/dec/mcclock_if.m" \ + compile-with "perl5 $S/kern/makedevops.pl -h $S/dev/dec/mcclock_if.m" \ no-obj no-implicit-rule before-depend \ clean "mcclock_if.h" alpha/alpha/elf_machdep.c standard alpha/isa/isa.c optional isa alpha/isa/isa_dma.c optional isa alpha/isa/mcclock_isa.c optional isa alpha/pci/apecs.c optional dec_2100_a50 alpha/pci/apecs.c optional dec_eb64plus alpha/pci/apecs.c optional dec_1000a alpha/pci/apecs_pci.c optional dec_2100_a50 alpha/pci/apecs_pci.c optional dec_eb64plus alpha/pci/apecs_pci.c optional dec_1000a alpha/pci/cia.c optional dec_eb164 alpha/pci/cia.c optional dec_kn20aa alpha/pci/cia.c optional dec_st550 alpha/pci/cia.c optional dec_1000a alpha/pci/cia_pci.c optional dec_eb164 alpha/pci/cia_pci.c optional dec_kn20aa alpha/pci/cia_pci.c optional dec_st550 alpha/pci/cia_pci.c optional dec_1000a alpha/pci/lca.c optional dec_axppci_33 alpha/pci/lca_pci.c optional dec_axppci_33 alpha/pci/pci_eb164_intr.s optional dec_eb164 alpha/pci/pci_eb164_intr.s optional dec_kn20aa alpha/pci/pci_eb164_intr.s optional dec_st550 alpha/pci/pci_eb64plus_intr.s optional dec_2100_a50 alpha/pci/pci_eb64plus_intr.s optional dec_eb64plus alpha/pci/pcibus.c optional pci alpha/pci/tsunami.c optional dec_st6600 alpha/pci/tsunami_pci.c optional dec_st6600 dev/ata/ata-all.c optional ata dev/ata/ata-disk.c optional atadisk dev/ata/ata-dma.c optional ata dev/ata/atapi-all.c optional ata dev/ata/atapi-cd.c optional atapicd dev/ata/atapi-fd.c optional atapifd dev/ata/atapi-tape.c optional atapist dev/fb/fb.c optional fb dev/fb/fb.c optional vga dev/fb/splash.c optional splash dev/fb/vga.c optional vga dev/kbd/atkbd.c optional atkbd dev/kbd/atkbdc.c optional atkbdc dev/kbd/kbd.c optional atkbd dev/kbd/kbd.c optional kbd dev/kbd/kbd.c optional sc dev/kbd/kbd.c optional ukbd dev/sound/isa/ad1816.c optional pcm isa dev/sound/isa/es1888.c optional pcm isa dev/sound/isa/gusc.c optional gusc dev/sound/isa/mss.c optional pcm isa dev/sound/isa/sb.c optional pcm isa dev/sound/isa/sbc.c optional sbc dev/syscons/schistory.c optional sc dev/syscons/scmouse.c optional sc dev/syscons/scvgarndr.c optional sc dev/syscons/scvidctl.c optional sc dev/syscons/scvtb.c optional sc dev/syscons/syscons.c optional sc isa/atkbd_isa.c optional atkbd isa/atkbdc_isa.c optional atkbdc isa/fd.c optional fd isa/psm.c optional psm isa/sio.c optional sio isa/syscons_isa.c optional sc isa/vga_isa.c optional vga kern/subr_diskmbr.c standard libkern/alpha/htonl.S standard libkern/alpha/htons.S standard libkern/alpha/ntohl.S standard libkern/alpha/ntohs.S standard libkern/bcmp.c standard libkern/ffs.c standard diff --git a/sys/i386/conf/Makefile.i386 b/sys/i386/conf/Makefile.i386 index f87b33c8e641..4086ac740b9b 100644 --- a/sys/i386/conf/Makefile.i386 +++ b/sys/i386/conf/Makefile.i386 @@ -1,288 +1,288 @@ # Makefile.i386 -- with config changes. # Copyright 1990 W. Jolitz # from: @(#)Makefile.i386 7.1 5/10/91 # $FreeBSD$ # # Makefile for FreeBSD # # This makefile is constructed from a machine description: # config machineid # Most changes should be made in the machine description # /sys/i386/conf/``machineid'' # after which you should do # config machineid # Generic makefile changes should be made in # /sys/i386/conf/Makefile.i386 # after which config should be rerun for all machines. # # Which version of config(8) is required. %VERSREQ= 400016 # Can be overridden by makeoptions or /etc/make.conf KERNEL?= kernel KERNFORMAT?= elf STD8X16FONT?= iso .if !defined(S) .if exists(./@/.) S= ./@ .else S= ../.. .endif .endif I386= ${S}/i386 SIZE?= size COPTFLAGS?=-O INCLUDES= -nostdinc -I- -I. -I$S # This hack is to allow kernel compiles to succeed on machines w/out srcdist .if exists($S/../include) INCLUDES+= -I$S/../include .else INCLUDES+= -I/usr/include .endif COPTS= ${INCLUDES} ${IDENT} -DKERNEL -include opt_global.h # KAME mandatory flags COPTS+= -D_KERNEL CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} # XXX LOCORE means "don't declare C stuff" not "for locore.s". ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${CFLAGS} # Use the default object format for genassym, etc. GEN_CFLAGS= ${COPTFLAGS} ${CWARNFLAGS} ${DEBUG} ${COPTS} -UKERNEL # Select the correct set of tools. Can't set OBJFORMAT here because it # doesn't get exported into the environment, and if it were exported # then it might break building of genassym, etc. .if ${KERNFORMAT} == "elf" FMT= -elf .else FMT= -aout .endif CFLAGS+= ${FMT} LOAD_ADDRESS?= C0100000 DEFINED_PROF= ${PROF} .if defined(PROF) CFLAGS+= -malign-functions=4 .if ${PROFLEVEL} >= 2 IDENT+= -DGPROF4 -DGUPROF PROF+= -mprofiler-epilogue .endif .endif # Put configuration-specific C flags last (except for ${PROF}) so that they # can override the others. CFLAGS+= ${CONF_CFLAGS} NORMAL_C= ${CC} -c ${CFLAGS} ${PROF} $< NORMAL_C_C= ${CC} -c ${CFLAGS} ${PROF} $< NORMAL_S= ${CC} -c ${ASM_CFLAGS} $< PROFILE_C= ${CC} -c ${CFLAGS} $< GEN_CFILES= ${I386}/i386/genassym.c # setdef0.c and setdef1.c are intentionally # omitted from SYSTEM_CFILES. They include setdefs.h, a header which # is generated from all of ${OBJS}. We don't want to have to compile # everything just to do a make depend. SYSTEM_CFILES= ioconf.c param.c vnode_if.c config.c SYSTEM_SFILES= ${I386}/i386/locore.s SYSTEM_DEP= Makefile ${SYSTEM_OBJS} .if ${KERNFORMAT} == aout || ${KERNFORMAT} == aoutkld SYSTEM_OBJS= locore.o vnode_if.o ${OBJS} ioconf.o param.o config.o SYSTEM_LD= @${LD} ${FMT} -Bforcedynamic -Z -T ${LOAD_ADDRESS} -o ${.TARGET} -X ${SYSTEM_OBJS} vers.o SYSTEM_LD_TAIL= @${SIZE} ${FMT} ${.TARGET} ; chmod 755 ${.TARGET} .endif .if ${KERNFORMAT} == elf SYSTEM_OBJS= locore.o setdef0.o vnode_if.o ${OBJS} ioconf.o param.o config.o \ setdef1.o hack.So SYSTEM_LD= @${LD} ${FMT} -Bdynamic -T $S/i386/conf/kernel.script \ -export-dynamic -dynamic-linker /red/herring \ -o ${.TARGET} -X ${SYSTEM_OBJS} vers.o SYSTEM_LD_TAIL= @${SIZE} ${FMT} ${.TARGET} ; chmod 755 ${.TARGET} SYSTEM_DEP+= $S/i386/conf/kernel.script .endif %BEFORE_DEPEND %OBJS %CFILES %SFILES %MFILES %CLEAN all: ${KERNEL} .if !defined(DEBUG) FULLKERNEL= ${KERNEL} .else FULLKERNEL= ${KERNEL}.debug ${KERNEL}: ${FULLKERNEL} .if ${KERNFORMAT} == "elf" objcopy --strip-debug ${FULLKERNEL} ${KERNEL} .else cp ${FULLKERNEL} ${KERNEL} strip -d ${KERNEL} .endif .endif ${FULLKERNEL}: ${BEFORE_DEPEND} ${SYSTEM_DEP} vers.o @rm -f ${.TARGET} @echo linking ${.TARGET} ${SYSTEM_LD} ${SYSTEM_LD_TAIL} .if !exists(.depend) ${SYSTEM_OBJS}: vnode_if.h ${BEFORE_DEPEND:M*.h} .endif clean: rm -f *.o *.so *.So *.ko *.s eddep errs genassym gensetdefs \ ${KERNEL} ${FULLKERNEL} linterrs makelinks param.c \ setdef[01].c setdefs.h symbols.exclude symbols.sort tags \ vers.c vnode_if.c vnode_if.h ${CLEAN} #lint: /tmp param.c # @lint -hbxn -DGENERIC -Dvolatile= ${COPTS} \ # ${I386}/i386/Locore.c ${CFILES} ioconf.c param.c | \ # grep -v 'struct/union .* never defined' | \ # grep -v 'possible pointer alignment problem' locore.o: ${I386}/i386/locore.s assym.s ${NORMAL_S} .if ${KERNFORMAT} == elf # This is a hack. BFD "optimizes" away dynamic mode if there are no # dynamic references. We could probably do a '-Bforcedynamic' mode like # in the a.out ld. For now, this works. hack.So: Makefile touch hack.c ${CC} ${FMT} -shared -nostdlib hack.c -o hack.So rm -f hack.c .endif .ORDER: setdefs.h setdef0.c setdef1.c setdef0.o: setdef0.c setdefs.h ${NORMAL_C} setdef1.o: setdef1.c setdefs.h ${NORMAL_C} setdef0.c setdef1.c setdefs.h: ${OBJS} @gensetdefs ${OBJS} # this rule stops ./assym.s in .depend from causing problems ./assym.s: assym.s assym.s: genassym ./genassym >assym.s genassym.o: ${I386}/i386/genassym.c ${CC} -c ${GEN_CFLAGS} ${I386}/i386/genassym.c genassym: genassym.o ${CC} ${GEN_CFLAGS} genassym.o -o ${.TARGET} ${SYSTEM_OBJS} genassym.o vers.o: opt_global.h depend: assym.s param.c vnode_if.h ${BEFORE_DEPEND} \ ${CFILES} ${SYSTEM_CFILES} ${GEN_CFILES} ${SFILES} ${SYSTEM_SFILES} rm -f .newdep mkdep -a -f .newdep ${CFLAGS} ${CFILES} ${SYSTEM_CFILES} mkdep -a -f .newdep ${GEN_CFLAGS} ${GEN_CFILES} env MKDEP_CPP="${CC} -E" \ mkdep -a -f .newdep ${ASM_CFLAGS} ${SFILES} ${SYSTEM_SFILES} rm -f .depend mv -f .newdep .depend cleandepend: rm -f .depend links: egrep '#if' ${CFILES} | sed -f $S/conf/defines | \ sed -e 's/:.*//' -e 's/\.c/.o/' | sort -u > dontlink echo ${CFILES} | tr -s ' ' '\12' | sed 's/\.c/.o/' | \ sort -u | comm -23 - dontlink | \ sed 's,../.*/\(.*.o\),rm -f \1;ln -s ../GENERIC/\1 \1,' > makelinks sh makelinks && rm -f dontlink tags: @[ -f .depend ] || { echo "you must make depend first"; exit 1; } sh $S/conf/systags.sh rm -f tags1 sed -e 's, ../, ,' tags > tags1 install install.debug: @if [ ! -f ${KERNEL}${.TARGET:S/install//} ] ; then \ echo "You must build a kernel first." ; \ exit 1 ; \ fi .if exists(${DESTDIR}/${KERNEL}) -chflags noschg ${DESTDIR}/${KERNEL} mv ${DESTDIR}/${KERNEL} ${DESTDIR}/${KERNEL}.old .endif PATH=$${PATH}:/sbin:/usr/sbin; \ if [ `sysctl -n kern.bootfile` = ${DESTDIR}/${KERNEL} ] ; then \ sysctl -w kern.bootfile=${DESTDIR}/${KERNEL}.old ; \ if [ -f /var/db/kvm_${KERNEL}.db ] ; then \ mv -f /var/db/kvm_${KERNEL}.db /var/db/kvm_${KERNEL}.old.db ; \ fi \ fi install -c -m 555 -o root -g wheel -fschg \ ${KERNEL}${.TARGET:S/install//} ${DESTDIR}/${KERNEL} reinstall reinstall.debug: install -c -m 555 -o root -g wheel -fschg \ ${KERNEL}${.TARGET:S/reinstall//} ${DESTDIR}/${KERNEL} config.o: ${NORMAL_C} ioconf.o: ${NORMAL_C} param.c: $S/conf/param.c -rm -f param.c cp $S/conf/param.c . param.o: ${NORMAL_C} vers.c: $S/conf/newvers.sh $S/sys/param.h ${SYSTEM_DEP} sh $S/conf/newvers.sh ${KERN_IDENT} ${IDENT} # XXX strictly, everything depends on Makefile because changes to ${PROF} # only appear there, but we don't handle that. vers.o: ${NORMAL_C} -vnode_if.c: $S/kern/vnode_if.sh $S/kern/vnode_if.src - perl $S/kern/vnode_if.sh -c $S/kern/vnode_if.src +vnode_if.c: $S/kern/vnode_if.pl $S/kern/vnode_if.src + perl5 $S/kern/vnode_if.pl -c $S/kern/vnode_if.src -vnode_if.h: $S/kern/vnode_if.sh $S/kern/vnode_if.src - perl $S/kern/vnode_if.sh -h $S/kern/vnode_if.src +vnode_if.h: $S/kern/vnode_if.pl $S/kern/vnode_if.src + perl5 $S/kern/vnode_if.pl -h $S/kern/vnode_if.src vnode_if.o: ${NORMAL_C} # Commented out for now pending a better solution. # How do we pick up compiler version specific flags?? #.if exists($S/../share/mk) #.include "$S/../share/mk/bsd.kern.mk" #.else .include #.endif %RULES # DO NOT DELETE THIS LINE -- make depend uses it