[BACK]Return to Makefile.i386 CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / arch / i386 / conf

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/sys/arch/i386/conf/Makefile.i386 between version 1.112.2.7 and 1.113

version 1.112.2.7, 2002/12/19 00:33:46 version 1.113, 2001/05/15 22:34:36
Line 11 
Line 11 
 # Machine generic makefile changes should be made in  # Machine generic makefile changes should be made in
 #       /sys/arch/i386/conf/Makefile.i386  #       /sys/arch/i386/conf/Makefile.i386
 # after which config should be rerun for all machines of that type.  # after which config should be rerun for all machines of that type.
 #  
 # To specify debugging, add the config line: makeoptions DEBUG="-g"  
 # A better way is to specify -g only for a few files.  
 #  
 #       makeoptions DEBUGLIST="uvm* trap if_*"  
   
 MACHINE_ARCH=   i386  
 USETOOLS?=      no  
 NEED_OWN_INSTALL_TARGET?=no  
 .include <bsd.own.mk>  
   
 ##  .include <bsd.own.mk>
 ## (1) port identification  
 ##  
 I386=           $S/arch/i386  
 GENASSYM=       ${I386}/i386/genassym.cf  
   
 ##  
 ## (2) compile settings  
 ##  
 CPPFLAGS+=      -Di386  
 AFLAGS+=        -x assembler-with-cpp -traditional-cpp  
   
 ##  
 ## (3) libkern and compat  
 ##  
 KERN_AS=        obj  
   
 ##  # DEBUG is set to -g if debugging.
 ## (4) local objects, compile rules, and dependencies  # PROF is set to -pg if profiling.
 ##  
 MD_OBJS=        locore.o spl.o vector.o  
 MD_CFILES=  
 MD_SFILES=      ${I386}/i386/locore.S  
   
 locore.o: ${I386}/i386/locore.S assym.h  AR?=    ar
         ${NORMAL_S}  AS?=    as
   CC?=    cc
 spl.o: ${I386}/i386/spl.S assym.h  CPP?=   cpp
         ${NORMAL_S}  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
   .endif
   I386=   $S/arch/i386
   
 vector.o: ${I386}/i386/vector.S assym.h  HAVE_EGCS!=     ${CC} --version | egrep "^(2\.[89]|egcs)" ; echo
         ${NORMAL_S}  INCLUDES=       -I. -I$S/arch -I$S -nostdinc
   CPPFLAGS=       ${INCLUDES} ${IDENT} ${PARAM} -D_KERNEL -Di386
   CWARNFLAGS?=    -Werror -Wall -Wmissing-prototypes -Wstrict-prototypes \
                   -Wpointer-arith
   # XXX Delete -Wuninitialized for now, since the compiler doesn't
   # XXX always get it right.  --thorpej
   CWARNFLAGS+=    -Wno-uninitialized
   .if (${HAVE_EGCS} != "")
   CWARNFLAGS+=    -Wno-main
   .endif
   CFLAGS=         ${DEBUG} ${COPTS} ${CWARNFLAGS}
   AFLAGS=         -x assembler-with-cpp -traditional-cpp -D_LOCORE
   LINKFLAGS=      -Ttext c0100000 -e start
   
 ##  
 ## (5) link settings  
 ##  
 TEXTADDR?=      c0100000  
 LINKFLAGS_NORMAL=       -X  
 .if (${OBJECT_FMT} == "ELF")  .if (${OBJECT_FMT} == "ELF")
 KERN_LDSCRIPT?= kern.ldscript  KERN_LDSCRIPT?= kern.ldscript
 LINKFORMAT=     -T ${I386}/conf/${KERN_LDSCRIPT}  LINKFLAGS+=     -T ${I386}/conf/${KERN_LDSCRIPT}
 .else  .else
 LINKFORMAT=     -z  LINKFLAGS+=     -z
 .endif  .endif
   
 ##  STRIPFLAGS=     -g
 ## (6) port specific target dependencies  
 ##  
   
 freebsd_sigcode.o ibcs2_sigcode.o linux_sigcode.o: assym.h  
 svr4_sigcode.o mach_sigcode.o: assym.h  
 apmcall.o in_cksum.o pnpbioscall.o: assym.h  
 clock.o: config_time.h  
   
 ##  
 ## (7) misc settings  
 ##  
   
 ##  
 ## (8) config(8) generated machinery  
 ##  
 %INCLUDES  %INCLUDES
   
   ### find out what to use for libkern
   KERN_AS=        obj
   .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  %OBJS
   
 %CFILES  %CFILES
   
 %SFILES  %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 \
                   param.o ioconf.o ${OBJS} ${LIBCOMPAT} ${LIBKERN}
   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 mv -f $@ $@.gdb; mv -f $@ $@.gdb; \
                   echo ${STRIP} ${STRIPFLAGS} -o $@ $@.gdb; \
                   ${STRIP} ${STRIPFLAGS} -o $@ $@.gdb
   .else
   LINKFLAGS+=     -X
   .endif
   
 %LOAD  %LOAD
   
 %RULES  assym.h: $S/kern/genassym.sh ${I386}/i386/genassym.cf
           sh $S/kern/genassym.sh ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} \
               < ${I386}/i386/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}
 ## (9) port independent kernel machinery          sh $S/conf/newvers.sh
 ##          ${CC} ${CFLAGS} ${CPPFLAGS} ${PROF} -c vers.c
 .include "$S/conf/Makefile.kern.inc"  
   
   __CLEANKERNEL: .USE
           @echo "${.TARGET}ing the kernel objects"
           rm -f eddep *netbsd 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
   
   ALLSFILES=      ${I386}/i386/locore.s ${SFILES}
   LINTSTUBS=      ${ALLSFILES:T:R:C/^.*$/LintStub_&.c/g}
   
   .for _sfile in ${ALLSFILES}
   LintStub_${_sfile:T:R}.c: ${_sfile} assym.h
           ${CC} -E -C ${AFLAGS} ${CPPFLAGS} ${_sfile} | \
                 awk -f $S/kern/genlintstub.awk >${.TARGET}
   .endfor
   
   lint: ${LINTSTUBS} ${CFILES} ioconf.c param.c
           @lint -hbxncez -Dvolatile= ${CPPFLAGS} -UKGDB \
               ${LINTSTUBS} ${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=   ${I386}/i386/locore.s \
           param.c ioconf.c ${CFILES} ${SFILES}
   depend: .depend
   .depend: ${SRCS} assym.h param.c
           ${MKDEP} ${AFLAGS} ${CPPFLAGS} ${I386}/i386/locore.s
           ${MKDEP} -a ${CFLAGS} ${CPPFLAGS} param.c ioconf.c ${CFILES}
           ${MKDEP} -a ${AFLAGS} ${CPPFLAGS} ${SFILES}
           sh $S/kern/genassym.sh ${MKDEP} -f assym.dep ${CFLAGS} \
             ${CPPFLAGS} < ${I386}/i386/genassym.cf
           @sed -e 's/.*\.o:.*\.c/assym.h:/' < assym.dep >> .depend
           @rm -f assym.dep
   
   dependall: depend all
   
   
   # 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
   locore.o machdep.o: Makefile
   
   locore.o: ${I386}/i386/locore.s assym.h
           ${NORMAL_S}
   
   apmcall.o in_cksum.o pnpbioscall.o: assym.h
   
   freebsd_sigcode.o ibcs2_sigcode.o linux_sigcode.o svr4_sigcode.o: assym.h
   
   # The install target can be redefined by putting a
   # install-kernel-${MACHINE_NAME} target into /etc/mk.conf
   MACHINE_NAME!=  uname -n
   install: install-kernel-${MACHINE_NAME}
   .if !target(install-kernel-${MACHINE_NAME}})
   install-kernel-${MACHINE_NAME}:
           rm -f /onetbsd
           ln /netbsd /onetbsd
           cp netbsd /nnetbsd
           mv /nnetbsd /netbsd
   .endif
   
   %RULES

Legend:
Removed from v.1.112.2.7  
changed lines
  Added in v.1.113

CVSweb <webmaster@jp.NetBSD.org>