Commit Graph

446 Commits

Author SHA1 Message Date
Garance A Drosehn
5091e3df70 Fix a problem where 'make installworld' will fail and leave the
system in a messy state *if* the user is upgrading from a system
which has no /libexec to a system which builds a DYNAMICROOT, and
if that user has set DISTDIR (as documented for ports, but it turns
out that the same variable name is used for a completely unrelated
purpose in 'make release').

There are other possible fixes for this issue, and ru@ may later
decide to commit one of those fixes.  I just wanted some fix in
ASAP, and this is the fix that I have tested.

Reviewed by:	bde, imp, and ru
2003-12-09 00:42:44 +00:00
Gordon Tetlow
5257abea22 Invert the condition that installs the dynamic linker early, since
DYNAMICROOT is now the default. Also document -DNO_DYNAMICROOT since
that is going to be a documented feature.

Submitted by:	matusita, rushani
2003-11-16 21:17:43 +00:00
Hartmut Brandt
360b288fd2 The snmp_netgraph module depends on libnetgraph. So add a dependency and
add libnetgraph to the list of prebuilt libraries in the main Makefile.

Reviewed by:	ru
2003-11-12 17:09:13 +00:00
Hartmut Brandt
cd7b6c1eea Make two directories under usr/share/bsnmp that are needed during
library build to install tree definition files and MIBS.

Okay'ed by: ru
2003-11-10 09:00:08 +00:00
Ruslan Ermilov
c54d7e028f Don't be so chatty about building includes. 2003-11-03 21:09:47 +00:00
Ruslan Ermilov
829340b175 Retired the "most" and "installmost" targets -- they just
do not have a chance to work nowadays as we have a lot of
internal libraries in lib/.

Discussed with:	marcel, wollman
2003-10-04 18:53:38 +00:00
Ruslan Ermilov
9ed6055244 Help those attempting to upgrade from static to dynamic root. 2003-09-16 12:53:18 +00:00
Ruslan Ermilov
3d0d5c76b0 Catch up with libpthread/support/Makefile.inc,v 1.6 and revert
Makefile.inc1 revisions 1.365 and 1.367: libc_pic.a is no longer
necessary to build libpthread.so (ie: libkse.so).
2003-09-15 21:18:30 +00:00
Ruslan Ermilov
be01c2220b - No need to create libfoo.so -> libfoo.so.X symlinks in /lib,
as it was decided that our toolchain will revert to looking
  for libraries in /usr/lib only.

- Make /usr/lib/libfoo.so -> /lib/libfoo.so.X symlinks absolute
  so that they still work if /usr is symlinked.

- Remove stale /usr/lib/libfoo.so.X libraries during install.

Discussed with:	gordon, obrien, peter
2003-09-07 14:15:40 +00:00
Scott Long
d61a976bc5 Clarify the numbering of some of the build stages. 2003-09-01 06:43:24 +00:00
Ruslan Ermilov
e95130d934 Revert rev. 1.378, and restore the correct arithmetic expression
syntax.  The

	make buildworld
	mv /usr/include /usr/include.old
	make installworld

issue has been fixed a month ago in Makefile,v 1.285, and there
is no valid reason to continue to keep the wrong syntax here --
buildworld takes care of upgrading a make for you if necessary.
But if you find yourself in an environment with an old make(1)
binary that breaks on this, and this is because you attempted
to run a target other than buildworld, don't whine but try again
with -DALWAYS_CHECK_MAKE defined -- it should do the trick.
Otherwise, if you still have a problem, please report it as a
bug and attach the ``make -dl ...'' output.

Reviewed by:	marcel
2003-08-30 13:48:16 +00:00
Marcel Moolenaar
bb66285c75 Remove the AFM (Anti-Footshooting Measure) added when we split the
5.x signal code from the 4.x signal code. The split happened in
Oct 2002 and we have had 2 releases since then. A kernel older than
5.0-R cannot reasonably be called a -current kernel anymore.

This does not break upgrading from an 10 month older kernel. It just
makes it more exiting.
2003-08-28 20:13:34 +00:00
Warner Losh
c3754771d8 OSRELDATE should fallback to 'unknown' rather than the kernel that's
booted on this machine.  This is a slightly better default to use.

Requested by: ru
2003-08-27 04:49:43 +00:00
Warner Losh
e4df6a7dca Add @ before the shell invocation for the testing of sufficiently new sh.
No need to see this message twice.
2003-08-25 18:30:06 +00:00
Warner Losh
b21d83f121 Fall back to using the kernel version for the OSRELDATE when
/usr/include/osreldate.h doesn't exist on the system.  While this
could be worked around by saying something like 'make includes
OSLRELDATE=0' when this file doesn't exist, it is just as easy to
provide a fallback when the file we know we depend on doesn't exist.
While this doesn't make all targets work w/o a
/usr/include/osreldate.h, because some of the FreeBSD bootstrap tools
use this file.  'make includes' however does work.

Noticed by: peter, obrien (and likely others)
Pointy hat to: imp (for suggesting a method that depended on /usr/include)
2003-08-25 17:48:25 +00:00
Gordon Tetlow
0b0c94741a In preparation for libraries being installed in /lib, add lib to the
list of build directories during the tool creation phase of the build.
2003-08-17 07:50:15 +00:00
Mark Murray
234f7acb7c Don't lint(1) so early in the build. Its OK to keep this for the
"make all" phase.
2003-07-24 18:14:29 +00:00
Gordon Tetlow
234a652964 Apparently we prefer underscores in new options. Sorry for the churn folks.
Requested by:	obrien
2003-07-14 16:21:16 +00:00
Gordon Tetlow
a20c015c92 Forgot that the rescue subdir needs to be a conditional for the
build-tools bit.
2003-07-11 17:01:58 +00:00
Gordon Tetlow
4d938af0ba Turn rescue back on, conditional to NORESCUE. We seem to be split on
using underscores or not, so I just randomly picked a style. I think
I have the logic correct, but if someone wants to give it a once over
that would be good.

Tim submitted a patch to fix the cross-building issues which I tested
with a tinderbox run for sparc64.

Submitted by:	Tim Kientzle <kientzle@acm.org>
2003-07-11 16:57:43 +00:00
Kris Kennaway
dda3614332 Correct makefile syntax error in r1.375. 2003-07-10 05:29:56 +00:00
David E. O'Brien
67599f4512 Style nit. 2003-07-08 01:24:21 +00:00
Gregory Neil Shapiro
d0c749d35f Use 'id' instead of 'grep' to detect the presence of the smmsp user/group.
This fixes the check for users with smmsp in NIS instead of their local
files.

Suggested by:	peter
MFC after:	5 days
2003-07-06 19:37:40 +00:00
Ruslan Ermilov
5dc6311712 Fixed style bugs related to parentheses in Makefile.inc1.
Submitted by:	bde

Fixed nearby bug: propagate the root Makefile's idea of
the appropriate "make" binary down to release/Makefile.
2003-07-04 14:27:06 +00:00
Gordon Tetlow
18ecbedd16 More NO_RESCUE to RESCUE transitions.
Submitted by:	ru
2003-07-02 19:26:19 +00:00
Gordon Tetlow
e9693da9e1 Switch the logic on the /rescue bits from NO_RESCUE to RESCUE, at least
until there is a fix for cross building available.
2003-07-01 23:10:39 +00:00
Ruslan Ermilov
3cc956548f Put rescue/ into a correct slot in the SUBDIR list. Sort bootstrap-,
build-, and cross-tools lists, reformat lists for easier maintenance.

Submitted by:	bde, ru
2003-07-01 12:57:53 +00:00
Ruslan Ermilov
a3d6b3e7d7 Only bootstrap crunchide(1) and build crunchgen(1) when necessary.
The latter needs to be built either if it's used as a cross-tool
(${TARGET_ARCH} != ${MACHINE_ARCH}) or if it has backward compat
issues, like e.g. lack of the AMD64 support.
2003-07-01 12:25:11 +00:00
Gordon Tetlow
4e650399de Do the deed and hookup /rescue to the build. As a result, always build
crunchgen and crunchide as cross-tools.

Submitted by:	Tim Kientzle <kientzle@acm.org>
2003-06-30 05:59:35 +00:00
Sean Kelly
e372405047 - Fix a typo.
PR:		bin/53864
Submitted by:	Lukas Ertl <l.ertl@univie.ac.at>
Approved by:	jeff (mentor)
2003-06-28 04:46:45 +00:00
Hidetoshi Shimokawa
0147d2aa71 Allow installkernel.debug and reinstallkernel.debug. 2003-06-22 10:01:03 +00:00
Warner Losh
c452953245 Minor tweaks to the build process so that we can build 5.1-current on
4.8-stable:

Must build lib/libc before libpthread.  Fix how we do this to be more
consistant with how lists are handled in the file.  Also, don't bother
to prebuild libc if we're not building libpthread.

Submitted by: ru@
Reviewed by: bde@ (before ru@ submitted it)
2003-06-14 17:50:13 +00:00
Dag-Erling Smørgrav
f212249acf Do not bogusly set CSTD to the empty string. 2003-06-14 13:30:32 +00:00
Warner Losh
21e24af3ff Add lib/libc to list of _prebuild_libs because we need the target
built libc_pic.a for libkse.

# This should finally fix the build on 4.x

Submitted by: kan
2003-06-08 04:15:05 +00:00
Warner Losh
59d855a0fe When boot strapping from older systems, don't specify a C standard in
the bootstrap process.  This allows one to more completely build from
a -stable box.

Reviewed by: ru@ (briefly)
2003-06-07 18:16:12 +00:00
David E. O'Brien
652b5a7533 Wrap gperf & groff wth NO_CXX. 2003-05-31 21:29:38 +00:00
Ruslan Ermilov
a0218a2a4d Unbreak world build if NO_OPENSSL is defined but NO_KERBEROS is not.
Submitted by:	Marius Strobl <marius@alchemy.franken.de>
Approved by:	re (jhb)
2003-05-21 21:47:20 +00:00
Dag-Erling Smørgrav
7691f66abf Retire the useless NOSECURE knob.
Approved by:	re (scottl)
2003-05-19 15:52:01 +00:00
Ruslan Ermilov
8ec00e70b1 Unbreak parallel make of _includes after revision 1.356 changes.
Spotted by:	bde
Approved by:	re (scottl)
2003-05-18 20:22:26 +00:00
Ruslan Ermilov
5d29610095 -lbsdxml lives in lib/libexpat. *Blush*
Submitted by:	tmm (Makefile.inc1)
2003-05-18 00:40:22 +00:00
Ruslan Ermilov
81d5f4384e Unbreak world: record libgeom dependency on libbsdxml here too.
Forgotten by:	ru
Submitted by:	des
Verified by:	tools/make_libdeps.sh
Approved by:	re (scottl) (related change)
2003-05-17 23:07:09 +00:00
Ruslan Ermilov
50da533c0e Use the installed world's idea of OSRELDATE rather than the kernel.
This was the initial intent anyway, and it became clear that it is
really necessary to treat it this way, as many people happen to run
with kernel newer than the installed world.

Submitted by:	imp, ru
Approved by:	re (scottl)
2003-05-15 17:59:32 +00:00
Bruce Evans
a270eca53b Install symlinks to individual headers instead of symlinks to directories
in the SHARED=symlinks case.  Symlinks to directories only work if all the
the necessary headers are in 1 directory, but the necessary headers are
scattered for at least ipfilter headers in <netinet>.  This change also
avoids polluting /usr/include with non-headers; the /usr/include hierarchy
is now independent of the setting of SHARED.

Submitted by:	ru (edited to fix netgraph/bluetooth/include and machine/pc)
PR:		44148
2003-05-05 12:54:26 +00:00
Mark Murray
4ee05d2921 Negate the logic of MAKE_KERBEROS5, and replace it with NO_KERBEROS. 2003-05-05 08:44:40 +00:00
Warner Losh
22bd4d16b6 Many developers run with userland != to kernel. While this isn't
supported, it usually works for months at a time.  Allow these people
to override the OSRELDATE of their installed world when things don't
match and the exact OSRELDATE matters and is different than the
kernel.  Now that Makefile.inc1 depends more and more about which date
you have to optimize the pieces it builds, it may be necessary to
pessimize things if its guesses are wrong.

If OSRELDATE is already set, we won't fork the sysctl to find out what
the kernel's date is.

Developers on IRC suggested that they run mismatches all the time as
well.

Reviewed by: obrien
2003-05-04 04:14:10 +00:00
Ruslan Ermilov
dd2aac0249 For the time being, upgrade the whole Groff (to version 1.19),
but stop doing so again on the next __FreeBSD_version bump.
2003-05-01 20:41:03 +00:00
Ruslan Ermilov
01b63a1009 Restore the ordering of NO's and remove one redundant NOLINT.
Reviewed by:	markm
2003-04-30 12:38:20 +00:00
Mark Murray
945e0cea45 Fix "make world" for the WANT_LINT case. The various build tools
must not try to lint(1) stuff at *-tools time; keep the linting
for the actual build (which comes later).
2003-04-30 11:17:33 +00:00
Ruslan Ermilov
007bf12e1e Groff after 2002/10/15 has no known backward compatibility issues,
but we always want the latest macro files.
2003-04-30 10:58:52 +00:00
John Baldwin
69e7419512 Rename KRNLSRCDIR to KERNSRCDIR and allow it to be overridden. The name
change was to be consistent with other overridable variables such as
KERNCONFDIR and KERNCONF.
2003-04-16 21:05:06 +00:00
Ruslan Ermilov
c2400c8ec5 kbdcontrol.c rev. 1.35 and onwards support the KEYMAP_PATH
environment variable, and don't need to be bootstrapped.
2003-04-14 14:46:13 +00:00
Ruslan Ermilov
692ebfe975 yacc(1) with skeleton.c rev. 1.29 in HEAD and rev. 1.28.2.1 in RELENG_4,
and onwards, are believed to not require bootstrapping.
2003-04-13 16:26:31 +00:00
Ruslan Ermilov
da54b929c3 xargs.c rev. 1.10 in HEAD and rev. 1.9.2.1 in RELENG_4,
and onwards, have support for the -J option we need.
2003-04-13 16:05:28 +00:00
Ruslan Ermilov
47c95a33ef elf2aout.c,v 1.6 and onwards have no known backward compatibility issues. 2003-04-13 15:43:29 +00:00
Ruslan Ermilov
710b5ef8fc uudecode.c rev. 1.23 in HEAD and rev. 1.13.2.3 in RELENG_4,
and onwards, have no known backwards compatibility issues.
2003-04-13 15:09:26 +00:00
Ruslan Ermilov
7a9bf94022 Only create directories that are really needed. 2003-04-13 14:34:17 +00:00
Ruslan Ermilov
ad1520bdf4 Install bootstrap-tools into a separate subtree of ${WORLDTMP}.
This allows us to use them as early as possible while building
bootstrap-, build-, and cross-tools.  Some cleanups to follow.

This change resolves the gperf(1) bootstrapping issue (missing
-E option) in gnu/usr.bin/cc/cc1plus while in the cross-tools
stage when upgrading from 4.0-RELEASE.
2003-04-13 11:42:55 +00:00
Ruslan Ermilov
cb66f4dd73 Make sure legacy stuff comes last. Some tools that use
legacy stuff (binutils) depend on this order.

For this to work, provide (and use) specialized versions
of bsd.prog.mk and bsd.lib.mk that include the standard
versions first, then augment CFLAGS, DPADD, LDADD, and
LDFLAGS as necessary, with the legacy stuff.

Tested on:	4.0-RELEASE
2003-04-12 15:07:46 +00:00
Ruslan Ermilov
7552a592f4 libc_gen/basename.c depends on include/libgen.h. 2003-04-11 17:58:17 +00:00
Ruslan Ermilov
c0006b49db Put back the undocumented change from rev. 1.334 too: no
need to create ${WORLDTMP}/legacy/usr/include explicitly.
2003-04-07 00:01:33 +00:00
Warner Losh
5675749e1a Put back parts of 1.335 and 1.336 that 1.337 accidentally backed out.
Submitted by: ru
2003-04-06 23:46:02 +00:00
Warner Losh
1c62f92354 -legacy and /.../legacy/... looks better than build or bootstrap in
the logs, so use that instead.

Submitted by: obrien.
2003-04-06 21:46:44 +00:00
Ruslan Ermilov
5ceb21ff5d Always remove ${WORLDTMP}/build/usr/include, even in the NOCLEAN
case.  This way, we won't have stale compatibility headers there.
2003-04-06 21:39:20 +00:00
Ruslan Ermilov
cfc236e808 Moved libbuild target to where it belongs. Added a comment. 2003-04-06 21:33:49 +00:00
Ruslan Ermilov
32054bbb7e Fixed buildworld stages names in comments. 2003-04-06 21:23:02 +00:00
Warner Losh
f7e19a98fd We can't use ${WORLDTMP}/usr/{include,lib} for the compat layer. This
is because we populate these directories later, and a subsequent
-DNOCLEAN build may fail.  So, we put them in
${WORLDTMP}/build/usr/{include,lib} instead and adjust Makefile.boot.

Again, this works on -stable and -current, but might break older
versions.

Submitted by: ru@
2003-04-06 03:50:28 +00:00
Warner Losh
30aaff1192 Migrate to a new way of dealing with building from old revisions of
FreeBSD.  This method attempts to centralize all the necessary hacks
or work arounds in one of two places in the tree (src/Makefile.inc1
and src/tools/build).  We build a small compatibility library
(libbuild.a) as well as selectively installing necessary include
files.  We then include this directory when building host binaries.

This removes all the past release compatibilty hacks from various
places in the tree.  We still build on tip of stable and current.  I
will work with those that want to support more, although I anticipate
it will just work.

Many thanks to ru@, obrien@ and jhb@ for providing valuable input at
various stage of implementation, as well as for working together to
positively effect a change for the better.
2003-04-05 20:30:30 +00:00
Warner Losh
756ec6a40f Diff reduction with my p4 changes:
Add @ before ${ECHODIR} where appropriate because we don't need to echo
the echo command...  This gets rid of extra echo ===> in log files...
2003-04-04 22:46:08 +00:00
Ruslan Ermilov
cdcdfd877b Parallelize (on the top-level SUBDIR list) the "all" stage of
buildworld.  This gives 5-11% percent gain in real buildworld
times on various UP and SMP systems here.  I used 4 * hw.ncpu
as an argument to "make -j" in my tests.
2003-04-01 11:39:04 +00:00
Ruslan Ermilov
b9040d98f9 Pass NO_WARNS to the build-tool stage too; -Wsystem-headers
isn't known to the 4.x system compiler.
2003-04-01 11:29:29 +00:00
Ruslan Ermilov
effd19ed24 Enable cpp(1) warnings in system headers. GCC is oriented on
glibc which is externally maintained, so GCC ships with these
warnings turned off by default.  This is also consistent with
the src/contrib/gcc/c-lex.c,v 1.2 change.
2003-03-31 13:10:51 +00:00
Ruslan Ermilov
fcdc271389 Slightly improve buildworld times by excluding crunchide(1)
and kgzip(8) from the list of cross-tools during the normal,
non-"make release" buildworld.

Also, don't gratuitously build them, btxld(8) and elf2aout(1)
for native architecture builds, since they have no known
boostrapping issues along the supported upgrade path.

Prodded by:	peter
2003-03-31 12:58:33 +00:00
Ruslan Ermilov
8eb1c4caf9 Convert kgzip(8) to be an i386 cross-tool. This is needed for
cross-releasing i386 on different architectures.  This version
provides an i386 version of <a.out.h>, and handles endianness.

Tested on:	alpha, sparc64
2003-03-11 11:45:43 +00:00
Mark Murray
4d9e5eadf2 KerberosIV de-orbit burn continues. Disconnect from "make world". 2003-03-08 10:01:26 +00:00
Ruslan Ermilov
f93bdc081c With CVS_UPDATE, use read-only repository mode by default. 2003-03-06 13:54:31 +00:00
Ruslan Ermilov
f617fa528d Doh, committed to the wrong branch.
Spotted by:	johan
2003-03-04 17:24:18 +00:00
Ruslan Ermilov
7adf0ebb72 MFC: Ship with /etc/login.conf hashed.
Approved by:	re
2003-03-04 09:49:00 +00:00
Ruslan Ermilov
6192b1dff1 Make sure the default install comes with /etc/login.conf hashed. 2003-03-03 11:19:18 +00:00
Ruslan Ermilov
73ba057ccc Catch up with sys/conf/kern.post.mk,v 1.39 -- we can now use
plain ${CLEANDIR} to clean kernel and modules.  This has an
additional nicety of respecting NOCLEANDIR.
2003-03-03 08:50:32 +00:00
Ruslan Ermilov
2ff31e0d81 Ensure that build-tools end up in the object directory different
from the source directory.  (This mostly affects the RELENG_4's
``make release'' release.5 target, where "rtermcap" build-tool
for release/sysinstall ends up in the source directory and later
steps of release.5 wipe it out.)

Spotted by:	jhay
2003-02-24 20:09:16 +00:00
Ruslan Ermilov
9a9c78bd69 Respect ``makeoptions NO_MODULES'' specified in the kernel config file. 2003-02-21 11:19:25 +00:00
Tom Rhodes
24cc1d58d5 Add -DNOMAN to the list. 2003-02-11 19:21:13 +00:00
Joseph Koshy
07e5ffba6a Catch typos in the kernel name specified for an "installkernel" invocation
early on, rather than failing later with an obscure error message.

Make error messages appear consistent.
2003-02-07 07:29:57 +00:00
Poul-Henning Kamp
d0cfa43f14 Don't attempt buildworld if the path to the source-tree contains a comma.
Can be removed if the underlying issue is fixed.

Submitted by:	Flemming Jacobsen <fj@batmule.dk>
2003-02-04 08:15:30 +00:00
David E. O'Brien
cbb66355ca Move elf2aout back to /usr/bin -- it is a general development tool, not
a sysadmin tool.
2002-12-30 10:01:26 +00:00
Ruslan Ermilov
fc599016e7 For installkernel, use the fresh tools (if we've built them with
buildworld).

Reviewed by:	imp, marcel
Approved by:	re (rwatson)
2002-12-02 14:03:40 +00:00
Ruslan Ermilov
3f66c888ec Make dynamic PAM modules depend on dynamic PAM library.
Requested by:	des, markm
2002-11-14 19:24:51 +00:00
Ruslan Ermilov
40c6b893d8 Take __FreeBSD_version into account when BOOTSTRAPPING. 2002-11-13 13:49:29 +00:00
Scott Long
fb404d6fcf Hook the aic7xxx modules up. This requires some extra care since aicasm
is a compiler tool and needs to be compiled by the host compiler.  I've
tested this in i386->sparc cross-build, 4.7->current upgrade, normal
buildkernel target, and normal /sys/i386/compile/GENERIC configurations.

Submitted by:	ru
2002-11-03 23:48:14 +00:00
Ruslan Ermilov
60e155d99e Emptify. 2002-10-28 08:44:59 +00:00
Peter Wemm
6ef0c7707d DISTDIR is used by 'make release', lets see if this is enough to turn
off the execution test.
2002-10-27 03:38:57 +00:00
Peter Wemm
13f571a36c Provide a bit of anti-foot-shooting protection. Make sure that in the
non-cross cases without DESTDIR, that the bin/sh that we're about to
install works.  Otherwise, a 'make installworld' without having already
rebooted with a post-signal-fix kernel is a rather big disaster when
important things like /bin/sh coredump.
2002-10-25 19:15:29 +00:00
Ruslan Ermilov
017b462e6b _games is gone in rev. 1.305. 2002-10-22 08:30:31 +00:00
Mark Murray
dc2f663b39 Do not build the majority of the games. Remaining are the
"utility-like" games and everyone's favourite, fortune(6).
2002-10-20 11:18:56 +00:00
Peter Wemm
66422f5b7a Initiate deorbit burn for the i386-only a.out related support. Moves are
under way to move the remnants of the a.out toolchain to ports.  As the
comment in src/Makefile said, this stuff is deprecated and one should not
expect this to remain beyond 4.0-REL.  It has already lasted WAY beyond
that.

Notable exceptions:
gcc - I have not touched the a.out generation stuff there.
ldd/ldconfig - still have some code to interface with a.out rtld.
old as/ld/etc - I have not removed these yet, pending their move to ports.
some includes - necessary for ldd/ldconfig for now.

Tested on: i386 (extensively), alpha
2002-09-17 01:49:00 +00:00
Johan Karlsson
c065f5b24b Similar to bsd.subdir.mk, echo the name of the dir before
doing the cd. This is done for bootstrap-tools,
build-tools, cross-tools, and the libraries loop.

Reviewed by:	ru
Approved by:	sheldonh (mentor)
MFC after:	1 week
2002-08-23 12:49:16 +00:00
Ruslan Ermilov
d4f7b113f1 The intent in rev. 1.299 was to make the CPUTYPE assignment type check
bother "only those who attempts to set it to a different value".  This
got broken in rev. 1.300 (that fixed another race).

Reported by:	ache
2002-08-08 15:43:23 +00:00
Ruslan Ermilov
10a6b1ffc9 Makefile.inc1 may eventually be merged with Makefile, so fix an
endless recursion bug similar to the one that has been fixed in
release/Makefile,v 1.698, in advance.  A related fix to make(1)
has been committed in make/main.c,v 1.68.

Requested by:	bde (who has them merged already)
2002-08-07 13:41:46 +00:00
Ruslan Ermilov
9f3089acef An empty CPUTYPE now means ``the default CPUTYPE'' in bsd.cpu.mk.
If there was no CPUTYPE assignment in /etc/make.conf, this would
cause the ``CPUTYPE assignment type'' check to falsely fail.

Reported by:	johan

Fixed this by making sure we always pass the non-empty CPUTYPE.
Also make sure we use the correct set of share/mk files in our
test.
2002-08-05 08:54:26 +00:00
Ruslan Ermilov
32f8ca450d TARGET_CPUTYPE should exist solely in Makefile.inc1, similar to
TARGET_ARCH and TARGET.  This is problematic when one has the =
(unconditional) type of assigment for CPUTYPE in /etc/make.conf.
(This would override what was set on the command line to "make
buildworld".)

Add a (horrible) kludge to Makefile.inc1 to check the type of
assignment for CPUTYPE (only for those who attempts to set it to
a different value).  Fix an example make.conf.  Fix the kernel's
build-tools target (aicasm only at the moment) to catch up with
bsd.cpu.mk,v 1.15 (BOOTSTRAPPING replaced with NO_CPU_CFLAGS in
Makefile.inc1's BMAKE).

Reviewed by:	jhb
2002-08-02 18:04:22 +00:00