Module Name: src
Committed By: uebayasi
Date: Wed Sep 2 15:29:23 UTC 2015
Modified Files:
src/sys/conf: Makefile.kern.inc
Log Message:
Clean up `swap<kernel>.o' handling.
To generate a diff of this commit:
cvs rdiff -u -r1.222 -r1.223 src/sys/conf/Makefile.kern.inc
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/conf/Makefile.kern.inc
diff -u src/sys/conf/Makefile.kern.inc:1.222 src/sys/conf/Makefile.kern.inc:1.223
--- src/sys/conf/Makefile.kern.inc:1.222 Wed Sep 2 14:17:03 2015
+++ src/sys/conf/Makefile.kern.inc Wed Sep 2 15:29:23 2015
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile.kern.inc,v 1.222 2015/09/02 14:17:03 uebayasi Exp $
+# $NetBSD: Makefile.kern.inc,v 1.223 2015/09/02 15:29:23 uebayasi Exp $
#
# This file contains common `MI' targets and definitions and it is included
# at the bottom of each `MD' ${MACHINE}/conf/Makefile.${MACHINE}.
@@ -223,6 +223,7 @@ SYSTEM_OBJ?= ${MD_OBJS} ${MI_OBJS} ${OBJ
.else
SYSTEM_OBJ?= ${MD_OBJS} ${MI_OBJS} ${OBJS:O} ${SYSLIBCOMPAT} ${LIBKERN}
.endif
+SYSTEM_OBJ_NOSWAP= ${SYSTEM_OBJ:N*swapnetbsd*}
SYSTEM_DEP+= Makefile ${SYSTEM_OBJ} .gdbinit
.if defined(CTFMERGE)
SYSTEM_CTFMERGE= ${CTFMERGE} ${CTFMFLAGS} -o ${.TARGET} ${SYSTEM_OBJ} ${EXTRA_OBJ} vers.o
@@ -230,14 +231,10 @@ SYSTEM_CTFMERGE= ${CTFMERGE} ${CTFMFLAGS
SYSTEM_CTFMERGE= ${_MKSHECHO}
.endif
SYSTEM_LD_HEAD?=@rm -f $@
-SYSTEM_LD?= @do_system_ld() { \
- target=$$1; shift; \
- ${_MKSHMSG} " link ${.CURDIR:T}/${.TARGET}"; \
+SYSTEM_LD?= ${_MKSHMSG} " link ${.CURDIR:T}/${.TARGET}"; \
${_MKSHECHO}\
- ${LD} -Map $${target}.map --cref ${LINKFLAGS} -o $${target} '$${SYSTEM_OBJ}' '$${EXTRA_OBJ}' vers.o swap$${target}.o $$@; \
- ${LD} -Map $${target}.map --cref ${LINKFLAGS} -o $${target} ${SYSTEM_OBJ} ${EXTRA_OBJ} vers.o swap$${target}.o $$@; \
- }; \
- do_system_ld
+ ${LD} -Map ${.TARGET}.map --cref ${LINKFLAGS} -o ${.TARGET} '$${SYSTEM_OBJ_NOSWAP}' '$${EXTRA_OBJ}' vers.o '$${OBJS:M*swap${.TARGET}.o}'; \
+ ${LD} -Map ${.TARGET}.map --cref ${LINKFLAGS} -o ${.TARGET} ${SYSTEM_OBJ_NOSWAP} ${EXTRA_OBJ} vers.o ${OBJS:M*swap${.TARGET}.o}
# Give MD generated ldscript dependency on ${SYSTEM_OBJ}
.if defined(KERNLDSCRIPT)
@@ -304,16 +301,17 @@ SYSTEM_LD_TAIL_STAGE2+= ${SYSTEM_LD_TAIL
##
.if !defined(___USE_SUFFIX_RULES___)
-OBJS= ${CFILES:T:R:C|$|.o|:N*swapnetbsd*} \
+OBJS= ${CFILES:T:R:C|$|.o|} \
${SFILES:T:R:C|$|.o|} \
${OFILES}
-_CFILES=${CFILES:M/*} ${CFILES:N*swapnetbsd*:N/*:C|^|$S/|}
-_SFILES=${SFILES:M/*} ${SFILES:N/*:C|^|$S/|}
+# absolute, generated (build directory), relative (under $S)
+_CFILES=${CFILES:M/*} ${CFILES:N/*:N*/*} ${CFILES:N/*:M*/*:C|^|$S/|}
+_SFILES=${SFILES:M/*} ${SFILES:N/*:N*/*} ${SFILES:N/*:M*/*:C|^|$S/|}
.else
-OBJS= ${CFILES:R:C|$|.o|:N*swapnetbsd*} \
+OBJS= ${CFILES:R:C|$|.o|} \
${SFILES:R:C|$|.o|} \
${OFILES}
-_CFILES=${CFILES:N*swapnetbsd*}
+_CFILES=${CFILES}
_SFILES=${SFILES}
.endif # ___USE_SUFFIX_RULES___
@@ -504,7 +502,7 @@ CWARNFLAGS+= ${CWARNFLAGS.${.IMPSRC:T}}
.if !defined(COPY_SYMTAB)
build_kernel: .USE
${SYSTEM_LD_HEAD}
- ${SYSTEM_LD} ${.TARGET}
+ ${SYSTEM_LD}
${SYSTEM_LD_TAIL_STAGE2}
.else
.for k in ${KERNELS}
@@ -514,13 +512,13 @@ build_kernel: .USE
${CC} ${CFLAGS} ${CPPFLAGS} -DCOPY_SYMTAB \
-c $S/kern/kern_ksyms_buf.c -o kern_ksyms_buf.o
${SYSTEM_LD_HEAD}
- ${SYSTEM_LD} ${.TARGET} kern_ksyms_buf.o
+ ${SYSTEM_LD} kern_ksyms_buf.o
${SYSTEM_LD_TAIL_STAGE1}
${CC} ${CFLAGS} ${CPPFLAGS} -DCOPY_SYMTAB \
-DSYMTAB_SPACE=$$(${DBSYM} -P ${.TARGET}${TARGETSFX}) \
-c $S/kern/kern_ksyms_buf.c -o kern_ksyms_buf_real.o
${SYSTEM_LD_HEAD}
- ${SYSTEM_LD} ${.TARGET} kern_ksyms_buf_real.o
+ ${SYSTEM_LD} kern_ksyms_buf_real.o
${SYSTEM_LD_TAIL_STAGE2}
.endif