106 Commits

Author SHA1 Message Date
marcel
734620334b Add colldef to the list of tools. It's needed on older systems. 1999-12-12 22:24:08 +00:00
marcel
9bf3b44494 o Add gensetdefs to the list of tools.
o  Don't set CFLAGS in the bootstrap env. It is very likely to be
   overridden my any CFLAGS setting in /etc/make.conf. Setting it
   here is almost useless. So far, it doesn't seem necessary.
1999-12-12 21:24:07 +00:00
nyan
2ce6a96b2b Build a.out tools if MACHINE_ARCH == i386 and MACHINE == pc98.
The boot2 for pc98 is still a.out program.

I made the original patch, and many problems were fixed by Marcel Moolenaar.
1999-12-12 03:54:58 +00:00
marcel
2e7281ba86 Don't add MACHINE_ARCH to MAKEOBJDIRPREFIX when not cross-building.
This should fix make release.

Reported by: jhay, phk
1999-12-11 17:05:36 +00:00
marcel
72299511da o Don't make games/fortune/strfile if games does not exist or NOGAMES
has been defined.
o  Make libraries before making depend.
1999-12-10 16:13:41 +00:00
marcel
95b7ea1881 Remove installworld related settings that I had as a safety-net and
for development. :-/
1999-12-10 11:24:06 +00:00
marcel
e040d81e69 More cross-building related changes:
o  Build tools before doing anything in or with the object tree.
o  Tools don't use the object tree any more, but have there object
   tree located in the temp. world.
o  Use the proper make env. for cleaning and building the object tree.
o  Don't create kernel include subdirectories in the temp. world. These
   are removed later on and replaced by symlinks.
o  Change the layout of the object tree:

The temp. world now is /usr/obj/${MACHINE_ARCH}${.CURDIR}/${BUILD_ARCH}.
/usr/obj can be set/changed by using MAKEOBJDIRPREFIX, and {.CURDIR}
obviously depends on where the source tree is located. MACHINE_ARCH
is the arch. for which the world is to be build and BUILD_ARCH is the
arch. on which we are building.

The object tree now is /usr/obj/${MACHINE_ARCH}${.CURDIR}.

This allows concurrent cross-builds and allows the object tree to be
shared on different archs., each doing the same cross-build. This of
course assumes that the output on Alpha (for example) is the same as
the output of an Alpha cross-build on i386 (for example).

The use of NOCLEAN is is still dangerous, but should be usable in many
more situations than before. It should now be possible to safely
restart an interrupted build with NOCLEAN without side-effects. Because
the tools don't share the object tree with the normal (cross-build), no
tools have to be rebuild.
1999-12-10 10:48:20 +00:00
marcel
542194f894 Don't make gdb, objc and f77 when building tools. 1999-12-09 16:40:27 +00:00
marcel
ddefaf060f Make sure the links to the source tree end up in the source tree. 1999-12-09 13:36:16 +00:00
marcel
72c3a2147b o Add usr/lib/compat/aout to the temp world. This is needed by release.
o If you can't beat them, join them: use symlinks to populate the obj
  tree. This avoids using mtree.
1999-12-09 10:45:09 +00:00
marcel
10058a4f2b Restore the upgrade path from -stable to -current and prepare for
non-root cross-building.

o  Makefile.inc0 is not used anymore.
o  The legacy aout build has been removed.
o  Selectively build tools *before* building includes/libraries.
o  Avoid using mtree to populate the obj tree.
1999-12-08 13:45:11 +00:00
julian
fec55b2fd4 Place netgraph entry into alphabetical position
along with the misplaced entries that it was next to.
1999-11-25 20:05:07 +00:00
obrien
7f9416c80e Revert to rev 1.91. Revs 1.9{2,3} were causing problems for people with
pre-Aug 4.0-CURRENT worlds and those with pre-GCC 2.95.2 worlds.

The problem with pre-Aug worlds is the installed Byacc and Bison doesn't
have necessary changes to compile either GCC 2.95 or EGCS 1.1.x.

The problem with pre-GCC 2.95 worlds is libgcc is built with the wrong
compiler.  See rev 1.17 of src/gnu/lib/libgcc/Makefile (which used to live
in src/gnu/usr.bin/cc/libgcc) + commit messge for details of the requirements.
1999-11-24 06:04:11 +00:00
marcel
3765f3c475 Fix some bugs and make some policy changes.
o  Send libmytinfo back to the afterlife. It was revived by mistake,
o  Make gnu/lib/libgcc before making lib/libpam. This dependency has
   been overlooked in constructing the list,
o  make depend before make all. It's by using make depend that the
   dependency was found in the first place and we need it to prevent
   cleaning everything up before we start,
o  Don't specify -DNOINFO -DNOMAN for the libraries target. Let the
   target handle it. We can do away with a single run over the libs
   if we make everything while we're there and only install the
   libraries in the object tree.
1999-11-23 18:52:12 +00:00
marcel
9ea5fe11b1 Build tools against the host's includes and libraries. Also, don't
build make(1) twice and merge the bootstrap-libraries and libraries
targets.

This change solves the bug where build-tools, compiled against the
includes and libraries built from the sources failed to run on the
host, as was the case with the sigset_t change. With this update, a
buildworld will fail if the tools won't compile on the host. This
is solved in further commits where backward compatibility of the
tools is enlarged.

The libraries target has been fixed. The libraries are now build in
the proper order, satisfying the dependencies. The comment is updated
to reflect this.

The linux module and netboot have been removed from the list of tools.
More to follow.

Reviewed by: bde, imp
1999-11-21 20:06:03 +00:00
marcel
2d8cd2480b Remove CROSS_MAKE_FLAGS. 1999-11-15 17:07:45 +00:00
marcel
17ed6e05da ${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
julian
ff0350df84 install netgraph.h a bit earlier.
Submitted by:	Boris Popov <bp@butya.kz>
1999-10-25 14:50:13 +00:00
bp
511cb27e6c Make libncp actually compiled.
Reviewed by:	mdodd
1999-10-14 06:40:46 +00:00
peter
272affc407 Add libkvm to the includes target. 1999-10-04 14:57:38 +00:00
markm
68cb32c3fd Minor (but important) comment change. 1999-09-20 20:27:09 +00:00
bde
dadcf3d80f FIxed disorder in the comments about library build order. 1999-09-04 13:25:57 +00:00
markm
b11e824ee6 Further preparation for tn3270's demise. 1999-08-31 06:53:39 +00:00
peter
2b8fe4e1cb Update for ncurses5 aftermath.. 1999-08-30 08:33:15 +00:00
peter
efabb9ccb1 $Id$ -> $FreeBSD$ 1999-08-28 01:35:59 +00:00
jdp
5d98db9c16 Remove f2c-related stuff from the "includes" target and from a
comment.  Fixes broken make world.
1999-08-08 22:26:09 +00:00
jdp
e5383f7b66 Add usr.sbin/elf2exe to the build-tools target on the Alpha. This
fixes the make buildworld breakage in sys/boot/arc/loader.
1999-08-06 00:58:41 +00:00
imp
136f27c25b Per requests from the community, commit rudimentary cross compilation
support.  I've been building world with these changes for months w/o
ill effect.  I've also managed to build the cross tool chain for MIPS
with these patches.

Please note that the extent to which these patches work is largely
dictated by how well our tool chains support the cross compilation.
Building alpha binaries on i386 doesn't work.  Supposedly building
i386 binaries on alpha does work, but I've not verified it with these
patches, however.
1999-07-07 04:46:46 +00:00
billf
73eda78319 ${.CURDIR} doesn't have to be /usr/src, especially in a cvs checkout. Make
sure what is reported to the user is accurate.

Stolen From:	mharo
1999-06-04 17:34:28 +00:00
billf
bc62ec7c7b 'make update' in the ports directory. 1999-06-01 02:55:44 +00:00
obrien
a847a648b9 Document NO_FORTRAN. 1999-05-03 17:54:59 +00:00
markm
92f510291f Perl is moving up a maintenance version.
While I'm here - reorder crypto directories to better support
dependancies. Perl and others like it better that way.
1999-05-02 15:23:55 +00:00
jkoshy
9104dc5780 Change 'exists()' constructs to refer to directories in ${.CURDIR}.
Tested with a make world.

PR:		misc/4395
Submitted by:	J Wunsch
Reviewed by:	bde
1999-04-20 05:33:07 +00:00
des
839783f3cb Don't build man page indices if NOMAN is defined.
PR:		bin/11035
Submitted by:	Chris Costello <chris@holly.dyndns.org>
1999-04-11 21:48:09 +00:00
obrien
f882950e9c Clean up "lib-tools:", folding libgcc into the rest. 1999-04-05 22:37:54 +00:00
obrien
bd8e7f40fb Remove a lingering reference to libg++. 1999-04-04 21:35:27 +00:00
obrien
c24347c28b Missed a gnu/usr.bin/cc/libgcc. 1999-04-03 23:46:18 +00:00
obrien
a60072138b EGCS will have some new includes that need to be installed. 1999-04-03 08:18:43 +00:00
peter
02500f76dc Add libwrap to includes target, otherwise <tcpd.h> doesn't get installed
in time to build inetd.  (If you already have /usr/include/tcpd.h, the
build doesn't fail.  This mainly affects upgrades and 'make world' from
systems more than a few weeks old)
1999-04-02 15:37:07 +00:00
obrien
f0fff860af An earlier version of Rev 1.66 was reviewed by bde and the issues were
hashed out with his gracious help.
1999-03-31 06:42:36 +00:00
obrien
a6dc8c5afd * Deal with libgcc's move from gnu/usr.bin/cc to gnu/lib.
Move was necessary as libgcc should be built with the freshly built
  compiler and thus we must wait until the freshly built bits have been
  installed somewhere so we can use them.  libgcc presence in gnu/usr.bin/cc/
  gets in the way of building the new compiler.  We could have either
  cd'ed to specific directories w/in gnu/usr.bin/cc/ and built and installed
  individual bits, or move libgcc out of the way and let our normal subdir
  building process work.

* Don't build libgcc in "bootstrap-libraries:" target it should not be
  assumed the currently installed compiler can correctly build libgcc.
  (as is the case for g++ 2.7.2 and EGCS' libgcc)
1999-03-31 06:38:13 +00:00
imp
15ef0b89c9 The legacy boot stuff is available only on i386, not all architectures
which aren't the alpha.  Test for MACHINE_ARCH == i386 rather than
MACHINE_ARCH != alpha.
1999-03-01 01:09:06 +00:00
jkh
0dd31950cd Add a new flag, "WORLD", for telling certain tools that they're
being build as part of a bootstrap.
1999-02-27 03:18:10 +00:00
des
e158dd910e Ignore errors from chflags. This makes it possible to make installworld
with DESTDIR set to an NFS-mounted file system.
1999-02-14 13:56:15 +00:00
jkh
5d8d3b87c1 further refine the upgrade process. 1999-01-27 15:08:05 +00:00
markm
b569d7e3f1 More broken crypt(3) backout. 1999-01-23 08:44:17 +00:00
brandon
d1ac7fffdb One more fix to remove secure/lib/libcrypt from the build (both
cases are now handled in lib/libcrypt, depending upon if
secure/lib/libcrypt/crypt-des.c exists)

Reviewed by:	Mark Murray
1999-01-22 15:10:05 +00:00
markm
d0481c5c74 Help for Perl5 to make in cross-build environments.
Submitted by:	Eivind Eklund
1999-01-20 05:45:57 +00:00
eivind
edc7d9f14b Don't do the ldconfig rescan if DESTDIR is set. 1999-01-07 13:09:15 +00:00
peter
57329d7db3 ``Disable'' a.out 'make world', as per flag day notification on current and
committers.  A 'make aout-to-elf' is strongly encouraged.  This isn't quite
the end of the line for people who have a real problem with updating yet,
but we've got to get this over and done with.  Yes, it's bound to be a
couple of bumpy couple of days.
1999-01-07 06:26:33 +00:00