summaryrefslogtreecommitdiffstats
path: root/Makefile.inc1
Commit message (Collapse)AuthorAgeFilesLines
* Make NO_CXX, really mean NO_CXX.obrien2002-05-071-0/+2
|
* Sorted the directories in the rule for the includes target as much asbde2002-04-301-23/+23
| | | | possible.
* Milestone #2 in cross-arch make releases. They now work!ru2002-04-301-11/+8
| | | | | | | | | You need to set TARGET_ARCH and possibly TARGET, the same way you normally do it for a cross build(7). Renamed `distribworld' to a more natutal `distributeworld'. Put pwd_mkdb(8) under ${INSTALLTMP}; for `distributeworld'.
* Back out part of the revision 1.261: "etc" indeed needs to beru2002-04-301-3/+5
| | | | | | last for "distribute" to succeed -- the "make makedb" part of the etc/Makefile:distribution target should be the last thing made.
* Make crunchide(1) a cross-tool; needed for cross-arch "make release".ru2002-04-301-1/+2
| | | | Note that a.out is only supported for the non-cross i386 case.
* Parallel "make release" fixes.ru2002-04-291-7/+0
|
* Milestone #1 in cross-arch make releases.ru2002-04-261-17/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* Despite the fact that it is documented in the handbook, the release notes,gshapiro2002-04-201-1/+18
| | | | | | | | | | | | | | | | and UPDATING and has been posted to both freebsd-current and freebsd-stable, users are still not adding the required smmsp user and group before doing an installworld. Therefore, don't let users do an installworld unless they have followed directions. Add a new installcheck Makefile target which installworld runs before actually starting the installation. This target can be used by other parts of userland as well. The first addition to the target is to check for the smmsp user and group if NO_SENDMAIL isn't defined. Others may add checks to this target as they see fit. MFC after: 1 week
* Sort _startup_libs, _prebuild_libs, and _generic_libs lists alphabetically.ru2002-04-161-21/+31
| | | | Submitted by: bde, ru
* Keep up with lib/Makefile,v 1.64 (uhh).ru2002-04-161-4/+2
|
* Fix incorrect ordering in previous commit.des2002-04-151-2/+2
|
* Add libypclnt to the prebuild library list, and record its dependency ondes2002-04-151-1/+3
| | | | librpcsvc.
* Add libypclnt to the includes target.des2002-04-131-0/+1
|
* Add a tool (and the first application of it) that could be usedru2002-04-121-51/+51
| | | | | | to automate building of libraries. Prodded by: bde
* I now don't seem to be able to reproduce the -DNOCLEAN buildworldru2002-04-111-0/+4
| | | | | | | | | | breakage with ioctl.c. The .depend file should track dependencies just fine, and the worst we can have is to miss new ioctls. But I still think it's a good idea to have -DNOCLEAN build produce the same ioctl.c as it would without -DNOCLEAN. Prodded for a long time by: bde
* Don't special case i386/pc98, replace it with the smarter logicru2002-04-111-9/+6
| | | | | | | | of setting ${TARGET} -- make it default to ${MACHINE} if we are not cross-building, and ${TARGET_ARCH} otherwise. Set MAKEOBJDIREPREFIX based on ${TARGET}, not on ${TARGET_ARCH}. This is useful if you want to cross-build pc98 worlds on i386.
* Avoid cleaning modules twice in `buildkernel'.ru2002-04-081-4/+3
|
* Bootstrap xargs(1) -- sys/conf/kmod.mk uses the new -J option.ru2002-04-081-1/+2
| | | | PR: bin/36747
* Unbreak buildworld after include/Makefile,v 1.167 commit.ru2002-04-041-2/+2
|
* Back out lots of the last commit that was committed by accident.joe2002-04-011-36/+0
| | | | | | (It's my test rig for some CVSUP,SUP code). Spotted by: Michael G. Petry <petry@NetMasters.Com>
* Install libusbhid.h during 'make includes'.joe2002-04-011-0/+37
| | | | | Requested by: jhb MFC after: 3 days
* Install sys/security/lomac/*.h to /usr/include/security/lomac/.ru2002-03-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Install sys/<arch>/include/pc/*.h to /usr/include/machine/pc/. PR: docs/29534 Install sys/netatm/*/*.h to /usr/include/netatm/*/. Don't install compatibility symlinks for <machine/soundcard.h> and <machine/joystick.h>. Three years is enough to be aware of the change, and these weren't visible in the SHARED=symlinks case. Back out include/Makefile,v 1.160 that was a null change anyway due to the bug in the path, and we now don't want to install these headers because they would otherwise be invisible in the SHARED=symlinks case. Don't install IPFILTER headers. Userland utilities fetch them directly, and they were not visible in the SHARED=symlinks case. Resurrect SHARED=symlinks in Makefile.inc1. PR: bin/28002 Prodded by: bde MFC after: 2 weeks
* Make lint(1) a cross-tool.ru2002-03-201-1/+3
| | | | | | | | | (See commit log for usr.bin/xlint/Makefile,v 1.11 for what was wrong with enabling build of lint libraries in rev. 1.12.) This fixes cross-arch compiles (running binaries for a different arch when generating lint.7 and lint libraries) and cross-branch compiles (4.x -> 5.0 buildworld should be working again).
* Fixed the NO_PERL braino.ru2002-03-201-2/+2
|
* Update for Perl 5.6.1markm2002-03-161-1/+1
|
* Allow the use of NO_PERL as well as NOPERL. The latter is going tomarkm2002-03-161-2/+3
| | | | be removed.
* 1-true-AWK has a build-tool target.obrien2002-03-061-1/+1
|
* Obviate the need to set the COMPILER_PATH and LIBRARY_PATH in Makefile.inc1ru2002-02-211-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to pick up the correct cross-tools (the compiler executables and binutils) and special linker files (crt*.o). This is now controlled by a single knob, TOOLS_PREFIX, when building cross-tools. Fixed regression in Makefile.inc1,v 1.203 (-nostdinc). This clobbered target architecture's CFLAGS with building host's CPUTYPE setting in /etc/make.conf, and had a nice but nasty side effect of exposing some (normally hidden) bugs in system headers. (Attempt to move the "-nostdinc -I..." part of CFLAGS into the new CINCLUDES (modeled after a similar CXXINCLUDES) eventually failed because hard-coding ${WORLDTMP}/usr/include to be the first in the include list does not always work, e.g. lib/libbind.) Compensate the -nostdinc removal by making cpp(1) built in the cross-tools stage to not look for <> header files in the building host's /usr/include (already committed as gnu/usr.bin/cc/cc_tools/freebsd-native.h, revisions 1.10-1.12, STANDARD_INCLUDE_DIR). : $ /usr/obj/usr/src/i386/usr/bin/cpp -v /dev/null : : Before: : : #include <...> search starts here: : /usr/obj/usr/src/i386/usr/include : /usr/include : End of search list. : : After: : : #include <...> search starts here: : /usr/obj/usr/src/i386/usr/include : /usr/obj/usr/src/i386/usr/include (Disabling the use of GCC_INCLUDE_DIR in the FREEBSD_NATIVE case would fix the duplicate above.) Get rid of the (now unneeded) -I${DESTDIR}/usr/include magic in bsd.prog.mk and bsd.lib.mk. Finish the removal of LDDESTDIR in bsd.lib.mk,v 1.55 -- we no longer have users of it. The required changes to gcc were already committed as contrib/gcc.295/gcc.c, revisions 1.23 and 1.24. Basically, this allows for the changes above plus makes gcc(1) persistent about path configuration, whether it's configured as a native or a cross compiler: : $ /usr/obj/usr/src/i386/usr/bin/cc -print-search-dirs : install: /usr/obj/usr/src/i386/usr/libexec/(null) : programs: /usr/obj/usr/src/i386/usr/libexec/elf/:/usr/obj/usr/src/i386/usr/libexec/ : libraries: /usr/obj/usr/src/i386/usr/lib/ : : $ /usr/obj/alpha/usr/src/i386/usr/bin/cc -print-search-dirs : install: /usr/obj/alpha/usr/src/i386/usr/libexec/(null) : programs: /usr/obj/alpha/usr/src/i386/usr/libexec/elf/:/usr/obj/alpha/usr/src/i386/usr/libexec/ : libraries: /usr/obj/alpha/usr/src/i386/usr/lib/ Reviewed by: bde, obrien
* The previous fix for broken -DMAKE_KERBEROS5 world was incomplete.ru2002-02-141-2/+2
| | | | | | | | | | Finish it by adding kerberos5/lib/libvers to the build-tools list. (I didn't notice it before because I tested my fix in a -DNOCLEAN environment, and static libc.a was already in ${WORLDTMP}/usr/lib, and libvers's make-print-version build tool used it for linking.) Spotted by: John Indra <maverick@office.naver.co.id>
* Fixed -DMAKE_KERBEROS5 world breakage in kerberos5/lib/librokenru2002-02-111-1/+2
| | | | | | | | | | | | | | | (make-roken is a build tool). This bug was hiding itself after a just fixed bug in cross-linker (binutuils/ld/Makefile,v 1.20). The bug was fatal for cross builds; for example, an alpha binary (make-roken) was attempted to be run on i386. Added make-roken to the list of build-tools in libasn1. It only worked because another build tool needs make-roken implicitly: (build-tools: asn1_compile: print_version.o: roken.h: make-roken). Spotted by: nectar
* Now that cross-tools ld(1) has been fixed to look for dynamicru2002-02-081-4/+8
| | | | | | | | | | dependencies in the correct place, record the fact that -lssh depends on -lcrypto and -lz. Removed false dependencies on -lz (except ssh(1) and sshd(8)). Removed false dependencies on -lcrypto and -lutil for scp(1). Reviewed by: markm
* FreeBSD 4.1 bootstrapping aid (setproctitle(3) is in -lutil).ru2002-02-081-1/+1
| | | | | | | | | | | This backs out (sort of) delta 1.18 to perl/miniperl/Makefile. Update to the ld(1) comment by peter in this revision: ld(1) built as part of the cross-tools stage of buildworld has been fixed to look for dynamic dependencies in the right place, ${WORLDTMP}/usr/lib, effective binutils/ld/Makefile,v 1.20. Approved by: markm
* gnu/libexec has gone so remove it from the most targets.paul2001-12-281-2/+0
|
* Specify the full path to mktempjedgar2001-12-231-1/+1
|
* Use a more secure method of creating the temporaryjedgar2001-12-211-3/+1
| | | | install directory.
* Move NO_WERROR from CROSSENV to BMAKE. In CROSSENV it disables it forimp2001-12-131-3/+3
| | | | | | the entire build. We only want it for the bootstrap process. Submitted by: ru
* Add NO_WERROR to the cross building environment so that we do not bail onimp2001-12-131-2/+3
| | | | | | | | warnings generated by earlier versions of the compilers when bootstrapping. Also a minor formatting nit in the tools list. Reviewed by: markm
* Get rid of unsed since rev 1.109 of lib/Makefile WANT_CSRG_LIBM define.phantom2001-12-111-12/+4
| | | | | | Also replace internal make variable _libm with hardcoded path to lib/msun Reviewed by: bde
* Just to be pedantic and more aesthetically pleasing, move the secure/jhb2001-12-061-3/+3
| | | | | top-level subdirectory prior to share/ so that the top-level directories are processed in alphabetical order.
* Add the CVS knob so it may be overridden (or have options added).obrien2001-11-191-1/+2
| | | | Submitted by: Andrea Campi <andrea@webcom.it>
* Don't cleandir also if MODULES_WITH_WORLD.matusita2001-11-161-1/+1
| | | | MFC after: 3 days
* Typo fix (my test version doesn't have this...)matusita2001-11-151-1/+1
|
* Run "make cleandir" if NO_MODULES are set, or there is no sys/modulesmatusita2001-11-151-0/+5
| | | | | | | directory. Previous commit breaks buildkernel if NO_MODULES was set. Sorry... Noticed by: mike
* "make cleandir" before building a kernel and modules.matusita2001-11-141-1/+1
| | | | | | | This will hopefully fix the recent 'I cannot compile linux module with buildworld' problem. MFC will come shortly. Submitted by: imura@ryu16.org
* Set full-path of cvsup.matusita2001-11-131-1/+1
| | | | | | | | | | | | | | | In src/Makefile rev 1.232, environment variable PATH is set explicitly to /sbin:/bin:/usr/sbin:/usr/bin. As a result, binaries located on non-standard path cannot be executed without full-path (it's the change of this revision). However, cvsup is not in our base system -- you lose if you try to "make update" without setting SUP in make.conf or command line argument. I think it is safe to assume that cvsup is located at /usr/local/bin, and it would help other people who first try to do "make update". PR: 31932 MFC after: 1 day
* Bring Gawk back. There just isn't any other POSIX compliant AWK out there.obrien2001-11-021-1/+1
| | | | The biggest thing missing from Bell-Labs AWK is the character class regexes.
* Add 'awk' to the build-tools, so that the small utility used to buildobrien2001-11-011-2/+2
| | | | one of the source files is made for the host, not target.
* Fix cross-building further.ru2001-10-251-13/+15
| | | | | | | | | | | | | | | | | | | | | | Introduce ${TARGET} defaulting to ${MACHINE} which should be set to whatever your target ${MACHINE} is, and use that with world-related stages. That is, to build pc98 on alpha, one now needs to set both TARGET_ARCH=i386 and TARGET=pc98. The scope of ${TARGET} is limited to Makefile.inc1 and cross-tools. In particular, this change was tested to fix: 1. Cross building of "alpha" on i386. The breakage was introduced by rev. 1.10 to sbin/i386/Makefile (missing <machine/cronyx.h>). 2. Descending into machine-specific subdirs for a different arch. Previously, sbin/i386 and usr.sbin/boot0cfg were descended into when cross-building "alpha" or pc98 on i386. 3. Fixes pc98 cross-building which was horribly broken, caused by not setting MACHINE correctly (most ${MACHINE} == pc98 checking Makefiles put -DPC98 to CFLAGS).
* Fix cross-building, etc:ru2001-09-291-55/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. To cross-build, one now needs to set TARGET_ARCH, and not the MACHINE_ARCH. MACHINE_ARCH should never be changed manually! 2. Initialize DESTDIR= explicitly for bootstrap-tools, build-tools, and cross-tools stages. This fixes broken header and library dependencies problem. We build them in the host environment, and obviously want them to depend on host headers and libraries. The problem with broken header dependencies for bootstrap-tools and cross-tools was already partially solved (see BOOTSTRAPPING tests in bsd.prog.mk and bsd.lib.mk), but it was still there for build-tools if the user ran "make world DESTDIR=/foo". Also, for all of these stages, the library dependencies were broken because of how bsd.libnames.mk define DPADD members. We still provide a glue to install bootstrap- and cross-tools under the ${WORLDTMP}. Removed PATH overrides for bootstrap-, build-, and cross-tools stages. There is just no reason why we would need to override it, and the hacks to clean up the ${WORLDTMP} in the -DNOCLEAN case are no longer needed with fixes from this step. That is, we now never use ${WORLDTMP} headers and libraries, and we don't use any ${WORLDTMP} installed binaries during these stages. Again, these stages depend solely on the host environment, including compiler, headers, and libraries. 3. Moved "miniperl" back from cross-tools (it has nothing to do with a cross-compiler) to build-tools where it belongs. The change from step 1 let to do this. Also, to make this work, build-tools targets of "cc_tools" and "miniperl" were modified to call "depend". Here follow the detailed explanations. There are two categories of build tools, for now. In the first category there are "cc_tools" and "miniperl". They occupy the whole (sub)directory, and nothing needs to be done in this subdirectory later during the "all" stage. They are also constructed using system makefiles. We must build the .depend early in the build-tools stage because: 1) They use (and depend on) the host environment. 2) If we don't do this in build-tools, the "depend" stage of buildworld will do this for us; wrong library and header dependencies will be recorded (DESTDIR=${WORLDTMP}) and, what's worse, the "all" stage may then clobber the build-architecture format tools (that we built in the build-tools stage) with the target-architecture format ones, breaking cross build. In the second category there are all other build-tools. They share their directory with the "main" module that needs them in the "all" stage, and they don't show up themselves in the .depend file. The portion of this fix was already committed in gnu/usr.bin/cc/cc_tools/Makefile,v 1.52. 4. "libperl" is no longer a build tool, and "miniperl" is the stand-alone application. I had to make this change because build-tools and "all" stages share the same object directory. Without this change, if we cross compile, libperl.a is first built for the build architecture during the build-tools stage (for the purposes of immediate linkage with "miniperl"). Later on, the "all" stage sees this library as up-to-date, and doesn't rebuild it. The effect is that the wrong format static libperl library is installed with installworld. 5. Fixed "includes" to install secure/lib/libtelnet headers if required. Reviewed by: bde
* Removed touch(1) from the list of installworld tools thatru2001-09-251-1/+1
| | | | | | was added in previous revision for no apparent reason. Submitted by: bde
OpenPOWER on IntegriCloud