Commit Graph

276 Commits

Author SHA1 Message Date
mrg
c6b4bc4a81 adjust the do-compat-* rules now that src/compat/lib and friends no longer exist 2009-12-13 09:29:27 +00:00
uebayasi
d166c4bf28 Support "extsrc", externally added programs and libraries. Users can write
their own reach-overs, cross-build, install, and get set files just like base
and X11 / X.org.  (These sets are not included as TNF releases.)
2009-11-30 16:13:22 +00:00
pooka
da73ba1e67 build & install librumpdev_netsmb and librumpfs_smbfs components 2009-09-04 17:21:33 +00:00
dyoung
71fe64733e Let us use MKKMOD=yes to leave the kernel modules out of the
distribution.
2009-08-30 01:49:41 +00:00
pooka
3953343384 Build modules before rump libs so that something else can be
unwarrantedly blamed for a change.

This commit follows the style guide and is entirely non-build-tested.
2009-07-03 22:20:27 +00:00
christos
b1d98f9166 add crypto/external to the build. 2009-06-07 22:46:12 +00:00
apb
c4ad9aa7fc Make clean_METALOG in distrib/sets early in the build, to ensure that
the METALOG does not grow without bounds on multiple MKUPDATE builds.
(Previously, sanitise_METALOG in distrib/sets/Makefile used to do
something like this near the end of a build.)
2009-04-23 09:43:49 +00:00
tsutsui
f32f514ecd Remove an explicit BUILDTARGETS do-compat-external-lib before do-build
because now src/compat/Makefile descends there and no particular
dependency on 32 bit compat external libs during do-build.
2009-04-15 10:18:34 +00:00
sketch
0ed32f1081 Disable grep host tool and unbreak NetBSD build until I can come up with a
clean fix.
2009-02-25 22:28:36 +00:00
sketch
bb0a3b607e Use awk and grep host tools where required. 'build.sh release' now works
on Solaris (but only with HOST_CC=/usr/sfw/bin/gcc for now).
2009-02-25 20:38:30 +00:00
jmmv
b5e5aa9ff1 Add the top-level do-compat-external-lib target that mimics
do-external-lib so that we can build the compat libraries for
ATF.  Also add compat/external/lib/Makefile following the same
example of external/lib/Makefile, which descends into the
external libraries and builds them.
2009-01-19 07:19:09 +00:00
pooka
3427000fad Build kernel modules the same time as the rest of the system libraries. 2008-12-30 22:18:11 +00:00
cube
7f4672798d Invoke postinstall with the environment variable MAKE set up to the relevant
value, so that postinstall picks up correct values.
2008-12-05 19:02:54 +00:00
mrg
9c8df5ee67 - retire MKXORG from public use
- introduce X11FLAVOUR to choose src/x11 vs src/external/mit/xorg
  for the X11 to build if MKX11=yes is set.  it takes the values
  of either Xorg or XFree86.
- default to Xorg on alpha, i386, macppc, shark, sparc and sparc64
- remove MKXORG_WITH_XSRC_XSERVER, unused and never useful
2008-11-09 23:02:28 +00:00
mrg
bafe7cb90b - enable 32-bit library builds on amd64 and sparc64
- add 3 new top-level targets:
    do-compat-lib-csu
    do-compat-libgcc
    do-compat-lib-libc
  and run them before "do-build" if ${MKCOMPAT} != "no"
2008-10-27 22:32:51 +00:00
apb
c57a72c85c Add a do-top-obj target, which builds the top-level obj directory.
This uses the new NOSUBDIR support in bsd.subdir.mk.

Insert do-top-obj near the beginning of BUILDTARGETS.  The first few
items are now:
    cleandir:        cleans the tree.
    do-top-obj:      creates the top level object directory.
    do-tools-obj:    creates object directories for the host toolchain.
    do-tools:        builds host toolchain.
    obj:             creates object directories.

Also improve a comment and split a long line where SUBDIR is set from
_SUBDIR.
2008-10-25 15:03:44 +00:00
apb
66aea1d2dd Defer the "make obj" step until after tools are built and installed.
There may be commands embedded in "!=" assignments that depend on tools
being available, and previously these would have printed error messages
during "make obj".  They may still print error messages during "make
cleandir", which (if it is performed at all) is performed before tools
are built.
2008-10-22 17:37:16 +00:00
pooka
11a1b3f96a add do-sys-rump-net-lib 2008-10-16 09:43:12 +00:00
jnemeth
39b2f9c158 PR/39687 - Henning Petersen -- comment typo 2008-10-03 18:09:48 +00:00
lukem
d6e6997551 Improve support for MKXORG!=no to enable builds into external/mit/xorg.
This will be mutually exclusive to MKX11!=no.
2008-08-28 07:21:49 +00:00
gmcgarry
1dcc3caa38 Build pcc and pcc-based crtstuff if using pcc compiler. 2008-08-24 05:56:20 +00:00
pooka
bdf6e0b034 Install rump libraries and utilities to the base system and remove the
private non-installed build infrastructure from sys/rump.

breakdown of commit:
  * install relevant headers into /usr/include/rump
  * build sys/rump/librump/rumpuser and sys/rump/librump/rumpkern
    from src/lib and install as librumpuser and librump, respectively
    + this retains the ability to test a librump build with just the
      kernel sources at hand
  * move sys/rump/fs/lib/libukfs and sys/rump/fs/lib/libp2k to src/lib
    for general consumption, they are not kernel-space dwellers anyway
  * build and install sys/rump/fs/lib/lib$fs as librumpfs_$fs
  * add chapter 3 manual pages for rump, rumpuser, ukfs and p2k
  * build and install userspace kernel file system daemons if MKPUFFS=yes
    is spexified
  * retire fsconsole for now, it will make a comeback with an actually
    implemented version shortly
2008-07-29 13:17:40 +00:00
mrg
323076d1fa if MKXORG != no, use external/mit/xorg subdir instead of x11 subdir for
the mk-x11 target.
2008-07-29 04:49:43 +00:00
lukem
1a34d8be07 Descend into external.
Add 'do-external-lib' target to build external/lib "early"
2008-05-22 14:13:58 +00:00
lukem
b08050d67a Consistently document RELEASEDIR/RELEASEMACHINEDIR. 2008-03-18 04:24:38 +00:00
jmmv
4d9b8b6a50 Add the tests.tgz set
This adds a new tests.tgz set to releases which includes all the tests
for the system.  It is important to note that this set does not rely on
comp.tgz: a user of the system can run the tests without having the
development tools installed, which can be useful in a production machine.
2007-11-12 15:06:45 +00:00
pavel
43402af054 Do not abort on exit code 1 from postinstall check, this is expected.
Reported, fix suggested and tested by David Holland.

(Why does "make build" invoke postinstall check on destdir is another
question, it does not seem to have much sense.)
2007-10-07 16:35:21 +00:00
lukem
b698472136 Provide 'do-libgcc' to build gnu/lib/crtstuff${LIBGCC_EXT} (if necessary)
and then gnu/lib/libgcc${LIBGCC_EXT}.
Makes it easier to cut&paste from the list of targets built with 'make build'.
2007-09-07 04:20:44 +00:00
jnemeth
a186842ea2 Add an iso-image-source option which does the same thing as iso-image but
includes source sets as well.  The infrastructure for this was already
there, although it needed a bug fix.  Will look at adding arbitrary
directories next.
2007-08-30 05:30:02 +00:00
bouyer
fee07bcfd4 Add an iso_image target (iso-image as a target name doesn't play well with
bsd.subdirs.mk) in distrib/makefile, which builds an iso image for $MACHINE
with binary sets, stored in ${RELEASEDIR}/iso. The image is bootable for:
alpha, amd64, cats, i386, pmax, sgimips, sparc, sparc64, sun3, vax.
mac68k/macppc no there yet because of missing feature in makefs.

call iso_image in distrib/ for iso-image in the top Makefile.
2007-03-06 21:56:47 +00:00
dbj
fca8eb80dc don't filter out .WAIT when converting from _SUBDIR to SUBDIR 2006-09-07 03:51:44 +00:00
mrg
db19e89e04 remove support for building (with) GCC 2.95. also:
- always install <stdbool.h>
- don't generate a fake one for vax / gettext.
2006-06-02 22:16:18 +00:00
mrg
0db1500b43 retire HAVE_GCC3/HAVE_GCC4 and introduce HAVE_GCC that is set to 2, 3 or 4. 2006-04-07 19:38:58 +00:00
apb
21078fc390 * Add an "iso-image" target in the top level Makefile,
which invokes make iso-image in the etc directory.
* Add an "iso-image" action in build.sh, which
  invokes make iso-image.
* Document the above in doc/BUILDING.mdoc.
* Re-generate BUILDING.

Approved by christos
2006-01-28 21:34:07 +00:00
dsl
0f1b985d1a Add .MAKE to all targets that use ${MAKEDIRTARGET} otherwise make closes
the job-token pipe and the sub-makes have their own '-j n' processes.
As well as giving unexpected parallelism, it makes it impossible to stop
the build promptly on errors.
2006-01-21 19:01:15 +00:00
apb
d470eb7715 Add a new "syspkgs" target, which simply chains to the "syspkgs" target
in distrib/sets/Makefile.

Reviewed by agc
2006-01-04 15:30:02 +00:00
lukem
c9ae22c9c0 Modify "release" to invoke "make distribution" instead of "make build",
so that the "obsolete file removal" functionality of "distribution" is used.
Fixes build problems numerous people have experienced with MKUPDATE=yes
and the "release" target.
2005-08-25 02:04:39 +00:00
lukem
d2a9aaa7cf use usr.sbin/postinstall/postinstall instead of etc/postinstall 2005-04-17 15:18:34 +00:00
lukem
65a97445c7 correct the comment describing the build order 2005-01-01 10:32:39 +00:00
tacha
8c200b07b6 DO do-gnu-lib-crtstuff${LIBGCC_EXT} only when ${HAVE_GCC3} != "no",
since we don't have crtstuff subdirectory.
2004-09-02 02:02:38 +00:00
thorpej
8d13a4aafe Switch to using GCC's supplied crtbegin / crtend files. 2004-08-28 00:18:38 +00:00
lukem
67ea767431 The do-lib-libdes BUILDTARGET is unnecessary now we have the DEPLIBS
support that I added to src/lib/Makefile.inc.
2004-07-30 07:05:11 +00:00
lukem
fe7056555c Move '${MAKEDIRTARGET} x11 distribution' from Makefile::distribution to
etc/Makefile::distribution, and only perform if ${MKX11}!=no.
Should fix a problem experienced by Alistair whilst doing a "make release".
2004-05-17 07:00:16 +00:00
lukem
46ebb2f9d6 Perform 'make distribution' in ./x11/ as part of the distribution target. 2004-05-16 10:27:21 +00:00
lukem
f1b860ea33 Convert lines of the form
(cd ${.CURDIR}/somedir && ${MAKE} AVAR=value atarget)
to
	${MAKEDIRTARGET} somedir atarget AVAR=value
which results in a "prettier" display of these operations
2004-04-13 12:43:12 +00:00
skrll
b263dbdd73 Be more gcc like in the way we deal with libgcc so that sh3/hppa millicode
and exception handling have a chance of working properly.

        - creates libgcc, libgcc_eh and libgcc_s

        - updates LIBGCC_SPEC to use them appropriately.

          There's a hack in here at the moment with respect to libgcc_so in that it
          is preferable to link against libgcc_so will only when -shared-libgcc is
          specified (the c++ frontend does this automatically.) Configurations where
          LINK_EH_SPEC is defined already do this. The gcc configuration for
          NetBSD/alpha and another NetBSD platform (I forget which) actually define
          LINK_EH_SPEC probably by accident rather than design.

        - updates share/mk to use the compiler's knowledge of what needs linking into
          libraries and executables. This removes an hppa hack.

        - updates the sets for the newly created libgcc* files.

	- support for linking against the _pg version of libgcc has been removed.
2004-02-15 19:52:27 +00:00
lukem
9163f6b3c7 MAKEVERBOSE support for build-docs 2004-02-06 23:12:56 +00:00
lukem
cce7832fa3 implement params with cd etc && make params 2004-01-27 04:22:25 +00:00
lukem
8dfb23932f Apply the .PHONY attribute where appropriate.
Fixes [toolchain/21453] from rafal@.
2004-01-27 01:45:07 +00:00
lukem
04be9e71df Implement do-x11, to run "make build" in ./x11/
If MKX11 != no, add "do-x11" to BUILDTARGETS.

Say ``hello'' to Imakeicide.
2004-01-08 07:01:06 +00:00