Synced with sys/i386/conf/Makefile.i386 rev 1.176.

This commit is contained in:
KATO Takenori 2000-01-09 14:24:00 +00:00
parent 660a5f4353
commit a7dcfbda20
2 changed files with 22 additions and 64 deletions

View File

@ -23,7 +23,6 @@
# Can be overridden by makeoptions or /etc/make.conf
KERNEL?= kernel
KERNFORMAT?= elf
#STD8X16FONT?= iso
.if !defined(S)
@ -34,7 +33,7 @@ S= ../..
.endif
.endif
PC98= ${S}/pc98
I386= ${S}/i386
M= ${MACHINE_ARCH}
SIZE?= size
@ -55,11 +54,7 @@ ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${CFLAGS}
# 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 utilities.
.if ${KERNFORMAT} == "elf"
FMT= -elf
.else
FMT= -aout
.endif
CFLAGS+= ${FMT}
LOAD_ADDRESS?= C0100000
@ -81,30 +76,21 @@ NORMAL_C_C= ${CC} -c ${CFLAGS} ${PROF} ${.IMPSRC}
NORMAL_S= ${CC} -c ${ASM_CFLAGS} ${.IMPSRC}
PROFILE_C= ${CC} -c ${CFLAGS} ${.IMPSRC}
GEN_CFILES= ${I386}/i386/genassym.c
GEN_CFILES= $S/$M/$M/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_SFILES= $S/$M/$M/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 \
SYSTEM_LD= @${LD} ${FMT} -Bdynamic -T $S/$M/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
SYSTEM_DEP+= $S/$M/conf/kernel.script
%BEFORE_DEPEND
@ -125,12 +111,7 @@ FULLKERNEL= ${KERNEL}
.else
FULLKERNEL= ${KERNEL}.debug
${KERNEL}: ${FULLKERNEL}
.if ${KERNFORMAT} == "elf"
objcopy --strip-debug ${FULLKERNEL} ${KERNEL}
.else
cp ${FULLKERNEL} ${KERNEL}
strip -aout -d ${KERNEL}
.endif
.endif
${FULLKERNEL}: ${SYSTEM_DEP} vers.o
@ -144,21 +125,20 @@ ${SYSTEM_OBJS}: vnode_if.h ${BEFORE_DEPEND:M*.h}
.endif
clean:
rm -f *.o *.so *.So *.ko *.s eddep errs \
rm -f *.o *.so *.So *.ko *.s eddep errs genassym \
${FULLKERNEL} ${KERNEL} linterrs makelinks param.c \
setdef[01].c setdefs.h 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 | \
# $S/$M/$M/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
locore.o: $S/$M/$M/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.
@ -166,7 +146,6 @@ 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
@ -185,9 +164,9 @@ setdef0.c setdef1.c setdefs.h: ${OBJS}
assym.s: genassym.o
genassym genassym.o >assym.s
genassym.o: ${I386}/i386/genassym.c
rm -f ./machine ; ln -s ${I386}/include ./machine
${CC} -c ${CFLAGS} ${I386}/i386/genassym.c
genassym.o: $S/$M/$M/genassym.c
rm -f ./machine ; ln -s $S/$M/include ./machine
${CC} -c ${CFLAGS} $S/$M/$M/genassym.c
${SYSTEM_OBJS} genassym.o vers.o: opt_global.h

View File

@ -23,7 +23,6 @@
# Can be overridden by makeoptions or /etc/make.conf
KERNEL?= kernel
KERNFORMAT?= elf
#STD8X16FONT?= iso
.if !defined(S)
@ -34,7 +33,7 @@ S= ../..
.endif
.endif
PC98= ${S}/pc98
I386= ${S}/i386
M= ${MACHINE_ARCH}
SIZE?= size
@ -55,11 +54,7 @@ ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${CFLAGS}
# 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 utilities.
.if ${KERNFORMAT} == "elf"
FMT= -elf
.else
FMT= -aout
.endif
CFLAGS+= ${FMT}
LOAD_ADDRESS?= C0100000
@ -81,30 +76,21 @@ NORMAL_C_C= ${CC} -c ${CFLAGS} ${PROF} ${.IMPSRC}
NORMAL_S= ${CC} -c ${ASM_CFLAGS} ${.IMPSRC}
PROFILE_C= ${CC} -c ${CFLAGS} ${.IMPSRC}
GEN_CFILES= ${I386}/i386/genassym.c
GEN_CFILES= $S/$M/$M/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_SFILES= $S/$M/$M/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 \
SYSTEM_LD= @${LD} ${FMT} -Bdynamic -T $S/$M/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
SYSTEM_DEP+= $S/$M/conf/kernel.script
%BEFORE_DEPEND
@ -125,12 +111,7 @@ FULLKERNEL= ${KERNEL}
.else
FULLKERNEL= ${KERNEL}.debug
${KERNEL}: ${FULLKERNEL}
.if ${KERNFORMAT} == "elf"
objcopy --strip-debug ${FULLKERNEL} ${KERNEL}
.else
cp ${FULLKERNEL} ${KERNEL}
strip -aout -d ${KERNEL}
.endif
.endif
${FULLKERNEL}: ${SYSTEM_DEP} vers.o
@ -144,21 +125,20 @@ ${SYSTEM_OBJS}: vnode_if.h ${BEFORE_DEPEND:M*.h}
.endif
clean:
rm -f *.o *.so *.So *.ko *.s eddep errs \
rm -f *.o *.so *.So *.ko *.s eddep errs genassym \
${FULLKERNEL} ${KERNEL} linterrs makelinks param.c \
setdef[01].c setdefs.h 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 | \
# $S/$M/$M/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
locore.o: $S/$M/$M/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.
@ -166,7 +146,6 @@ 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
@ -185,9 +164,9 @@ setdef0.c setdef1.c setdefs.h: ${OBJS}
assym.s: genassym.o
genassym genassym.o >assym.s
genassym.o: ${I386}/i386/genassym.c
rm -f ./machine ; ln -s ${I386}/include ./machine
${CC} -c ${CFLAGS} ${I386}/i386/genassym.c
genassym.o: $S/$M/$M/genassym.c
rm -f ./machine ; ln -s $S/$M/include ./machine
${CC} -c ${CFLAGS} $S/$M/$M/genassym.c
${SYSTEM_OBJS} genassym.o vers.o: opt_global.h