Commit Graph

635 Commits

Author SHA1 Message Date
Yaroslav Tykhiy
c93073c260 - Explicitly verify if all needed libs were found by ldd(1). Do so
through scanning its output as ldd(1) returns a non-zero status only
  for really abnormal conditions such as an improper file format.
  Now cp(1) won't get bogus "not" and "found" arguments if a lib
  is missing. [1]

- Don't guess if an element of a complex pipeline is assigned to the main
  shell or a sub-shell.  Namely use stdio, not vars, to pass lists out from
  loops.  If using vars, there's the risk that a loop will run in a sub-shell
  and the list won't make it to the main shell.  It appears that braces and
  parens give only limited control over the issue while stdio always works
  as intended.  Apply this solution to both $progs and $libs for consistency,
  although I've failed to go without it only in the $libs part.

Requested by:	emaste [1]
2007-12-04 12:55:27 +00:00
Yaroslav Tykhiy
519bc416ca Decouple the install tools from the main system as much as possible.
I.e., not only copy them to a scratch dir, but also make them use saved
copies of libraries and locale files.  That gives us several benefits:

1) ABI breakages should no longer affect installworld over the live system.

2) It becomes safe to run installworld while still running the old kernel.
   However, it can be reasonable to save the old /rescue before that to be
   able to run the old reboot(8), as the new binaries are rather likely to
   fail with the old kernel.  Anyhow, it's now possible to upgrade a system
   in a single reboot _reliably_.

3) With a bit of hackery around rtld(8), it becomes possible to do destructive
   cross-installs, e.g., i386->amd64 over the live system.

The only shared item left between the old and new systems is rtld(8),
which cannot be run from a saved copy easily because its full
pathname is stored in the respective field of each ELF executable.
(In theory, that field could be overridden, e.g., from the environment,
but this can lead to security issues.)  That's why a destructive
cross-install isn't possible w/o hackery yet.

Fruitful ideas by:	ru
Reviewed by:		ru
Tested with:		audit(4)
2007-10-31 09:26:42 +00:00
Ed Maste
1602894ecf If a required install tool is missing, provide a more friendly error
message (instead of cp's usage info).
2007-10-15 13:50:46 +00:00
David E. O'Brien
946367b8e2 Tweak the handling of "WITHOUT_LIBPTHREAD". Also remove the accidental
treatment of 'LIBKSE' as an "old style" knob.

Submitted by:	ru
Approved by:	re(kensmith)
2007-10-09 23:31:11 +00:00
David E. O'Brien
65c045e964 Repo copy libpthreads to libkse.
This introduces the WITHOUT_LIBKSE nob,
and changes WITHOUT_LIBPTHREADS to mean with neither threading libs.
Approved by:	re(kensmith)
2007-10-09 13:42:34 +00:00
Ruslan Ermilov
2d79741969 Revise the list of directories we manually create under
${WORLDTMP} and ${LIB32TMP}; some of them are no longer
needed, and some were never needed.

Approved by:	re (kensmith)
2007-10-01 18:24:46 +00:00
Ruslan Ermilov
152f2a4a96 Always install libpthread.* symlinks if at least one of
the threading libraries is built.  This simplifies the
logic in makefiles that need to check if the pthreads
support is present.  It also fixes a bug where we would
build a threading library that we shouldn't have built:
for example, building with WITHOUT_LIBTHR and the default
value of DEFAULT_THREADING_LIB (libthr) would mistakenly
build the libthr library, but not install it.

Approved by:	re (kensmith)
2007-10-01 18:22:32 +00:00
Xin LI
5224b41a98 Add sed(1) to cross tools. We do want newly built version during
buildworld.

Approved by:	re (rwatson)
2007-07-10 10:17:32 +00:00
Ruslan Ermilov
a1cdbf3265 lex(1) no longer installs headers into GCC-internal dirs
(since src/usr.bin/lex/Makefile,v 1.20).
2007-05-26 20:17:19 +00:00
Dag-Erling Smørgrav
98a0900ab4 Revision 1.576 removed too much. I didn't notice because my /usr is on
ZFS, which doesn't support flags...
2007-05-19 20:34:29 +00:00
Alexander Kabaev
25a362d725 GCC will now properly link libc with all shared objects in order to record
their dependency on libc and its versioned symbols. For that to work,
libc needs to be built before any other shared library that might depend
on it. Add necessary glue to make that happen.
2007-05-19 03:34:59 +00:00
Dag-Erling Smørgrav
f27f825839 Don't use a subshell where it isn't needed.
Noticed by:	John E Hein <jhein@timing.com>
2007-05-16 20:16:06 +00:00
Dag-Erling Smørgrav
32cd239bbd Expose all of {check,delete}-old{,-dirs,-files,-libs}.
MFC after:	3 weeks
2007-05-16 08:46:35 +00:00
Dag-Erling Smørgrav
84478d58d1 Remove stray comment which broke delete-old-dirs. 2007-05-16 08:39:46 +00:00
Dag-Erling Smørgrav
d1e75b81e3 Partially revert the check-old / delete-old modifications to clarify the
logic.

Apply similar modifications to {check,delete}-old-dirs, which I had
overlooked.
2007-05-16 08:37:40 +00:00
Dag-Erling Smørgrav
ca224410bc Restore previous behaviour of aborting delete-old* if rm failed.
Pointed out by:	netchild
MFC after:	3 weeks
2007-05-14 14:41:52 +00:00
Dag-Erling Smørgrav
61305271cd Greatly speed up {check,delete}-old* by replacing make loops with sh loops.
MFC after:	3 weeks
2007-05-13 18:15:50 +00:00
Daniel Eischen
00fb440c1a Enable symbol versioning by default. Use WITHOUT_SYMVER to disable it.
Warning, after symbol versioning is enabled, going back is not easy
(use WITHOUT_SYMVER at your own risk).

Change the default thread library to libthr.

There most likely still needs to be a version bump for at least the
thread libraries.  If necessary, this will happen later.
2007-05-13 14:12:40 +00:00
Pawel Jakub Dawidek
1c22c47c35 Link libzpool, ztest and zdb against libpthread.
Requested by:	ru
2007-04-17 15:52:37 +00:00
Pawel Jakub Dawidek
ceef0c312c Connect ZFS to the build. 2007-04-06 02:13:30 +00:00
Rong-En Fan
31b4134f7b Enable ncurses wide character support
Approved by:	delphij (mentor)
Tested by:	kris on pointyhat (early version), current@
2007-03-09 12:11:58 +00:00
Ruslan Ermilov
857be7a47c Bump the bootstrapping requirements for gensnmptree(1) and remove
a note in UPDATING that tried to work around the build breakage.

Tested by:	jhb
OK'ed by:	njl
2007-03-01 15:42:23 +00:00
Ruslan Ermilov
51804c7973 Resurrect one of the patches from attic and refine the
lib32 build somewhat.  Specifically, instead of spamming
${CC} et al with -I${LIB32TMP}/usr/include which can be
harmful (as has been demonstrated by the ncursesw WIP),
use slightly different approach to achieve the same goal.
This also simplifies things a bit.

Prodded by:	rafan
2007-02-28 20:06:21 +00:00
Dag-Erling Smørgrav
9c827cecbd Clean the lib32 object directory with cleandir rather than rm -rf.
Discussed with:	ru
MFC after:	2 weeks
2007-02-27 13:02:29 +00:00
Rong-En Fan
af5b5a0f15 Switch to new ncurses build glue
Approved by:	delphij
2007-01-20 07:48:10 +00:00
Ruslan Ermilov
638b0a3e1a There was a timeframe where crunchgen(1) was broken; force
an upgrade during the build so those who are affected can
build world again.
2006-11-27 19:38:28 +00:00
Ruslan Ermilov
87b8c12df5 There doesn't seem to be a real reason for include/ to be installed
so early.
2006-11-13 05:52:11 +00:00
John Birrell
61517751a7 Add sun4v to the TARGET_ARCH when just TARGET is set (like pc98 is done).
This is required for 'make universe'.
2006-10-16 22:18:13 +00:00
Kip Macy
ddd5342909 buildworld fixes for sun4v
not sure why pmap.c is included as it is unchanged

Approved by: rwatson (mentor)
Reviewed by: jmg
2006-10-09 04:58:45 +00:00
Ruslan Ermilov
49e62f1cb3 Shuffle _*_libs assigments (no functional changes). 2006-10-07 19:26:46 +00:00
Ruslan Ermilov
b193556269 - Prebuild libgssapi only if building with Kerberos support.
- Remove libnetgraph from the list of prebuilt libraries as
  no other library depends on it (snmp_netgraph.so does not
  count as we don't build it in the "libraries" target).

- Restore libssh dependencies when compiling with Kerberos
  support.
2006-10-07 18:34:08 +00:00
Ruslan Ermilov
89edd7e555 Previous revision wasn't enough for "make TARGET=<machine> build*"
to work.  Some build-tools that are part of cross-tools (cc_tools)
also need to know the proper values of TARGET_ARCH and TARGET, so
tell them.
2006-09-08 10:09:02 +00:00
Ruslan Ermilov
0f31538c9d While experimenting with cross-building by specifying just TARGET,
I found one bug.  Pass our idea of TARGET_ARCH and TARGET down to
XMAKE, the cross-tools make.  Previously it worked because usually
TARGET_ARCH was specified on the initial make's command line.
This should also allow us to simplify the "universe" target, which
I'm currently testing.
2006-09-07 20:27:56 +00:00
Ruslan Ermilov
d2f03ebb1a Added timestamping to buildworld, similar to buildkernel. 2006-09-07 19:36:16 +00:00
Ruslan Ermilov
e6cb78fbd4 - Rewrite logic to guess TARGET_ARCH/TARGET to be more readable,
but without changes in behavior.

- Add sanity checking for TARGET_ARCH/TARGET.
2006-09-07 16:41:30 +00:00
Warner Losh
ffbebdce7f make "make TARGET=foo" work correctly. Before, it would fail to set
TARGET_ARCH correctly.  Now it does, even for pc98.  We should suggest
TARGET=foo in preference to TARGET_ARCH because the former is
unambiguous and the latter isn't, so update the docs.

This means that a long standing gripe I've had with this comes to a
close.  I can build pc98 w/o specify both things.  make TARGET=arm
works (rather than trying to build a arm:amd64 image and dying badly
in the attempt).

If you specify only TARGET_ARCH, then you get the old behavior.

# we can likely simplify the UNIVERSE target now to use this, but I'm not
# up for breaking that tonight :-).

# We should consider adding some kind of sanity check for TARGET_ARCH
# and TARGET.
2006-09-07 07:37:16 +00:00
Warner Losh
1bb2049ec1 Always make obj when building the libraries. This never hurts, and
helps some cross-architecture building tool installation patches that
I'm developing.
2006-08-24 17:02:26 +00:00
Ruslan Ermilov
2b46c64c9c Remove alpha left-overs. 2006-08-22 08:03:01 +00:00
Alexander Leidinger
c49d3a7d07 Remove sade from build-tools, the tinderbox problem should be fixed now. 2006-08-09 11:03:06 +00:00
Yoshihiro Takahashi
2d0fba0551 Add the sade to build-tools list. This fixes a tinderbox. 2006-08-09 02:27:31 +00:00
Alexander Leidinger
dad9051355 Fix doxygen target.
Submitted by:	"Alexander Mogilny" <sg@astral.ntu-kpi.kiev.ua>
Pointy hat to:	netchild
2006-08-02 15:26:15 +00:00
Warner Losh
6f13c7adde Also need to quote values so they can be passed on correctly. 2006-06-06 18:07:58 +00:00
Warner Losh
621e4ae168 Create a new target 'buildenvvars'. This target reports the build
environment for cross building (the same one you'd get interactively
in make buildenv).  This cannot be a simple

        make -f Makefile.inc1 -V WMAKEENV

because in PATH is not set correctly unless one takes a trip through
the Makefile/Makefile.inc1 indirection, the logic of which is too
large to reproduce outside of Makefiles.
2006-06-06 16:24:54 +00:00
Alexander Leidinger
becc5c626d Connect the kernel subsystem API documentation generation framework to
the build infrastructure: "make doxygen"

Changes to the man pages will be made when some defaults are revisited.

Requested by:	gnn
2006-05-26 18:10:06 +00:00
Poul-Henning Kamp
f6ce2a64f7 Send the pcvt(4) driver off to retirement. 2006-05-17 09:33:15 +00:00
Ruslan Ermilov
d6acfaf5e6 Sort bootstrap-tools entries. 2006-03-31 14:10:35 +00:00
Ruslan Ermilov
03e21a94e4 Rebuild gensnmptree(1) on 700014 systems too. While 700014 corresponds
to post January 26 systems where gensnmptree(1) code was already fixed,
there was a timeframe between February 14 and February 27 when
usr.sbin/bsnmpd/ including gensnmptree was disconnected from build, so
if you upgraded in this timeframe, you ended up with the 700014 system
but still with a buggy gensnmptree binary.  This also means not being
able to buildworld now.

Reported by:	jhb
Attention:	harti, keramida
2006-03-30 13:50:48 +00:00
Ruslan Ermilov
cea557add0 Extend coverage of the MK_IPX build option to the following:
- <netipx> headers [1]
- IPX library (libipx)
- IPX support in ifconfig(8)
- IPXrouted(8)
- new MK_NCP option

New MK_NCP build option controls:

- <netncp> and <fs/nwfs> headers
- NCP library (libncp)
- ncplist(1) and ncplogin(1)
- mount_nwfs(8)
- ncp and nwfs kernel modules

User knobs: WITHOUT_IPX, WITHOUT_IPX_SUPPORT, WITHOUT_NCP.

[1] <netsmb/netbios.h> unconditionally uses <netipx> headers
so they are still installed.  This needs to be dealt with.
2006-03-20 14:24:58 +00:00
Maxime Henrion
ca404c7dca Change the default SUP command to use csup instead of CVSup for
"make update" when SUP_UPDATE is defined.
2006-03-19 15:36:56 +00:00
Ruslan Ermilov
5740a2b62d Convert NO_PROFILE and NO_LIB32 to new style. 2006-03-18 21:37:05 +00:00
Ruslan Ermilov
c3ed02cf4f Add the new "showconfig" target that displays build configuration.
Suggested by:	phk
2006-03-18 14:30:23 +00:00
Ruslan Ermilov
e1fe3dba5c Reimplementation of world/kernel build options. For details, see:
http://lists.freebsd.org/pipermail/freebsd-current/2006-March/061725.html

The src.conf(5) manpage is to follow in a few days.

Brought to you by:	imp, jhb, kris, phk, ru (all bugs are mine)
2006-03-17 18:54:44 +00:00
Ruslan Ermilov
6cb9d90a51 When building for pc98, don't create stray objects in the
usr.sbin/pcvt/keycap source directory.

Found by:	phk
MFC after:	3 days
2006-03-16 07:31:50 +00:00
Giorgos Keramidas
00602d0926 After revision 1.4 of `src/usr.sbin/bsnmpd/bsnmpd/Makefile' the
gensnmptree utility is required at "make depend" time, because it
is used to generate `oid.h' for bsnmpd.

This means that all versions of HEAD before 2004/01/23 16:22:49 need
gensnmptree as a bootstrap util when it's not already installed as
part of the base system.  The first __FreeBSD_version that we can
assume this can work is 700014 which happened after the gensnmptree
change (in -r 1.263 of `src/sys/sys/param.h', at 2006/02/17 14:14:15).

For __FreeBSD_version values before 700014 add gensnmptree to the
bootstrap tools, to allow upgrades from versions of FreeBSD before
that date.

Approved by:	ru, harti
2006-03-09 12:55:02 +00:00
Ruslan Ermilov
e8a71dcc2f Detect that the "audit" group is missing earlier during install. 2006-02-27 09:17:39 +00:00
Alexander Leidinger
8a32134cdd A file can also be a link, so check not only for a file, but also for a link
in the delete-old and check-old targets.

We don't install a lib (libXY.so.Z) as a link, but an user may have created
something like this. This is dangerous if this link points to a different
version of the lib. So check for a link also in the *-lib targets (an
annoyed user which absolutely wants this redirection of a lib should use
libmap.conf instead of a link).

A directory can also be a link, but in this case just echo a message to
remove it by hand.
2006-02-18 16:58:21 +00:00
Doug Rabson
38311499cc Revert the previous change - the lib32 build should work now. 2006-01-02 17:52:16 +00:00
Doug Rabson
29af427b83 Temporarily disable the kerberos5 lib32 build while I try to fix it
properly.
2006-01-02 10:03:35 +00:00
Doug Rabson
c0b9f4fe65 Add a new extensible GSS-API layer which can support GSS-API plugins,
similar the the Solaris implementation. Repackage the krb5 GSS mechanism
as a plugin library for the new implementation. This also includes a
comprehensive set of manpages for the GSS-API functions with text mostly
taken from the RFC.

Reviewed by: Love Hörnquist Åstrand <lha@it.su.se>, ru (build system), des (openssh parts)
2005-12-29 14:40:22 +00:00
David E. O'Brien
667d8d10c7 Use cross-compile friendly spelling of CPUTYPE.
Submitted by:	ru
2005-12-07 22:55:29 +00:00
Ruslan Ermilov
620b3a0c1d Style, no functional changes. 2005-12-07 20:01:12 +00:00
David E. O'Brien
21c4855ebe SSE2 comes thru the users choice of CPUTYPE. 2005-12-07 17:42:27 +00:00
David E. O'Brien
fef891f794 Default to producing 'k8' COMPAT_32BIT bits, but allow override. 2005-12-07 17:41:10 +00:00
Warner Losh
637750b988 Back out my sh -> ${SHELL} change, since it will be a few days before
I can fix it better.

Requested by: ru@
2005-12-06 23:37:11 +00:00
Doug Ambrisko
c26efd485e Switch BUILD_ARCH in Makefile to use uname -p suggested by ru.
Switch strncpy to strlcpy suggested by gad and issue found by pjd.
Add to uname(3) man page describing:
	UNAME_s
	UNAME_r
	UNAME_v
	UNAME_m
Add to getosreldate(3) man page describing:
	OSVERSION

Submitted by:	ru, pjd/gad
Reviewed by:	ru (man pages)
2005-12-03 05:11:07 +00:00
Doug Ambrisko
d630a05f40 Add support to easily build FreeBSD unpacked in a chroot of another
FreeBSD machine.  To do this add the man 1 uname changes to __xuname.c
so we can override the settings it reports.  Add OSVERSION override
to getosreldate.  Finally which Makefile.inc1 to use uname -m instead
of  sysctl -n hw.machine_arch to get the arch. type.

With these change you can put a complete FreeBSD OS image into a
chroot set:
	UNAME_s=FreeBSD
	UNAME_r=4.7-RELEASE
	UNAME_v="FreeBSD $UNAME_r #1: Fri Jul 22 20:32:52 PDT 2005 fake@fake:/usr/obj/usr/src/sys/FAKE"
	UNAME_m=i386
	UNAME_p=i386
	OSVERSION=470000
on an amd64 or i386 and it just work including building ports and using
pkg_add -r etc.  The caveat for this example is that these patches
have to be applied to FreeBSD 4.7 and the uname(1) changes need to
be merged.  This also addresses issue with libtool.

This is usefull for when a build machine has been trashed for an
old release and we want to do a build on a new machine that FreeBSD
4.7 won't run on ...
2005-12-02 00:50:30 +00:00
Warner Losh
d53cdc6c43 In make buildenv, spell sh as ${SHELL}. In this case, we don't want
to hard code /bin/sh since we're forking it for the user to type
commands into.  As such, ${SHELL} is the preferred thing users type
commands into.
2005-12-01 17:08:56 +00:00
Ruslan Ermilov
4b2095e85b Revert revision 1.416 and don't create a hierarchy before installing
a kernel.  It's slower and is generally only applicable to RELENG_4.
2005-11-25 10:12:58 +00:00
Ruslan Ermilov
1580b6c355 Unbreak installworld. 2005-11-22 20:47:43 +00:00
Ruslan Ermilov
0da07b29c3 Get rid of SPECIAL_INSTALLCHECKS variable that isn't settable
by a user.  Instead, add individual checks as dependencies to
the main "installcheck" target.  Make sure that installkernel
etc. depend on it (including the UID/GID checks).
2005-11-22 12:02:41 +00:00
Ruslan Ermilov
05359b9bb5 Fold some common stuff into a macro ${KMAKE}. 2005-11-22 11:31:03 +00:00
Ruslan Ermilov
be174d0cbd Add the NO_INCS knob to bsd.prog.mk and bsd.lib.mk to not include
bsd.incs.mk, and use it when installing 32-bit compat libraries
on amd64.  This causes it to *not* overwrite native headers with
i386 versions, which was the case with <fenv.h> and <vgl.h>.

PR:		amd64/83806
Prodded by:	bde
MFC after:	1 week
2005-11-19 06:45:44 +00:00
Ruslan Ermilov
006846f7ae Speed up stale catpages hunting by not running sed(1) for every catpage. 2005-11-12 19:31:30 +00:00
Ruslan Ermilov
0f8bb094ff Don't check DESTDIR when making distributeworld; the latter expects
DISTDIR.

Reported by:	nyan
2005-11-12 19:28:46 +00:00
Ruslan Ermilov
e4a93f1ef8 Add missing shared library interdependencies. 2005-11-10 18:07:07 +00:00
Ruslan Ermilov
e576df395b Require DESTDIR to be set when installing for a different architecture. 2005-11-07 15:03:04 +00:00
Ruslan Ermilov
6660f1d7c1 Serialize access to the info/dir file; needed for parallel installs.
Reported by:	scottl

I'm not very fond of using the non-standard lockf(1) here, but I
have no better idea at the moment.  NetBSD uses ln(1) to create a
lock file, but this approach can result in a deadlock if make is
interrupted, leaving an orphaned lock file.
2005-11-03 08:56:39 +00:00
Ruslan Ermilov
338953fb3d Force an upgrade to Groff 1.19.2. 2005-10-20 11:22:30 +00:00
Brian Somers
188a72ee1f Fix a couple of typos 2005-08-23 07:58:55 +00:00
Alexander Leidinger
a332ab6c8e Fix the "unexpected operator" bug some people are seeing.
First noticed by:	kris
2005-08-20 09:27:08 +00:00
Alexander Leidinger
edd04c6f2b Remove cat-pages without corresponding man-pages. 2005-08-07 13:47:25 +00:00
Ruslan Ermilov
8dee041406 - clean ${LIB32TMP} in _worldtmp
- clean ${OBJTREE}/lib32 in _cleanobj
- ensure that ${WORLDTMP} exists in build32
2005-08-05 23:48:58 +00:00
Ruslan Ermilov
467610da0d - Remove duplicate setting from LIB32MAKE definition.
- Install lib32 bits using the real install(1) program.
2005-08-03 20:27:06 +00:00
Ruslan Ermilov
c8ef0ed51d Make delete-old* and friends useable for cross-builds. 2005-08-03 20:09:59 +00:00
Alexander Leidinger
1b24254bec - Only make the delete-old related parts visible if one of the 3 targets
are called (wrapped in ".if make(...)"). This may reduce the amount of
  memory needed for all other targets (the file lists are already large
  and they will grow further).
- Be verbose in the batch case of the delete-old part too.
2005-07-30 18:02:20 +00:00
Dag-Erling Smørgrav
77d2ce5d21 Enforce the native environment requirement for {check,delete}-old-* at
run time, not parse time.  This unbreaks cross-builds.

Pointy hat to:	netchild
2005-07-30 06:14:12 +00:00
Alexander Leidinger
af3e19a68c - Move recently added dir into the correct section.
- Add a note about the organisation of the sections.
 - Expand shell globs (they worked in a previous version of the delete-old
   target, but not in this one).
 - Use the correct way of checking for a native environment. [1]
 - Add some more obsolete files.
 - Fix some bad english. [1]

Suggested by:	ru [1]
Approved by:	mentor (joerg)
2005-07-29 21:45:46 +00:00
Dag-Erling Smørgrav
c9275efacc Disable thread support in BIND. It appears to reduce performance rather
than increase it, and seems to be the cause of the memory leaks which some
users have reported.

Requested by:	dougb
MFC after:	5 days
2005-07-25 14:44:11 +00:00
Alexander Leidinger
e2a3608153 Add delete-old and delete-old-libs targets:
- removes obsolete files/dirs or libraries.
  - works in interactive (default) and batch mode
  - respects DISTDIR
  - documented in UPDATING and build(7)

The head of the file ObsoleteFiles.inc contains instructions how to add
obsolete files/dirs/libs to the list. Obviously one should add obsolete
files to this list, when he removes a file/dir/lib from the basesystem.

Additionally add check-old target:
  - allows re@ to check if a file on the obsolete list resurfaces

Design goals:
  - allows full control by the user (default interactive mode)
  - possibility of scripted removal of obsolete files (batch mode)
  - opt-in removal of files (explicit list of files)
  - seperate removal of libs (2 delete targets)

Important design decissions:
  - structured list of files to remove instead of a plain text file:
    * allows to remove additional files if a NO_foo knob is specified
      without the need to change the targets (no NO_foo knob is respected
      yet)
  - not using mtree like NetBSD does:
    * mtree doesn't has an interactive mode

Discussed on:		arch (long ago), current (this year)
Additional input from:	re (hrs)
Approved by:		mentor (joerg)
2005-07-23 14:23:30 +00:00
Ruslan Ermilov
a59f6433d7 Make the `distrib-dirs' target official and working properly
when cross-building (installing).  (This is useful for NFS
installing world/kernel to another architecture machine.)
2005-07-15 14:38:54 +00:00
Alexander Kabaev
2b9fc5e637 Exclude build32 target from the list of toolchain and kernel-toolchain
dependencies. We do not need to build 32bit compat tools to compile
a kernel.

Approved by:	re (scottl)
Reported by:	jhb
2005-07-07 00:58:41 +00:00
Ruslan Ermilov
ece6831d38 Provide 32-bit runtime support on amd64 as a separate distribution, lib32.
Prodded by:	obrien
Nodded by:	peter
Approved by:	re
2005-06-16 18:16:14 +00:00
Ruslan Ermilov
cb1e3c19f0 Allow to override the compiler, linker, and assembler used to build 32-bit
shim libraries on amd64.
2005-06-06 09:39:46 +00:00
Ruslan Ermilov
c0913e73f9 Add install-info to the list of install tools now that we don't
always bootstrap texinfo.

Reported by:	scottl
2005-05-31 04:45:47 +00:00
Ruslan Ermilov
49bf419db0 Stop redundantly rebuilding texinfo on the next __FreeBSD_version bump. 2005-05-23 11:15:16 +00:00
Warner Losh
7d23fba22f Remove lame and ineffectual attempt to fix ipf breakage of tenderbox. 2005-05-01 17:36:09 +00:00
Warner Losh
a4f4bae7f5 Add some subversive code to cleandir: remove the sbin/ipf tree
entirely to fix the tinderbox machine.  This change will be reverted
once the tinderboxen are tindering again.
2005-04-30 16:09:23 +00:00
Peter Wemm
39d2cd6f98 Merge from RELENG_5: invert WITH_LIB32 into NO_LIB32 so that we build the
32 bit libraries by default.  Define NO_LIB32 in make.conf if you do not
want this.
2005-04-06 01:55:43 +00:00
Peter Wemm
6459b7dabc Fix the lib32 build for amd64 after v1.238 of src/include/Makefile (imp).
That change exposed the fact that I'd forgotten to set $MACHINE here.
2005-04-06 01:41:08 +00:00
Ruslan Ermilov
6eb46c30aa Fix AMD64 cross-builds when WITH_LIB32 is defined.
(Initially spotted by kris@ on RELENG_5.)
2005-03-27 19:35:09 +00:00