Up to [DragonFly] / src
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
ports is gone: remove use of PORTSSUPFILE.
Link libarchive against libbz2 and libz to be compatible with upstream. In this way third party applications linking against libarchive don't need a special care.
Remove fortran from base.
Set a sensible mode on /etc/upgrade/Makefile_upgrade.inc .
Merge: Remove some more leftovers from _ntp and add _sdpd where necessary.
Remove some more leftovers from _ntp and add _sdpd where necessary. Reviewed-by: swildner@
o Install Makefile_upgrade.inc to /etc/upgrade instead of /var/db. Requested-by: dillon@ o Install the file really _after_ installworld this time. Thanks to corecode@ for the report. This unbreaks buildworld o Add an entry to the mtree file for /etc/upgrade o Print a short message before deleting files
Add Makefile_upgrade.inc to the tree. This file contains all files
which are obsolete as of now and can be removed by a 'make upgrade'
run. This should prevent further polluting of etc/Makefile with
rm -rf $foo statements.
The file is installed by 'make installworld' to ${DESTDIR}/var/db
and gets parsed by 'make upgrade'. If a user exchanges the two commands
by accident, 'make upgrade' prints a warning and doesn't remove any
files. The upgrade file itself is removed after a successful run.
- Add THREAD_LIB to make.conf - Export LIBTHREAD in bsd.libnames.mk based on THREAD_LIB - Bail out earlier, if NO_LIBC_R is defined and THREAD_LIB is "r_c" - Set DPADD to LIBTHREAD in lib/libpthread/Makefile # Default thread library is still lib/libthread_xu
Unbreak buildworld: - Add libthread_xu to prebuilding libraries in top level Makefile.inc1. - Put libthread_xu before libpthread in lib/Makefile, add comment about it. - Fix typo in lib/libpthread/Makefile - Add XXX-commented out DPADD in lib/libpthread/Makefile; a more 'complete' solution for the default thread library naming is needed.
Rewrite of the CAM error recovery code. Some of the major changes include: - The SCSI error handling portion of cam_periph_error() has been broken out into a number of subfunctions to better modularize the code that handles the hierarchy of SCSI errors. As a result, the code is now much easier to read. - String handling and error printing has been significantly revamped. We now use sbufs to do string formatting instead of using printfs (for the kernel) and snprintf/strncat (for userland) as before. There is a new catchall error printing routine, cam_error_print() and its string-based counterpart, cam_error_string() that allow the kernel and userland applications to pass in a CCB and have errors printed out properly, whether or not they're SCSI errors. Among other things, this helped eliminate a fair amount of duplicate code in camcontrol. We now print out more information than before, including the CAM status and SCSI status and the error recovery action taken to remedy the problem. Obtained-from: FreeBSD
Add a build option (NO_GCC34) to prevent building gcc version 3.4. This does not attempt to remove gcc-3.4, only to prevent it from building.
Define TARGET_PLATFORM matching TARGET_ARCH. This way we don't have to specify TARGET_ARCH *and* TARGET_PLATFORM for crossbuilds. Of course this should be generalized, etc, but as we just have two platforms for now, this is no problem yet.
Remove NO_GCC41 make option.
Drop binutils215.
Build libc_r before other libs, particularly before libpthread. Fixes world breakage reported by tuxillo, aggelos and chlamydia.
Hook binutils-2.17 into the build.
Build gcc41 per default. This can be disabled with NO_GCC41 in make.conf. This does not make gcc41 the default compiler. To do so, you still have to set CCVER=gcc41 in make.conf or in your environment.
Rename /usr/src/sys/machine to /usr/src/sys/platform. Give the platform name its own variable, MACHINE_PLATFORM, instead of trying to use MACHINE to name it. Adjust the build infrastructure to match. Revert MACHINE back to its original definition and remove uname shims. This removes confusion with third party software. This means a pc32 build has MACHINE=i386 and MACHINE_ARCH=i386, and a vkernel build also has MACHINE=i386 and MACHINE_ARCH=i386. The new MACHINE_PLAFORM would be pc32 for a pc32 build, and vkernel for a vkernel build. Adjust all kernel configuration files to specify platform, machine, AND machine_arch.
Remove traces of gcc40
Create startup files from the GCC sources and drop our versions. This places the startup files into the GCC specific lib dir. A short overview is given in lib/csu/README. This fixes issues with gcc41 and static binaries.
uname(1) is still used in a few places during buildworld, put it back as a boot strap tool. Submitted-by: sephe@
Remove unused _games.
Remove vgrind and nvi as build tools. ex was used to reorder termcap, which seems unnecessary vgrind was only used for share/doc Wondering-together-with: swildner
- Unhook usr.bin/uname from boot strap tools building, because it is not used as boot strap tool at all. - Add hw.machin_uname, which is "i386" on pc32(machine)/i386(cpu). It is used by uname(1) -m option and uname(3), since most third party application understand "i386" much better than "pc32". In uname(3), fallback to hw.machine, if hw.machine_uname does not exist, so we can stay compatible with old kernel which does not have hw.machine_uname. Implementation-suggestions-from: dillon@ Approved-by: dillon@
Don't break buildworld for upgrading users: "i386" is no valid platorm name anymore, so we automatically convert it to "pc32". Remove checks for build/installworld, as sys.mk deals with fixing now. Discussed-with: pavalos DragonFly-issue: http://bugs.dragonflybsd.org/issue379 (among others)
Add a check for installworld (similar to the buildworld check) to ensure that MACHINE is set to 'pc32' before installing world. Reported-by: Thomas Schlesinger, Rumko and several other people
buildworld depends on hw.machine exported from the kernel being correct. This designation has recently changed from i386 to pc32. Add a check to buildworld to report the problem and to tell the user how to fix it. Reported-by: YONETANI Tomokazu <qhwt+dfly@les.ath.cx>
Major kernel build infrastructure changes, part 2/2 (user). These changes are primarily designed to create a 2-layer machine and cpu build hierarchy in order to support virtual kernel builds in the near term and future porting efforts in the long term. * The make program now pulls MACHINE, MACHINE_ARCH, and MACHINE_CPU from the kernel hw.machine, hw.machine_arch, and hw.machine_cpu sysctl variables, unless overridden by environment variables. * The config program now generates additional softlinks in the kernel build directory: machine points to the platform architecture header files machine_base points to the baes of the platform architecture directory. cpu points to the cpu architecture header files cpu_base points to the base of the cpu architecture directory Additionally, the config program generates forwarding header files as includes/machine/*.h. Any cpu architecture header files that are not overridden by the platform architecture are generated in this directory. The kernel build's Makefile adjusts the -I paths to effectively merge machine/ and includes/machine/, presenting a uniform <machine/*.h> include file architecture to the kernel build. The kernel build's Makefile now automatically exports MACHINE and MACHINE_ARCH as environment variables. The kernel build's Makefile now makes opt_*, use_*, and IF header files directly available to the module build subsystem so the module build subsystem does not have to generate them in each module subdirectory. * Kernel configuration files now require both a 'machine' and a 'machine_arch' directive. Typically: machine pc32 (subject to change) machine_arch i386 * /usr/include/cpu has been added to augment /usr/include/machine. The buildworld infrastructure also automatically merges any <cpu/*.h> header files that were not overridden by the <machine/*.h> header files into /usr/include/machine. Note that direct access to /usr/include/cpu is not recommended. * A number of weird cases that generate extranious 'machine' softlinks (for <machine/*.h> header access) have been removed. * The MACHINE_ARCH default to i386 has been removed. If the make program does not define the MACHINE_ environment and sys.mk is included, sys.mk will now fail with an error. * cpdup has been added to the bootstrap tools.
Add advice if a kernel config file cannot be found to remind people that the config directory has changed.
Reorganize the way machine architectures are handled. Consolidate the kernel configurations into a single generic directory. Move machine-specific Makefile's and loader scripts into the appropriate architecture directory. Kernel and module builds also generally add sys/arch to the include path so source files that include architecture-specific headers do not have to be adjusted. sys/<ARCH> -> sys/arch/<ARCH> sys/conf/*.<ARCH> -> sys/arch/<ARCH>/conf/*.<ARCH> sys/<ARCH>/conf/<KERNEL> -> sys/config/<KERNEL>
Welcome the build infrastructure for gcc41
Remove DESTDIR from MAKEFLAGS to unbreak make world
* s/FreeBSD/DragonFly/ * Fix spelling & grammar mistakes. Submitted-by: Trevor Kendall <trevorjkendall@gmail.com>
The pread/preadv/pwrite/pwritev system calls have been renamed. Create wrappers in libc for the renamed functions.
Fix brain-o. Noticed-by: Alexey Slynko, swildner
Alias NO_CLEAN with NOCLEAN. I just get bitten by this every second build.
- Don't build PIC in btools - Build statically linked crosstools - Remove sysinstall
Remove bin/ls from the bootstrap-tools.
Add usr.bin/stat to bootstrap-tools: Make boot2 use stat for getting the filesize instead of ls.
* Generally change NOXXX to NO_XXX, similar to work done in FreeBSD. * Revamp the NO_XXX documentation in make.conf Submitted-by: "Carl A. Schmidt" <carl@carlschmidt.net>
Add gcc40 build hooks. Gcc40 isn't built per default, you will have to enable it by adding WANT_GCC40=yes to make.conf.
Don't build catfiles in the bootstrap phase. Downgrading from -Devel to -Release otherwise results in an error with gencat.
Require HEAD users to upgrade to 1.3.5 before running installworld, due to the dirent changes (otherwise the 'find' binary will fail half way through the installworld).
Require 1.3.4 before installworld.
FreeBSD and NetBSD both use derivates of Sun's math library. On FreeBSD, it's been put into lib/msun, on NetBSD it is under lib/libm. Since DragonFly misses a lot of the changes which went into both and I consider the NetBSD version cleaner, switch to that. Biggest difference to NetBSD is the omission of wrappers for non-IEEE757 floating point support. There's no point in supporting anything but IEEE 757 and that saves at least a function call per math entry point. Addtionally, important the fpclassify, isinf, isnan and signbit functions into libc as required for C99. Remove the support for non-POSIX operation. matherr is pointless and wasn't really supported anyway.
Instead of duplicating the Kerberos tools, use a single version. Switch to host tools, since they are running on the build system, not the target platform. Add an explicit dependency of buildincludes to depend in kerberos5/tools to ensure that the tools are available in phase 4a.
Switch to OpenPAM. The PAM modules are now installed in /usr/lib/security and versioned, programs using LinuxPAM continue to work for that reason.
convert ln to ${LN}
Only do the OS version requirements check if DESTDIR is non-existant, empty, or "/". Otherwise we cannot build nrelease on boxes with older kernels. Reported-by: "Simon 'corecode' Schubert" <corecode@fs.ei.tum.de>
Fix a bugaboo in the last commit. The wildcard patterns were not accounting for kernel versions older then 1.3.1.
Stop branding DragonFly binaries with the FreeBSD ABI. Increment __DragonFly_version to get this into programs, we can do sanity checks on it later.
Do not allow installworld to proceed if the currently running kernel contains the TLS fork bug.
The library compat Makefile needs 'tail'.
Make a special libc version for RTLD which doesn't use TLS as it will soon be added. Don't install it, keep it in the build tree. Also build the rtld itself without TLS dependencies. Stop building and installing the normal libc as PIC archive. Discussed-with: dillon
Unhook gperf, it was only used by gcc2.
Complete Citrus import. Import message catalog implement from NetBSD. Remove external visible rune interface. Obtained-from: Project Citrus / NetBSD
Make osreldate.h building happing by explicitly using /bin/date. We have to use system's date or we would have to hack the default string in.
date as bootstrap tool doesn't make sense, remove it.
Unhook GCC 2.95 and Binutils 2.12 from build.
Stop building libkeycap, PCVT is gone.
Don't build groff as buildtool, it's not needed anymore.
Update ncurses to version 5.4. The framework has been written from scratch and I moved everything into lib/libncurses to centralize the build process for it. The man-pages is modified by the build in the ncurses paged so I have added the modified man-pages here.
Remove elf2exe.
Don't build sysctl as bootstrap tool. This helps us avoiding FreeBSD 4 build problems. Suggested-by: Chuck Tuffli <chuck_tuffli@agilent.com>
Remove the support for lib/csu/${MACHINE_ARCH}-elf.
This should also prevent some people from shooting themselves with
partly cleaned sources.
Move libutil up above KERBEROS5 libs and remove the duplicate entry when WITH_KERBEROS5 is defined during build.
Update the kerberos5 build framework to work with heimdal 0.6.3. Based on: Kerberos5 build framework from FreeBSD.
Unhook Perl from build.
Switch from binutils 2.14 to binutils 2.15.
Remove file from build_tools, since it serves no build tool purpose.
Revert from previous commit, seems to have to be solved elsewhere.
Add libmagic to _prebuild_libs
Add a 'preupgrade' target which creates any missing users and groups (relative to FreeBSD-4) that are required before installworld can be run. Adjust the installworld prechecks to bail if required users or groups do not exist, with a message pointing to the new preupgrade target. The 'make upgrade' target will automatically run the preupgrade target. Required users: smmsp, _pflogd, _ntp. Required groups: smmsp, authpf, _pflogd, _ntp Devon noted that the 'pw' program seems to do what we need here.
Add libarchive to prebuilt libraries.
Save and restore the 'version' counter file when doing a full buildkernel or nativekernel target so the counter is not reset each time. Note that the quickkernel target will increment the counter only if something has changed. Reported-by: walt <wa1ter@myrealbox.com> Make some minor FBsd->DFly 'update' target cleanups. Submitted-by: Michal Belczyk <diavul@bsd.krakow.pl>
Switch to libz-based gzip.
Since there isn't an authpf user we'll have to grep for the authpf group member. Noted by: walt <wa1ter@myrealbox.com>
Add a section to UPDATING describing the users and groups that might have to be added. Remove the authpf user requirement. Only an authpf group is required. Reported-by: esmith <esmith@patmedia.net>
Check that the authpf user and group are installed before starting the installworld process.
Change the default handling for kernels built with debugging info (DEBUG=-g).
Since GENERIC includes this make option, this applies to most kernels.
Previously, installed kernels were stripped of their debug information and
installed modules were not. With this commit, the debug info is left intact
in the installed kernel and debug information is stripped from all backup
copies that are made (kernel.old, modules.old). Developers using DEBUG=-g
(which is most) may actually see root disk space go down due to the stripping
of kernel.old and modules.old (-~30MB), even though /kernel will be +~13MB
larger.
Two new makeoptions are available for specification in your kernel config or
when you run the buildkernel/nativekernel/installkernel target to make.
INSTALLSTRIPPED=1
The installed kernel and modules will be stripped of debug info. This
option effectively reverts you to the pre-commit state of things.
INSTALLSTRIPPEDMODULES=1
The installed modules will be stripped of debug info. The kernel will
be left with debug info intact.
What this means is that developres will no longer have to stuff a debug
kernel off somewhere to use later instead of a crash, savecore will copy
a debuggable kernel into /var/crash instead of a stripped kernel, and
snapshot and release CD's will have debug kernels and working crash dumps
right out of the box. The memory impact of the debug kernel is zero since
the debug info is not loaded, and the run-time impact of this change is
also zero.
The intention is multi-fold:
* To make it easier for inexperienced users to provide meaningful debug
info to developers when posting bug reports, especially during release
cycles.
* To not have to make copies of debug kernels for debugging purposes.
Such copies often get out of sync with the actually running kernel
and savecore does not know about them.
* To make the debugging environment more uniform, less confusing, and
easier to use.
Switch patch(1) from GNU to BSD version.
Make the buildkernel and nativekernel targets completely wipe and regenerate the kernel object hierarchy. Add a quickkernel target which does not wipe the object hieracrhy and which skips the make depend step. quickkernel can be run on kernels previously built with buildkernel or nativekernel. This brings the operation of our kernel building targets in-line with the operation of our world building targets.
Add bzip2 to the bootstrap tools list. The compat libs (if enabled in make.conf) need it.
Improve compatibility with older FreeBSD-4.x systems when cross-building the DragonFly world by having the bootstrap and build tools use the bootstrap/buildtools binaries. In particular, we need the -i option to patch to work to properly build csh.
Unhook gcc-3.3 from the buildworld process. This also removes the gcc3 leftover files when `make upgrade` is run.
Unbreak the buildworld by fixing a cc_tools dependancy on cc_prep in Makefile.inc1 instead of trying to create a dependancy in cc_tools. The object tree had not yet been created for cc_prep and this caused files to be generated in /usr/src, amoung other things.
Hook gcc 3.4 into the buildworld. Rearrange HOST_CCVER so it becomes the
responsibility of the Makefile element that is overriding CCVER. Get rid
of the obsolete MY_CCVER magic. Fix improper use of ${.TARGET} in
cc34/cc_tools/Makefile.tools. Do not try to override _CPUCFLAGS in
bsd.hostprog.mk, which doesn't handle the generic .nx/.no case. Instead
remove -mtune, -mcpu, and -march options in NXCFLAGS and NXCXXFLAGS.
Work-by: Joerg Sonnenberger <joerg@crater.dragonflybsd.org>
Reviewed-by: Matthew Dillon <dillon@backplane.com>
Export HOST_CCVER via environment to fixate it to either the specified value or the default CCVER.
Switch from GCC-version specific crtbegin/crtend code to the version independent code. This is binary compatible with old version. The old object files are currently left in place.
Remove gawk from the build and let one-true-awk be our default awk from now on. [1] Let the bootstraping build one-true-awk and not gawk, and add maketab.nx to CLEANFILES. Submitted by: ibotty <bsd@ibotty.net> [1]
Fix buildworld. Document TOOLS_PREFIX and USRDATA_PREFIX, improve INCLUDEDIR
documentation. Modify bsd.incs.mk to not install header files if BOOTSTRAPPING
is set (for buildworld), and change lex to install its C++ header file in
${INCLUDEDIR}/c++ instead of ${INCLUDEDIR}/g++. Set DESTDIR for BMAKEENV,
set BOOTSTRAPPING for XMAKE (cross build tools). Note that DESTDIR is set
in the bootstrap-tools: target, this will be removed in a later commit.
Perl is no longer needed by buildworld/buildkernel. Submitted-by: YONETANI Tomokazu <qhwt+dragonfly-kernel@les.ath.cx>
Make buildkernel's require a buildworld to be done first, because they no longer munge the pathes to use native apps when buildworld tools aren't available. Buildkernel now tells you this and exits if it doesn't think you've done a buildworld. Add a new target, 'nativekernel', which just runs config and uses native tools to build the kernel. 'nativekernel' and 'buildkernel' use the same object directory but are mutually exclusive. If you run one, then try to run the other, it will wipe the directory and start over.
Fix a missing makewhatis related change so buildworld works again. Reported-by: Chris Pressey <cpressey@catseye.mine.nu>
Add hexdump and kill to the bootstrap list. Correct the tools path used during a buildkernel. There may still be other issues.
buildworld subsystem update addendum. Hopefully fix buildkernel, and fix the GROFF/TROFF environment paths (should solve an infinite loop occuring in troff when building from FreeBSD-4.x).
This represents a major update to the buildworld subsystem.
Compartmentalize the bootstrap/buildtools, the cross-build setup,
and the world stage. /usr/obj/usr/src is now far more readable
(e.g. /usr/obj/usr/src/{btools_i386,ctools_i386_i386,world_i386}).
Use a completely private command path for the world stage of the build.
The bootstrap/buildtools stage compiles all required system programs
(like rm, ln, chmod, etc). At the moment the build compiles everything
it needs, but this can be augmented later to 'cp' the required binaries
into btools_<arch> instead of building them, including potentially copying
the compiler binaries so the ctools_<arch> build could use a private
path too).
The 'buildworld' target now properly removes all object modules for
all major stages. Several new targets have been added to reduce
build times, the most useful of which is 'quickworld', which skips
the btools and ctools stages (they must have already been built).
sys.mk has been augmented to support .nx binaries and .no object
modules, which are built using ${NXCC} and friends, which always uses
the system's native compiler rather then potentially using the
cross-build compiler, for generating helper programs during the build.
This way we do not have to special-case building the helper programs in
an earlier stage as FreeBSD does.
Fix a bug in 'wmake', which simulates the buildworld environment for
piecemeal compilation/testing. It was not using /usr/src/share/mk.
Add additional .ORDER: constraints to better support make -j N
(incomplete). Note that recent changes to the DragonFly scheduler make
it more likely for buildworld to trip over parallel make races.
TOOLS_PREFIX was used to generate cross-compiler directory targets
for exec'd utility binaries and access to libraries and include
files. However, in the new compartmentalized breakdown the cross
compiler's utility binaries will reside in ctools_* while the
include files and libraries are expected to be installed and accessed
in world_*. Add a USRDATA_PREFIX which defaults to TOOLS_PREFIX to
allow the cross compilation stage to separate the two entities.
Undo part of the last commit. OBJFORMAT_PATH controls how the cross compiler is exec'd, it is necessary for buildworld to find the correct compiler and include file base directory.
Start removing the old build infrastructure for the a.out binaries. MOst of the interface had already been depreciated for a while now and we only had remnants remaining.
binutils214 stage 2/4.
* Normalize binutils212 and binutils214. Remove /usr/bin/gcc{2,3}/*
and move those binaries to /usr/libexec/gcc{2,3}. Adjust objformat
to suit.
* Hack up contrib/gcc3 to accomodoate library path requirements and fix
STANDARD_BINDIR_PREFIX. Add a missing trailing '/' in STANDARD_EXEC_PREFIX.
* Adjust /usr/src/etc/Makefile (upgrade_etc) to remove old GCC and BINUTILS
junk.
* Cleanup etc/mtree/BSD.usr.dist
* Only build gcc2 for non-cross-compiled i386 native builds. Do not
build libc_r for non-i386 architectures for now. Allow on sysctl based
setproctitle() updates for non-i386 architectures for now.
* Move ldscripts from /usr/libdata/gcc{2,3}/ldscripts into
/usr/libexec/binutilsXXX/ldscripts and remove /usr/libdata/gcc{2,3}.
* GCC vendor obrien->dillon, change TARGET_OS in various places from
freebsd -> dragonfly.
* Consolidate config.h differences for cross builds in the Makefiles so
we need only have one config.h for binutils214/as.
* Cleanup and fix default target BFD for the assembler and linker when
cross-building.
* Build both the 32 and 64 bit support BFD's for binutils214 even if
just doing a native build.
* Remove a bunch of alpha junk (incomplete).
* Note gnu/usr.bin/binutils214/libbfd/dfly_targmatch.h contains aliases
to match dragonfly BFD targets. Some are probably unnecessary but I
had to move on.
* Bring in a bunch of AMD64 related files (incomplete).
* Update rpcgen to locate cpp with the current path instead of /usr/bin/cpp.
Add rpcgen to the buildworld bootstrap tools.
Obtained-From: A good chunk of the amd64-specific files were adapted from
FreeBSD-5 (authored by Peter Wemm and others).
Readd ending '\' so it compiles the cross build tools
Remove genassym and gensetdefs from the cross build as well.
This should hopefully fix current issues with bootstrap buildworlds from
4.x and older versions of DFly, and with user-specified CCVER and CPUTYPE
environment variables.
Explicitly override CCVER in buildworld in a backwards compatible fashion
when building gcc2's and gcc3's startup libraries. Also override CCVER
in gnu/lib/gcc{2,3}/Makefile when bootstrapping from older DFly or FBsd
systems which do not implement the '.makeenv' make directive.
In bsd.init.mk detect when CCVER is changed by a Makefile or Makefile.inc and
rerun bsd.cpu.mk to update the _CPUCFLAGS set, which is assigned in bsd.cpu.mk.
We relay on the fact that ${} variables are not resolved until rules accessing
them are actually run.
Clean up objformat (no operational changes).
Add back a directory path that buildworld needs, remove /usr/libexec/gcc2 from mtree.
Move binutils from /usr/libexec/gcc2/{aout,elf} to
/usr/libexec/binutils212/{aout,elf}.
Move GCC 2.95.4 C++ headers from /usr/include/g++ to
/usr/include/c++/2.95.
Add GCC3 to buildworld.
Major GCC surgery. Move most compiler-specific files into named
subdirectories and do a major overhaul of the front-end binaries in /usr/bin.
/usr/libdata/gcc -> /usr/libdata/gcc2
/usr/libdata/ldscripts -> /usr/libdata/gcc2/ldscripts
/usr/libexec/{all_gcc_bins} -> /usr/libexec/gcc2/*
/usr/libexec/{elf,aout}/* -> /usr/libexec/gcc2/{elf,aout}/*
OBJFORMAT_PATH has been changed from a full path to a base path, because
the objformat binary (hardlinked to most compiler related binaries in
/usr/bin) must now interpret the command name and use one of two different
paths to find the actual binary. Previously certain gcc binaries, such as
'cc' and 'cpp', were directly installed in /usr/bin. That is no longer the
case.
Objformat now supports the GCCVER environment variable for vectoring the
compiler version. This will be used to support gcc3 and other compilers.
* Use id(1) instead of grep(1) to detect the presence of the smmsp user/group. This fixes the check for users with smmsp in NIS instead of their local files. Idea taken from FreeBSD
Add nreleae back in. It's a dummy target designed only to ensure that
the proper obj dir infrastructure is created so the nrelease Makefile's
can use ${.OBJDIR}.
Adjust the nrelease Makefile's to perform port checks only when actually
building the release.
* buildworld doesn't need to look at nrelease. This was requiring things like mkisofs and cvsup to complete a basic buildworld.
Introduce /usr/src/nrelease which begins to implement the new 'live CD' ISO builder idea. This initial commit is capable of creating bootable ISO images which contain a complete working distribution but will boot into a login prompt (login as root) rather then sysinstall or a sysinstall-like utility. Development is ongoing. Critical subdirectories are remounted as MFS so most normal commands, including vi, should work just fine.
Add a wmakeenv target for use by the wmakeenv script to aid in debugging buildworlds.
Add the 'wmake' script to /usr/bin and wmake support to Makefile.inc1. This script allows you to build any element within /usr/src using a buildworld environment and is extremely useful for debugging or development work. Instead of having to restart the buildworld (even with -DNOCLEAN -DNOTOOLS it can take a while) this script can be used to immediately build whatever piece of the world you are working on.
Fix the buildkernel target.
Kernel tree reorganization stage 2: Major cvs repository work. This stage includes source code adjustments to make buildworld work again, including extensive additional work on the /usr/include hierarchy.
Remove kerberosIV from the build. Both normal builds and kerberos5 builds have been tested to work.
Remove NOSECURE which no longer serves a purpose. Note: FreeBSD also removed NOSECURE. Submitted-by: Jeroen Ruigrok/asmodai <asmodai@tendra.org>
Add the DragonFly cvs id and perform general cleanups on cvs/rcs/sccs ids. Most ids have been removed from !lint sections and moved into comment sections.
import from FreeBSD RELENG_4 1.141.2.62