Commit Graph

80 Commits

Author SHA1 Message Date
Olivier Houchard
9049715ff9 Try harder not to compile anything in sys/boot for arm.
I wonder how buildworld ever worked for me...
2004-05-16 00:19:12 +00:00
Ruslan Ermilov
2e53e513a8 Replaced outdated comment. 2004-01-17 03:28:27 +00:00
Peter Wemm
6833c6add5 Revert exclusion for amd64 that stopped boot/ being built. 2003-06-26 03:52:48 +00:00
Peter Wemm
34da59975b Exclude sys/boot for amd64. There are still toolchain issues to deal
with.  In theory, gcc -m32 should work, but for now, do not tempt fate.

Approved by:	re (scottl)
2003-05-08 06:35:39 +00:00
Ruslan Ermilov
6bde859f40 Milestone #1 in cross-arch make releases.
Do not install games and profiled libraries to the ${CHROOTDIR}
with the initial installworld.

Eliminate the need in the second installworld.  For that, make sure
_everything_ is built in the "world" environment, using the right
tool chain.

Added SUBDIR_OVERRIDE helper stuff to Makefile.inc1.  Split the
buildworld process into stages, and skip some stages when
SUBDIR_OVERRIDE is set (used to build crypto, krb4, and krb5
dists).

Added NO_MAKEDB_RUN knob to Makefile.inc1 to avoid running
makewhatis(1) at the end of installworld (used when making crypto,
krb4, and krb5 dists).

In release/scripts/doFS.sh, ensure that the correct boot blocks are
used.

Moved the creation of the "crypto" dist from release.5 to
release.2.

In release.3 and doMFSKERN, build kernels in the "world"
environment.  KERNELS now means "additional" kernels, GENERIC is
always built.

Ensure we build crunched binaries in the "world" environment.
Obfuscate release/Makefile some more (WMAKEENV) to achieve this.

Inline createBOOTMFS target.

Use already built GENERIC kernel modules to augment mfsfd's
/stand/modules.  GC doMODULES as such.

Assorted fixes:

Get rid of the "afterdistribute" target by moving the single use
of it from sys/Makefile to etc/Makefile's "distribute".

Makefile.inc1: apparently "etc" no longer needs to be last for
"distribute" to succeed.

gnu/usr.bin/perl/library/Makefile.inc: do not override the
"install" and "distribute" targets, do it the "canonical" way.

release/scripts/{man,cat}pages-make.sh: make sure Perl manpages and
catpages appear in the right dists.  Note that because Perl does
not respect the MANBUILDCAT (and NOMAN), this results in a loss of
/usr/share/perl/man/cat* empty directories.  This will be fixed
soon.

Turn MAKE_KERBEROS4 into a plain boolean variable (if it is set it
means "make KerberosIV"), as documented in the make.conf(5)
manpage.  Most of the userland makefiles did not test it for "YES"
anyway.

XXX Should specialized kerberized libpam versions be included into
the krb4 and krb5 dists?  (libpam.a would be incorrect anyway if
both krb4 and krb5 dists were choosen.)

Make sure "games" dist is made before "catpages", otherwise games
catpages settle in the wrong dist.

Fast build machine provided by: Igor Kucherenko <kivvy@sunbay.com>
2002-04-26 17:55:27 +00:00
Peter Wemm
5836b5e001 I should know better than to touch this without testing a 'make release'
but ${MACHINE_ARCH} should be ${MACHINE} here.  pc98 has its own
GENERIC.hints file and should not be used with the i386 version.
2000-08-24 18:53:09 +00:00
John Baldwin
e25cb01d28 Add in a hack that installs 'src/sys/${MACHINE_ARCH}/GENERIC.hints' as
/boot/device.hints in the bin dist during releases so that current snapshots
have a chance of booting up ok after installing.  The real fix for this
problem is to rewrite userconfig in Forth, stick it in the loader, axe
userconfig from the kernel, and extract the hints from the booted kernel in
sysinstall similar to the way we generate /boot/kernel.conf right now.  For
now, however, this will have to do.
2000-08-17 05:43:41 +00:00
David E. O'Brien
f94a3783cf If "MODULES_WITH_WORLD" is defined, sys/modules will be built with the
world as was our old way, rather than when building a kernel.

Some people do not like the new way, and the release building still assumes
modules are built with the world.
2000-06-17 10:51:56 +00:00
Chuck Robey
10ae1068e5 Cause modules to build with the kernel build. Modules are removed
from the sys Makefile's SUBDIRs.  This is conditioned in make.conf by the
NO_MODULES variable and the existence of the modules directory.  The
actual location of the modules is not modified.  Changes in Makefiles
only, this does not affect Peter's recent changes.

Reviewed by:	Peter Wemm, who warned me I would get some flack, and
		he had the good idea for the NO_MODULES variable.
2000-05-02 02:26:04 +00:00
Peter Wemm
c317f0727a Remove the old a.out-only boot loader, we don't use it any more.
The new boot1/boot2 can load a.out and elf kernels directly.
I think the sys/pc98 version can go too as the sys/boot/pc98 code
appears to be functional, but I'll leave that for the pc98 folks.

"There can be only one."
2000-03-19 11:42:34 +00:00
Marcel Moolenaar
0917704bd4 ${MACHINE} -> ${MACHINE_ARCH}
All Makefiles now use MACHINE_ARCH for the target architecture.
Unification is required for cross-building.

Tags added to:
	sys/boot/Makefile
	sys/boot/arc/loader/Makefile
	sys/kern/Makefile
	usr.bin/cpp/Makefile
	usr.bin/gcore/Makefile
	usr.bin/truss/Makefile

usr.bin/gcore/Makefile:
	fixed typo: MACHINDE -> MACHINE_ARCH
1999-11-14 13:54:44 +00:00
Peter Wemm
c3aac50f28 $Id$ -> $FreeBSD$ 1999-08-28 01:08:13 +00:00
KATO Takenori
8326768a5c Use MACHINE_ARCH instead of MACHINE to check x86 architecture.
Pointed out by:	Akio Morita <amorita@meadow.scphys.kyoto-u.ac.jp>
1999-06-03 10:38:07 +00:00
Joseph Koshy
29ddf5ab88 Use ${.CURDIR} in `exists()' constructs.
PR:		misc/4395
Submitted by:	J Wunsch <j@ida.interface-business.de>
1999-04-21 11:09:40 +00:00
Bruce Evans
40b843918b Backed out previous commit. It depends on a.out utilities and libraries
somehow being available even on pure elf systems.
1998-12-30 12:06:08 +00:00
Bruce Evans
e5f94bcd7a Always build ${MACHINE}/boot if it exists. Makefiles shouldn't know
about deficiencies in subdirs.
1998-12-30 11:17:09 +00:00
Peter Wemm
600f97da28 Build KLD modules, these work for both a.out and elf. 1998-11-03 06:50:58 +00:00
Robert Nordier
1b9112ea6b In src/Makefile.inc1:
Remove /sys/boot from legacy-build.
    Add btxld to build-tools.
In src/sys/Makefile:
    Add /sys/boot for i386 ELF.

I'm still not sure why the new boot code was being built along with the
legacy stuff, which meant a completely wrong default environment for it.

This may well still be the wrong way to go about this, but it can't work
all that much worse than it has been.
1998-10-11 18:39:38 +00:00
Gary Palmer
1a1c25472a Build the new boot loader on the alpha. This allows make release to work again. 1998-10-04 00:42:08 +00:00
John Birrell
7cfc8475b8 Add support for MACHINE=pc98. This leaves a single legacy entry for
the old aout bootloader.
1998-09-05 08:27:56 +00:00
John Birrell
960bddf112 Only build the old boot loader on i386 if aout. The new loader will
eventually be built if elf.
1998-08-27 04:26:40 +00:00
John Birrell
756985ab45 Test for the existance of ${MACHINE}/boot before trying to build it.
The PC98 stuff in this makefile should be removed and that system
should build with MACHINE=pc98 and MACHINE_ARCH=i386.
1998-02-20 07:37:08 +00:00
Jordan K. Hubbard
17b8806498 Commit a long-forgotten tweak for building tags in /usr/src/sys. 1997-07-13 07:36:20 +00:00
Peter Wemm
6875d25465 Back out part 1 of the MCFH that changed $Id$ to $FreeBSD$. We are not
ready for it yet.
1997-02-22 09:48:43 +00:00
Jordan K. Hubbard
1130b656e5 Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!)
avoiding the Id-smashing problem which has plagued developers for so long.

Boy, I'm glad we're not using sup anymore.  This update would have been
insane otherwise.
1997-01-14 07:20:47 +00:00
Satoshi Asami
ad63a118b2 The Great PC98 Merge.
All new code is "#ifdef PC98"ed so this should make no difference to
PC/AT (and its clones) users.

Ok'd by:	core
Submitted by:	FreeBSD(98) development team
1996-06-14 11:02:28 +00:00
Bruce Evans
62394a63c8 Removed almost all traces of libkern.a. The objects that were in
libkern.a are now specified by listing their source files in
files.${MACHINE}.  The list is machine-dependent to save space.
All the necessary object for each machine must be linked into the
kernel in case an lkm wants one.
1995-12-26 13:58:31 +00:00
Paul Richards
8a2283e2ac Added ${MACHINE}/boot to build bootblocks.
Submitted by:	Paul Richards
1994-08-25 13:54:28 +00:00
David Greenman
3c4dd3568f Added $Id$ 1994-08-02 07:55:43 +00:00
Rodney W. Grimes
303b706ca0 Add this so that the top level Makefile can traverse down into here
and build libkern.  This will be enhanced later to build other things.
1994-05-28 04:10:32 +00:00