[patch] bsdbox changes for base system: add LOCAL_

Adrian Chadd adrian at freebsd.org
Sat Dec 24 00:42:08 UTC 2011


Hi,

Here are two patches which implement some useful features for crunch building:

* Add LOCAL_TOOLS_DIR in src/Makefile.inc1, which adds entries to the
'build-tools' target. This is needed for cross-building bsdbox (and
any external directory added by LOCAL_DIRS)
* If CRUNCH_SUPPRESS_ALL_LINKS is set to 'yes', don't auto-populate
the crunch-gen hard links.

I may end up changing the latter to CRUNCH_GENERATE_LINKS and default
that to yes, then allow the bsdbox build system to change that to
'no', but the intent is the same.

I'd like to commit this tomorrow if possible, so I can then follow it
up with the bsdbox import.

Thanks,


Adrian

[adrian at pcbsd-macvm] ~/work/freebsd/head/src> svn diff Makefile.inc1 share/mk
Index: Makefile.inc1
===================================================================
--- Makefile.inc1       (revision 228757)
+++ Makefile.inc1       (working copy)
@@ -15,6 +15,8 @@
 #      -DNO_WWWUPDATE do not update www in ${MAKE} update
 #      -DNO_CTF do not run the DTrace CTF conversion tools on built objects
 #      LOCAL_DIRS="list of dirs" to add additional dirs to the SUBDIR list
+#      LOCAL_TOOL_DIRS="list of dirs" to add additional dirs to the build-tools
+#          list
 #      TARGET="machine" to crossbuild world for a different machine type
 #      TARGET_ARCH= may be required when a TARGET supports multiple endians

@@ -104,6 +106,8 @@
 CLEANDIR=      cleandir
 .endif

+LOCAL_TOOL_DIRS?=      ''
+
 CVS?=          cvs
 CVSFLAGS?=     -A -P -d -I!
 SVN?=          svn
@@ -1102,6 +1106,7 @@
     bin/csh \
     bin/sh \
     ${_rescue} \
+    ${LOCAL_TOOL_DIRS} \
     lib/ncurses/ncurses \
     lib/ncurses/ncursesw \
     ${_share} \
Index: share/mk/bsd.crunchgen.mk
===================================================================
--- share/mk/bsd.crunchgen.mk   (revision 228757)
+++ share/mk/bsd.crunchgen.mk   (working copy)
@@ -22,6 +22,8 @@
 # Specific links can be suppressed by setting
 # CRUNCH_SUPPRESS_LINK_$(NAME) to 1.
 #
+# If CRUNCH_SUPPRESS_ALL_LINKS is set to yes, no links will be generated.
+#

 # $FreeBSD$

@@ -39,6 +41,7 @@
 .else
 CANONICALOBJDIR:= /usr/obj${.CURDIR}
 .endif
+CRUNCH_SUPPRESS_ALL_LINKS?=    no

 CLEANFILES+= $(CONF) *.o *.lo *.c *.mk *.cache *.a *.h

@@ -51,6 +54,7 @@
 .else
 $(OUTPUTS): $(.CURDIR)/../../$(D)/$(P)/Makefile
 .endif
+.if ${CRUNCH_SUPPRESS_ALL_LINKS} != "yes"
 .ifndef CRUNCH_SUPPRESS_LINK_${P}
 LINKS+= $(BINDIR)/$(PROG) $(BINDIR)/$(P)
 .endif
@@ -59,6 +63,7 @@
 LINKS+= $(BINDIR)/$(PROG) $(BINDIR)/$(A)
 .endif
 .endfor
+.endif
 .endfor
 .endfor


More information about the freebsd-current mailing list