Commit Graph

855 Commits

Author SHA1 Message Date
tv
d00721de07 :U can't be used to test for existence, as the variable may contain an
arbitrary value; change back to .if !defined().  Problem noted by
bernd@arresum.inka.de in PR toolchain/14629.
2001-11-20 17:12:22 +00:00
kleink
e1deb16aa0 NLS is commonly expanded to Native Language Support, not National Language
Support.
2001-11-19 16:20:26 +00:00
perry
550b1df8d6 replace instances of ln with ${INSTALL_LINK} and ${INSTALL_SYMLINK} 2001-11-19 04:46:07 +00:00
perry
5fdc9f9a85 document/rename UNPRIVED 2001-11-19 04:45:06 +00:00
perry
77bd523e70 Snapshot of some things for builds as non-root -- work in progress:
0) rename UNPRIVILEGED UNPRIVED. It was too long. We'll argue about if
   we should replace it with yet something else later. It currently
   logs metadata by default. We'll argue more about that later too.
1) create a _SRC_TOP_OBJ_ variable pointing at the /usr/src objdir so
   we know where to dump metadata.
2) Add a METALOG variable pointing at the default location for the
   metadata log. (This may be moved or renamed -- the location is just
   for testing.)
3) Add a HOST_INSTALL_FILE used in host tools Makefiles instead of
   INSTALL_FILE, which doesn't include ${INSTPRIV} (i.e -U -M ${METALOG})
4) Add INSTALL_LINK, INSTALL_SYMLINK for use in other .mk files so we
   can get rid of explicit uses of ln. Slightly clean up INSTALL_FILE.
2001-11-19 04:44:32 +00:00
thorpej
8bfeb9a270 Use a little transitional hack to determine if we use -isystem
or -idirafter.  Use the former only of USE_NEW_TOOLCHAIN, since
-isystem causes the old toolchain to bomb out when building
libstdc++.
2001-11-19 02:46:50 +00:00
bjh21
dbd735b9b1 Need bsd.sys.mk for the GROFF definition in the non-USETOOLS case. 2001-11-18 15:11:25 +00:00
thorpej
72915508bb Protect from multiple inclusion. 2001-11-17 22:55:24 +00:00
thorpej
b78cf94ba5 Make sure MKDEP is defined for the non-USETOOLS case. 2001-11-17 22:48:48 +00:00
thorpej
c08a9b5abe Need bsd.sys.mk for the GROFF definition in the non-USETOOLS case. 2001-11-17 20:38:45 +00:00
atatat
04faedd073 Add OBJDUMP to the toolchain list. 2001-11-15 21:43:54 +00:00
tv
42423ab0f9 Make it possible to warn about platforms that are not yet switched to the
new toolchain.
2001-11-15 19:24:07 +00:00
wiz
dd7622f812 It's called nbmakeinfo now, not makeinfo. 2001-11-15 13:05:35 +00:00
wiz
012e08cda6 Re-add check for defined(MKSOFTFLOAT) that got lost in v1.60.
Needed for Makefiles which include bsd.sys.mk, but not bsd.own.mk,
like distrib/macppc/floppies/ramdisk/Makefile.
Okay'd by simonb.
2001-11-15 12:15:09 +00:00
tv
6699960dbf C/..$/.c/ -> C/\..$/.c/ 2001-11-14 23:06:26 +00:00
tv
5e32db9d70 Remove SHAREDSTRINGS logic for host programs; this is unnecessary here. 2001-11-14 23:03:06 +00:00
tv
6c2c072164 Turn off host-specific objdirs by default. Set MKHOSTOBJ=yes to enable. 2001-11-14 22:29:23 +00:00
tv
d21f3d4a13 Prefix all target-specific things with `${MACHINE_GNU_PLATFORM}-'.
Prefix all non-target-specific things with `nb'.
2001-11-14 22:13:39 +00:00
tv
a9c913616b Put -Is in CPPFLAGS, not CFLAGS; change -I to -isystem as appropriate. 2001-11-14 22:01:40 +00:00
tv
c8c3cf578b Move the DESTDIR-based nostdinc logic to bsd.lib.mk and bsd.prog.mk where
it belongs (with the native target compile rules).
2001-11-14 21:49:53 +00:00
thorpej
f01d91b750 If MACHINE_ARCH == arm, set USE_NEW_TOOLCHAIN=yes and OBJECT_FMT=ELF.
It is infeasible for some ARM ports to use anything but ELF/new-toolchain,
and this allows for the ARM ports that aren't ready for ELF to stay at
MACHINE_ARCH == arm32 until they're ready.  The rest of the ARM ports
have a userbase such that if a flag day happens with the compiler (there
are a couple of ABI issues still being discussed), that it won't matter
so much.

Discussed with Ben Harris, Matt Thomas, and Chris Gilbert.
2001-11-14 19:46:38 +00:00
tv
23b305bcfa * Use -isystem instead of -idirafter for ${DESTDIR}/usr/include.
* Provide defaults for HOST_AR and HOST_RANLIB.
* Formatting cleanup.
2001-11-13 20:25:38 +00:00
tv
0b806103d9 "${FOO}" -> ${FOO:Q} 2001-11-13 17:37:03 +00:00
tv
25c34dba0d Move host program overrides of INSTALL and MKDEP to <bsd.hostprog.mk>. 2001-11-13 17:36:14 +00:00
tv
b5cd2489b2 Major overhaul of src/tools and host toolchain. Summary of changes:
* Rewrite src/tools Make logic to work like the rest of the tree wrt
  "dependall" and "install".  The old "make build" hack is gone.

* Remove the MKTOOLS logic.  This was linked to the "make build" hack,
  and was only needed because TOOLDIR originally had no writable default.

* Redo the GNU configure/make logic to make it fit reasonably in a
  BSD make wrapper.  Use new ${.ALLTARGETS} variable to scan for
  targets in $(srcdir), and mark them with .MADE: to prevent rebuilding.

* Only build cross tools in src/tools; remove some messy logic in
  src/usr.* and src/gnu/usr.* that would do target filename rewriting
  (improves consistency and readability).

* Add the ability to build cross gdb at tool build time by setting
  MKCROSSGDB (default no) to "yes" in mk.conf.

* Add src/tools/groff and set up paths to work with this cross groff.
2001-11-12 23:16:17 +00:00
tv
7745da0f1c Set CFLAGS and CPPFLAGS for the benefit of <bsd.dep.mk>, and move the
inclusion of <bsd.sys.mk> to the top to get defaults.  (Dependency handling
needs a cleanup, and will get one soon....)
2001-11-12 22:06:41 +00:00
tv
300ea65311 MAKEFLAGS isn't accessible from a conditional during parse; use .MAKEFLAGS
instead.
2001-11-12 20:11:21 +00:00
tv
d35dc81716 "true" doesn't output anything; use "echo" instead. 2001-11-12 20:05:15 +00:00
tv
84935b4037 Make PRINTOBJDIR use "${MAKE} -V .OBJDIR" so it will work correctly with
<bsd.obj.mk> rewrites of ${.OBJDIR}.  Add a failsafe (checking for the
-V option in MAKEFLAGS) to prevent infinite recursion.
2001-11-12 20:03:44 +00:00
tv
777bc9f06a Use ${__curdir} consistently. 2001-11-12 18:49:12 +00:00
tv
c2c66c6e5c Also handle the USR_OBJMACHINE case for OBJHOSTMACHINE. 2001-11-11 23:22:19 +00:00
tv
2e00400b7f Affix the ${HOST_OSTYPE} info to the end of the objdir name if OBJMACHINE
is set (and MAKEOBJDIR[PREFIX] is not in use).  This permits multiple hosts
to compile hostprogs (not just src/tools) for a given target without
colliding with each other.

Currently restricted only to new toolchain builds, as this requires a new
make(1) in order to function properly.
2001-11-11 23:19:14 +00:00
tv
e7e8f27d5f Fix variable concatenation in previous. 2001-11-11 23:07:26 +00:00
tv
fcc9c62259 Make the BSDSRCDIR/BSDOBJDIR symlink based objdir system work for the top
source directory.  This will use BSDOBJDIR of OBJMACHINE is unset, and will
create a directory '.MACHINE' inside BSDOBJDIR if OBJMACHINE is set.

MAKEOBJDIR and MAKEOBJDIRPREFIX based objdirs already cope with the top
level directory just fine.
2001-11-11 22:39:23 +00:00
tv
80d11d2c09 Provide defaults for MDSETIMAGE and CRUNCHGEN. 2001-11-11 21:41:00 +00:00
thorpej
73f86f9fe4 Add a DBSYM variable for the dbsym(8) host tool. 2001-11-09 07:30:55 +00:00
tv
4fe26460e9 Remove dependency on NLSDIR entirely, now that it's not auto-created. 2001-11-06 16:20:16 +00:00
lukem
20960db1bf Don't create missing NLS directories; require them to already exist
(by updating etc/mtree/NetBSD.dist as necessary).
`nlsinstall' is now in line with other *install targets.
2001-11-06 10:59:15 +00:00
tv
e239fff11b Extend the use of NEED_OWN_INSTALL_TARGET (used by bsd.pkg.mk since its
creation, to exclude conflicting make targets from botching pkgsrc), to
avoid defining INSTALL_FILE.  pkgsrc is self-contained except for
<bsd.own.mk>, so this doesn't have an adverse effect on real <bsd.*.mk>
build trees.
2001-11-05 19:45:25 +00:00
thorpej
5f6d116c46 Switch PowerPC to the new toolchain. 2001-11-04 01:36:18 +00:00
enami
97ab45c39d Don't try to build nonexistent compressed man page. 2001-11-04 00:30:52 +00:00
thorpej
fd329b8dd0 Fix typo in previous. 2001-11-03 20:46:25 +00:00
thorpej
b437f0975b Switch NetBSD/sparc to the new toolchain. 2001-11-03 20:26:56 +00:00
tv
0812154e48 Use INSTALL_FILE/INSTALL_DIR as appropriate. 2001-11-02 18:10:00 +00:00
simonb
7d1f940ec6 Set installed library mode correctly in UNPRIVILEGED case. 2001-11-02 07:25:58 +00:00
tv
1129ed4afe Improve readability and reduce redundant redundancy in share/mk; add some
descriptive comments.  The guts of hostprog, lib, and prog are mostly
unchanged; this will be done in another pass.

Make several things work properly with UNPRIVILEGED set, and make the
install-time "cmp" logic work for MANZ.  Also reimplement INCS{DIR,NAME}_foo
(requested by wiz) in a backwards compatible way.

Reviewed by christos.
2001-11-02 05:21:47 +00:00
lukem
2d79659157 move -Wwrite-strings to WARNS=3 too ... (yech!) 2001-11-01 07:27:35 +00:00
lukem
0e643f61a5 Move -Wcast-qual from WARNS=2 to WARNS=3 (a new level), because it
generates too many false positives that require gross amounts of
workaround, and the other WARNS=2 stuff is quite useful. Per discussion
with simonb & christos.
2001-11-01 07:17:17 +00:00
tv
a988fe0a8a Revert previous. src/include depends on the ability of <bsd.inc.mk> to
provide things to INCS with / in them.  Since nothing in-tree yet uses
INCS{DIR,NAME}_filename, this is not a loss at the moment.
2001-10-31 21:15:41 +00:00
tv
61be23b431 * Create a variable HOST_OSTYPE that represents the host build environment,
using `uname -s`-`uname -r`-`uname -p || uname -m`.  This can be overridden
  in mk.conf or the environment, and is used by host tools to ensure that
  build hosts do not clobber each other.

* Now that there's an objdir in src/tools, make a default TOOLDIR by creating
  "tools.${HOST_OSTYPE}" in the objdir (if it exists) of src/tools.  This
  means that TOOLDIR is no longer required to be set in a build, though it
  still may be set manually if desired.

* Set MKTOOLS to "yes" by default, since the default TOOLDIR is now located
  in a known mutable location.  This may still be set manually if desired.
2001-10-31 17:46:08 +00:00