From a0a88e0a71574fa15cff2f4ded5a8fc103fc1ee8 Mon Sep 17 00:00:00 2001 From: matt Date: Sun, 3 Dec 2000 04:51:26 +0000 Subject: [PATCH] Use shared Makefile.mips --- sys/arch/mipsco/conf/Makefile.mipsco | 219 ----------------------- sys/arch/mipsco/conf/Makefile.mipsco.inc | 12 ++ sys/arch/mipsco/conf/std.mipsco | 6 +- 3 files changed, 17 insertions(+), 220 deletions(-) delete mode 100644 sys/arch/mipsco/conf/Makefile.mipsco create mode 100644 sys/arch/mipsco/conf/Makefile.mipsco.inc diff --git a/sys/arch/mipsco/conf/Makefile.mipsco b/sys/arch/mipsco/conf/Makefile.mipsco deleted file mode 100644 index 7106691f7995..000000000000 --- a/sys/arch/mipsco/conf/Makefile.mipsco +++ /dev/null @@ -1,219 +0,0 @@ -# $NetBSD: Makefile.mipsco,v 1.3 2000/10/03 10:09:12 wdk Exp $ - -# Makefile for NetBSD -# -# This makefile is constructed from a machine description: -# config machineid -# Most changes should be made in the machine description -# /sys/arch/mipsco/conf/``machineid'' -# after which you should do -# config machineid -# Machine generic makefile changes should be made in -# /sys/arch/mipsco/conf/Makefile.mipsco -# after which config should be rerun for all machines of that type. -# -# N.B.: NO DEPENDENCIES ON FOLLOWING FLAGS ARE VISIBLE TO MAKEFILE -# IF YOU CHANGE THE DEFINITION OF ANY OF THESE RECOMPILE EVERYTHING -# -# -DTRACE compile in kernel tracing hooks -# -DQUOTA compile in file system quotas - -# DEBUG is set to -g if debugging. -# PROF is set to -pg if profiling. - -AR?= ar -AS?= as -CC?= cc -CPP?= cpp -LD?= ld -LORDER?=lorder -MKDEP?= mkdep -NM?= nm -RANLIB?=ranlib -SIZE?= size -STRIP?= strip -TSORT?= tsort -q - -COPTS?= -O2 - -# source tree is located via $S relative to the compilation directory -.ifndef S -#S!= cd ../../../..; pwd -S= ../../../.. -.endif -MIPSCO= $S/arch/mipsco -MIPS= $S/arch/mips - -HAVE_GCC28!= ${CC} --version | egrep "^(2\.8|egcs)" ; echo -INCLUDES= -I. -I$S/arch -I$S -nostdinc -CPPFLAGS= ${INCLUDES} ${IDENT} ${PARAM} -D_KERNEL -Dmipsco -CWARNFLAGS?= -Werror -Wall -Wno-parentheses -Wpointer-arith -.if (${HAVE_GCC28} != "") -CWARNFLAGS+= -Wno-main -.endif -GP?= -G0 -CFLAGS= ${DEBUG} ${COPTS} ${CWARNFLAGS} ${GP} \ - -mno-abicalls -mno-half-pic -AFLAGS= -x assembler-with-cpp -traditional-cpp -D_LOCORE -LINKFLAGS= -N -Ttext 80021000 -e start ${GP} -T ../../conf/kern.ldscript -STRIPFLAGS= -g -X -x - -### find out what to use for libkern -.include "$S/lib/libkern/Makefile.inc" -.ifndef PROF -LIBKERN= ${KERNLIB} -.else -LIBKERN= ${KERNLIB_PROF} -.endif - -### find out what to use for libcompat -.include "$S/compat/common/Makefile.inc" -.ifndef PROF -LIBCOMPAT= ${COMPATLIB} -.else -LIBCOMPAT= ${COMPATLIB_PROF} -.endif - -# compile rules: rules are named ${TYPE}_${SUFFIX} where TYPE is NORMAL or -# HOSTED}, and SUFFIX is the file suffix, capitalized (e.g. C for a .c file). - -NORMAL_C= ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c $< -NOPROF_C= ${CC} ${CFLAGS} ${CPPFLAGS} -c $< -NORMAL_S= ${CC} ${AFLAGS} ${CPPFLAGS} -c $< - -%OBJS - -%CFILES - -%SFILES - -# load lines for config "xxx" will be emitted as: -# xxx: ${SYSTEM_DEP} swapxxx.o -# ${SYSTEM_LD_HEAD} -# ${SYSTEM_LD} swapxxx.o -# ${SYSTEM_LD_TAIL} -SYSTEM_OBJ= locore.o locore_machdep.o -.if !empty(IDENT:M-DMIPS1) -SYSTEM_OBJ+= locore_mips1.o -.endif -.if !empty(IDENT:M-DMIPS3) -SYSTEM_OBJ+= locore_mips3.o -.endif -SYSTEM_OBJ+= fp.o param.o ioconf.o ${OBJS} ${LIBKERN} ${LIBCOMPAT} -SYSTEM_DEP= Makefile ${SYSTEM_OBJ} -SYSTEM_LD_HEAD= @rm -f $@ -SYSTEM_LD= @echo ${LD} ${LINKFLAGS} -o $@ '$${SYSTEM_OBJ}' vers.o ; \ - ${LD} ${LINKFLAGS} -o $@ ${SYSTEM_OBJ} vers.o -SYSTEM_LD_TAIL= @${SIZE} $@; chmod 755 $@ - -DEBUG?= -.if ${DEBUG} == "-g" -LINKFLAGS+= -X -SYSTEM_LD_TAIL+=; \ - echo cp $@ $@.gdb; rm -f $@.gdb; cp $@ $@.gdb; \ - echo ${STRIP} ${STRIPFLAGS} $@; ${STRIP} ${STRIPFLAGS} $@ -.else -LINKFLAGS+= -x -.endif - -SYSTEM_LD_TAIL+=; \ - set -x; \ - objcopy --output-target=ecoff-bigmips $@ $@.ecoff - -%LOAD - -assym.h: $S/kern/genassym.sh ${MIPS}/mips/genassym.cf - sh $S/kern/genassym.sh ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} \ - < ${MIPS}/mips/genassym.cf > assym.h.tmp && \ - mv -f assym.h.tmp assym.h - - -param.c: $S/conf/param.c - rm -f param.c - cp $S/conf/param.c . - -param.o: param.c Makefile - ${NORMAL_C} - -ioconf.o: ioconf.c - ${NORMAL_C} - -newvers: ${SYSTEM_DEP} ${SYSTEM_SWAP_DEP} - sh $S/conf/newvers.sh - ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c vers.c - -__CLEANKERNEL: .USE - @echo "${.TARGET}ing the kernel objects" - rm -f eddep netbsd netbsd.ecoff netbsd.gdb tags *.[io] [a-z]*.s \ - [Ee]rrs linterrs makelinks assym.h.tmp assym.h - -__CLEANDEPEND: .USE - rm -f .depend - -clean: __CLEANKERNEL - -cleandir distclean: __CLEANKERNEL __CLEANDEPEND - -lint: - @lint -hbxncez -Dvolatile= ${CPPFLAGS} -UKGDB \ - ${MIPS}/mips/Locore.c ${CFILES} \ - ioconf.c param.c | \ - grep -v 'static function .* unused' - -tags: - @echo "see $S/kern/Makefile for tags" - -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 - -SRCS= ${MIPS}/mips/locore.S ${MIPS}/mips/fp.S \ - ${MIPSCO}/mipsco/locore_machdep.S \ - param.c ioconf.c ${CFILES} ${SFILES} -depend: .depend -.depend: ${SRCS} assym.h param.c - ${MKDEP} ${AFLAGS} ${CPPFLAGS} ${MIPS}/mips/locore.S ${MIPS}/mips/fp.S - ${MKDEP} -a ${AFLAGS} ${CPPFLAGS} ${MIPSCO}/mipsco/locore_machdep.S - ${MKDEP} -a ${CFLAGS} ${CPPFLAGS} param.c ioconf.c ${CFILES} -.if ${SFILES} != "" - ${MKDEP} -a ${AFLAGS} ${CPPFLAGS} ${SFILES} -.endif - sh $S/kern/genassym.sh ${MKDEP} -f assym.dep ${CFLAGS} \ - ${CPPFLAGS} < ${MIPS}/mips/genassym.cf - @sed -e 's/.*\.o:.*\.c/assym.h:/' < assym.dep >> .depend - @rm -f assym.dep - - -# depend on root or device configuration -autoconf.o conf.o: Makefile - -# depend on network or filesystem configuration -uipc_proto.o vfs_conf.o: Makefile - -# depend on maxusers -machdep.o: Makefile - -# depend on CPU configuration -machdep.o mainbus.o trap.o: Makefile - - -locore.o: ${MIPS}/mips/locore.S assym.h - ${NORMAL_S} - -locore_mips1.o: ${MIPS}/mips/locore_mips1.S assym.h - ${NORMAL_S} - -locore_mips3.o: ${MIPS}/mips/locore_mips3.S assym.h - ${NORMAL_S} - -fp.o: ${MIPS}/mips/fp.S assym.h - ${NORMAL_S} - -locore_machdep.o: ${MIPSCO}/mipsco/locore_machdep.S assym.h - ${NORMAL_S} - -%RULES diff --git a/sys/arch/mipsco/conf/Makefile.mipsco.inc b/sys/arch/mipsco/conf/Makefile.mipsco.inc new file mode 100644 index 000000000000..6f474d9d49d2 --- /dev/null +++ b/sys/arch/mipsco/conf/Makefile.mipsco.inc @@ -0,0 +1,12 @@ +# $NetBSD: Makefile.mipsco.inc,v 1.1 2000/12/03 04:51:26 matt Exp $ + +# Used if DEBUG != "" +DEBUG_SYSTEM_LD_TAIL+=; \ + echo mv -f $@ $@.gdb; mv -f $@ $@.gdb; \ + echo ${STRIP} ${STRIPFLAGS} -o $@ $@.gdb; \ + ${STRIP} ${STRIPFLAGS} -o $@ $@.gdb + +# XXX +POST_STRIP_SYSTEM_LD_TAIL=; \ + echo objcopy --output-target=ecoff-bigmips $@ $@.ecoff; \ + objcopy --output-target=ecoff-bigmips $@ $@.ecoff diff --git a/sys/arch/mipsco/conf/std.mipsco b/sys/arch/mipsco/conf/std.mipsco index 5168c12dbd62..757d829e511b 100644 --- a/sys/arch/mipsco/conf/std.mipsco +++ b/sys/arch/mipsco/conf/std.mipsco @@ -1,6 +1,10 @@ -# $NetBSD: std.mipsco,v 1.1 2000/08/12 22:58:02 wdk Exp $ +# $NetBSD: std.mipsco,v 1.2 2000/12/03 04:51:26 matt Exp $ machine mipsco mips options EXEC_ELF32 # exec ELF32 binaries options EXEC_SCRIPT # exec #! scripts + +makeoptions DEFTEXTADDR="0x80021000" +makeoptions ENDIAN="-EB" +makeoptions LINKFLAGS="-N"