localedef - Fix buildworld bootstrapping issue master
authorMatthew Dillon <dillon@apollo.backplane.com>
Wed, 29 Jul 2015 03:28:05 +0000 (20:28 -0700)
committerMatthew Dillon <dillon@apollo.backplane.com>
Wed, 29 Jul 2015 03:28:05 +0000 (20:28 -0700)
* When running buildworld on an older system the localedef built in
  BTOOLS using /usr/include/limits.h will fail building the locales.

* Fix the problem by adding localedef to CTOOLS.

* Also fix a problem where the old limits.h defines COLL_WEIGHTS_MAX as 0
  and breaks the building of localedef itself.  Check for the case in
  collate.c.

Makefile.inc1
usr.bin/localedef/collate.c

index fcc48b5..75ea52d 100644 (file)
@@ -945,6 +945,7 @@ _btxld=     usr.sbin/btxld
 
 CTOOLSDIRS= ${_btxld} ${_binutils} \
                usr.bin/objformat usr.bin/crunch/crunchide \
+               usr.bin/localedef \
                ${_gcc_common_cross} \
                ${_gcc47_cross} ${_gcc50_cross} ${_custom_cross}
 
index c635e6f..af43ade 100644 (file)
 #include "avl.h"
 
 /*
+ * Work around buildworld bootstrapping from older systems whos limits.h
+ * sets COLL_WEIGHTS_MAX to 0.
+ */
+#if COLL_WEIGHTS_MAX == 0
+#undef COLL_WEIGHTS_MAX
+#define COLL_WEIGHTS_MAX 10
+#endif
+
+/*
  * Design notes.
  *
  * It will be extremely helpful to the reader if they have access to