Commit Graph

530 Commits

Author SHA1 Message Date
netchild
d7398f13f6 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
dfr
70bf8d240b Revert the previous change - the lib32 build should work now. 2006-01-02 17:52:16 +00:00
dfr
5f69a86c73 Temporarily disable the kerberos5 lib32 build while I try to fix it
properly.
2006-01-02 10:03:35 +00:00
dfr
d9cbcb50b5 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
obrien
fe28eb6c3e Use cross-compile friendly spelling of CPUTYPE.
Submitted by:	ru
2005-12-07 22:55:29 +00:00
ru
c77096e7fc Style, no functional changes. 2005-12-07 20:01:12 +00:00
obrien
cdc727ff24 SSE2 comes thru the users choice of CPUTYPE. 2005-12-07 17:42:27 +00:00
obrien
a674eb6914 Default to producing 'k8' COMPAT_32BIT bits, but allow override. 2005-12-07 17:41:10 +00:00
imp
ca8f2294b8 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
ambrisko
51d3b3edd0 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
ambrisko
8420930ca2 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
imp
48ded2c477 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
ru
268d463a3d 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
ru
75d54c3006 Unbreak installworld. 2005-11-22 20:47:43 +00:00
ru
a1506d0e42 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
ru
9ee6c15b32 Fold some common stuff into a macro ${KMAKE}. 2005-11-22 11:31:03 +00:00
ru
93ebc2479a 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
ru
c63892f63a Speed up stale catpages hunting by not running sed(1) for every catpage. 2005-11-12 19:31:30 +00:00
ru
8d4718381d Don't check DESTDIR when making distributeworld; the latter expects
DISTDIR.

Reported by:	nyan
2005-11-12 19:28:46 +00:00
ru
c82c5ba499 Add missing shared library interdependencies. 2005-11-10 18:07:07 +00:00
ru
337103ed9b Require DESTDIR to be set when installing for a different architecture. 2005-11-07 15:03:04 +00:00
ru
f5e9153f17 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
ru
3f0d2e2db3 Force an upgrade to Groff 1.19.2. 2005-10-20 11:22:30 +00:00
brian
d8225ba92b Fix a couple of typos 2005-08-23 07:58:55 +00:00
netchild
29a0252061 Fix the "unexpected operator" bug some people are seeing.
First noticed by:	kris
2005-08-20 09:27:08 +00:00
netchild
b76640a2db Remove cat-pages without corresponding man-pages. 2005-08-07 13:47:25 +00:00
ru
0680d89843 - clean ${LIB32TMP} in _worldtmp
- clean ${OBJTREE}/lib32 in _cleanobj
- ensure that ${WORLDTMP} exists in build32
2005-08-05 23:48:58 +00:00
ru
a45710eb4d - Remove duplicate setting from LIB32MAKE definition.
- Install lib32 bits using the real install(1) program.
2005-08-03 20:27:06 +00:00
ru
d89945e379 Make delete-old* and friends useable for cross-builds. 2005-08-03 20:09:59 +00:00
netchild
351201bb19 - 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
des
c32a4bcef8 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
netchild
3ca6ec249e - 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
des
96f2eb8f8a 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
netchild
f78772bbe4 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
ru
e10a9fc385 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
kan
253af4de55 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
ru
73ab2fc036 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
ru
adf06d9d3d 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
ru
2696f1bfd4 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
ru
192455d44c Stop redundantly rebuilding texinfo on the next __FreeBSD_version bump. 2005-05-23 11:15:16 +00:00
imp
dbffde0e4e Remove lame and ineffectual attempt to fix ipf breakage of tenderbox. 2005-05-01 17:36:09 +00:00
imp
dd34e66b69 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
37b92090cf 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
b2c2916bfa 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
ru
0a3b4d40de Fix AMD64 cross-builds when WITH_LIB32 is defined.
(Initially spotted by kris@ on RELENG_5.)
2005-03-27 19:35:09 +00:00
ru
342873798d Protect against DESTDIR being set during the build of build32.
Reported by:	pav
2005-03-22 14:22:47 +00:00
ru
86bbb8bc22 Add hacks that I use to test cross-builds (by building on
native and foreign architectures and comparing products).
They eliminate most of the differences caused by different
object directory paths, timestamping, and identification.

(Note WORLDTMP was renamed to ${OBJTREE}${.CURDIR}/tmp.)
2005-03-02 16:40:51 +00:00
ru
8115657ff0 Bootstrap pwd_mkdb(8) and use its new feature during "make distribute". 2005-02-28 22:55:43 +00:00
obrien
1e9358b306 Accept the old user interface for NO_CLEAN as it is a POLA violation as
we've eventually changed the user interface of a common command.
2005-02-28 09:23:38 +00:00
ru
3c7b8be346 Unbreak buildworld. 2005-02-28 07:16:39 +00:00