diff options
author | Miod Vallat <miod@cvs.openbsd.org> | 2009-08-09 23:04:50 +0000 |
---|---|---|
committer | Miod Vallat <miod@cvs.openbsd.org> | 2009-08-09 23:04:50 +0000 |
commit | d820f3e3ba1e6e29ce2bf7dcd9ec368578f3f3d7 (patch) | |
tree | 5ec3967e190bbeba0c2ab7e8e86b3f45ba20c19a /sys/arch/vax/conf/Makefile.vax | |
parent | 4ad0571c604526a0bb64f7b2d6e62d9ac8366227 (diff) |
Introduce option DDB_STRUCT. Kernels compiled with this option (except on
a few arches where toolchain limitations apply) will embed some symbolic
information about the various structs used within the kernel, and have
new ddb commands allowing struct display and some useful information
gathering. Kernel rodata increase varies accross platforms from ~150KB to
~300KB.
This option is not enabled by default.
Diffstat (limited to 'sys/arch/vax/conf/Makefile.vax')
-rw-r--r-- | sys/arch/vax/conf/Makefile.vax | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/sys/arch/vax/conf/Makefile.vax b/sys/arch/vax/conf/Makefile.vax index ca1b279da76..11e75ab8abd 100644 --- a/sys/arch/vax/conf/Makefile.vax +++ b/sys/arch/vax/conf/Makefile.vax @@ -1,4 +1,4 @@ -# $OpenBSD: Makefile.vax,v 1.33 2009/01/11 21:02:03 pirofti Exp $ +# $OpenBSD: Makefile.vax,v 1.34 2009/08/09 23:04:49 miod Exp $ # $NetBSD: Makefile.vax,v 1.49 1999/07/26 05:20:49 cgd Exp $ # Makefile for OpenBSD/vax @@ -77,6 +77,12 @@ AFLAGS= -x assembler-with-cpp -traditional-cpp -D_LOCORE LINKFLAGS= -N -Ttext 80000000 -e start STRIPFLAGS= -d +.if ${IDENT:M-DDDB_STRUCT} +DB_STRUCTINFO= db_structinfo.h +.else +DB_STRUCTINFO= +.endif + HOSTED_CC= ${CC} HOSTED_CPPFLAGS=${CPPFLAGS:S/^-nostdinc$//} HOSTED_CFLAGS= ${CFLAGS} @@ -141,7 +147,7 @@ newvers: ${SYSTEM_DEP} ${SYSTEM_SWAP_DEP} clean:: cleankernel cleankernel: rm -f eddep *bsd bsd.gdb tags *.[io] [a-z]*.s \ - [Ee]rrs linterrs makelinks assym.h + [Ee]rrs linterrs makelinks assym.h ${DB_STRUCTINFO} lint: @lint -hbxncez -Dvolatile= ${CPPFLAGS} -UKGDB \ @@ -164,7 +170,7 @@ SRCS= ${VAX}/vax/intvec.s ${VAX}/vax/subr.s \ param.c ioconf.c ${CFILES} ${SFILES} depend:: .depend -.depend: ${SRCS} assym.h param.c +.depend: ${SRCS} assym.h param.c ${DB_STRUCTINFO} ${MKDEP} ${AFLAGS} ${CPPFLAGS} ${VAX}/vax/intvec.s ${VAX}/vax/subr.s ${MKDEP} -a ${CFLAGS} ${CPPFLAGS} param.c ioconf.c ${CFILES} ${MKDEP} -a ${AFLAGS} ${CPPFLAGS} ${SFILES} @@ -174,6 +180,11 @@ depend:: .depend < assym.dep >> .depend @rm -f assym.dep +db_structinfo.h: $S/ddb/db_structinfo.c $S/ddb/parse_structinfo.awk + ${CC} ${CFLAGS} ${CPPFLAGS} -gstabs -c $S/ddb/db_structinfo.c + objdump -g db_structinfo.o | awk -f $S/ddb/parse_structinfo.awk > $@ + rm -f db_structinfo.o + # depend on root or device configuration autoconf.o conf.o: Makefile |