summaryrefslogtreecommitdiffstats
path: root/Makefile.inc1
Commit message (Collapse)AuthorAgeFilesLines
* Second attempt at eliminating .text relocations in shared librarieskan2009-07-141-1/+1
| | | | | | | | | | | | | | compiled with stack protector. Use libssp_nonshared library to pull __stack_chk_fail_local symbol into each library that needs it instead of pulling it from libc. GCC generates local calls to this function which result in absolute relocations put into position-independent code segment, making dynamic loader do extra work every time given shared library is being relocated and making affected text pages non-shareable. Reviewed by: kib Approved by: re (kib)
* Back out previous revision until better tested fix is ready.kan2009-06-291-1/+1
| | | | Approved by: re (impliciti, by approving previos check-in)
* Eliminate .text relocations in shared libraries compiled with stack protector.kan2009-06-281-1/+1
| | | | | | | | | | | | Use libssp_nonshared library to pull __stack_chk_fail_local symbol into each library that needs it instead of pulling it from libc. GCC generates local calls to this function which result in absolute relocations put into position-independent code segment, making dynamic loader do extra work everys time given shared library is being relocated and making affected text pages non-shareable. Reviewed by: kib Approved by: re (kensmith)
* Allow "make update" work with SVN, if you take the time to set up yourmarkm2009-06-141-4/+20
| | | | | | | | /etc/make.conf properly. Only one SCM? I do not think this is right. Now I have fixed it.
* Revert c190007 at the request of Ruslan. It was not correct becauseimp2009-04-051-1/+0
| | | | | | | ar had been moved from cross tools to bootstrap tools when bsd ar was introduced. Submitted by: ru@
* Add usr.bin/ar to the list of cross tools. Before, when we had gnuimp2009-03-191-0/+1
| | | | | | ar, it was built in the gnu/usr.bin/binutils tree. Now it isn't. Submitted by: John Hein
* Restore missing OSREL definition that accidetnally dropped from animp2009-03-151-0/+3
| | | | earlier version of this patch.
* - Create the buildworld object directories with mtree instead of variousgabor2009-03-151-26/+8
| | | | | | mkdir calls - Remove the ugly workaroung from libc NLS, which was to create some of these directories
* - Reenable Native Language Support in libc. This feature was disabled duegabor2009-03-131-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | to possible breakages in the catalog handling code. Since then, that code has been replaced by the secure code from NetBSD but NLS in libc remained turned off. Tests have shown that the feature is stable and working so we can now turn it on again. - Add several new catalog files: - ca_ES.ISO8859-1 - de_DE.ISO8859-1 - el_GR.ISO8859-7 (by manolis@ and keramida@) - es_ES.ISO8859-1 (kern/123179, by carvay@) - fi_FI.ISO8859-1 - fr_FR.ISO8859-1 (kern/78756, by thierry@) - hu_HU.ISO8859-2 (by gabor@) - it_IT.ISO8859-15 - nl_NL.ISO8859-1 (corrections by rene@) - no_NO.ISO8859-1 - mn_MN.UTF-8 (by ganbold@) - sk_SK.ISO8859-2 - sv_SE.ISO8859-1 (The catalogs without explicit source has been obtained from NetBSD.) Approved by: attilio
* Don't put "install-info" to the list of install-tools if we'reru2009-03-131-1/+5
| | | | | | | | | installing with -DWITHOUT_INFO, otherwise one can experience a failure trying to installworld on a system that is built with -DWITHOUT_INFO (i.e., without /usr/bin/install-info). Reported by: bland MFC after: 3 days
* Implement the xdev target. When you define XDEV=arch XDEV_ARCH=arch,imp2009-03-131-0/+86
| | | | | | you can build the cross development tools and install them as $XDEV-freebsd-xxx for each tool. This allows one to use autoconf to find the tools for cross building scenarios.
* Fix build when WITH_SSP is set explicitly.ru2009-02-211-6/+7
| | | | Submitted by: Jeremie Le Hen
* Implement an idea from Sam Leffler:imp2009-01-231-0/+4
| | | | | | | | | | | | | | make KERNFAST=blah buildkernel is now a short cut for make KERNCONF=blah -DKERNFAST buildkernel This change works for all kernel config files not named "1". I did that to make sure that make -DKERNFAST buildkernel remains the same as make -DKERNFAST KERNCONF=GENERIC buildkernel rather than trying to build and configure "1". I've never seen a kernel config file named "1," so I think this is a good compromise.
* Add KERNFAST define. When defined, it skips all the config, dependsimp2009-01-151-0/+6
| | | | | | | and clean steps. KERNFAST was selected to complement KERNCONF which is typically used in these scenarios (especially with cross building). Reviewed by: arch@
* Add the kerberos5 libs to the install32 target.obrien2008-11-121-0/+3
| | | | (we've been building the all along, but never installing them)
* Back out testing aid that was inadvertantly committed as part of r184205.des2008-10-231-4/+0
| | | | Noticed by: rdivacky
* Retire the MALLOC and FREE macros. They are an abomination unto style(9).des2008-10-231-0/+4
| | | | MFC after: 3 months
* Rescue is "not yet" for MIPS.obrien2008-09-191-0/+4
|
* If a CPUTYPE isn't specified, then don't use -march=k8 when compilingjhb2008-08-191-3/+3
| | | | | | | | | | | 32-bit compat libs on amd64 since -march=k8 may generate instructions that are not implemented on Intel EM64T processors. Instead, use a simpler set of default flags that should work on all amd64-capable CPUs. PR: amd64/113111 Submitted by: NIIMI Satoshi sa2c of sa2c.net MFC after: 1 week
* Various style fixes in the build32 rules.jhb2008-08-021-9/+10
| | | | Submitted by: bde (mostly)
* Tweak the support for using ldd on 32-bit objects a bit further.jhb2008-08-011-0/+3
| | | | | | | | | | | | | Specifically, build a 32-bit /usr/bin/ldd32 on amd64 which handles 32-bit objects. Since it is a 32-bit binary, it can fork a child process which can dlopen() a 32-bit shared library. The current 32-bit support in ldd can't do this because it does the dlopen() from a 64-bit process. In order to preserve an intuitive interface for users, the ldd binary automatically execs /usr/bin/ldd32 for 32-bit objects. The end result is that ldd on amd64 now transparently handles 32-bit shared libraries in addition to 32-bit binaries. Submitted by: ps (indirectly)
* Enable GCC stack protection (aka Propolice) for userland:ru2008-06-251-5/+6
| | | | | | | | | | | | | | | | | | | | | - It is opt-out for now so as to give it maximum testing, but it may be turned opt-in for stable branches depending on the consensus. You can turn it off with WITHOUT_SSP. - WITHOUT_SSP was previously used to disable the build of GNU libssp. It is harmless to steal the knob as SSP symbols have been provided by libc for a long time, GNU libssp should not have been much used. - SSP is disabled in a few corners such as system bootstrap programs (sys/boot), process bootstrap code (rtld, csu) and SSP symbols themselves. - It should be safe to use -fstack-protector-all to build world, however libc will be automatically downgraded to -fstack-protector because it breaks rtld otherwise. - This option is unavailable on ia64. Enable GCC stack protection (aka Propolice) for kernel: - It is opt-out for now so as to give it maximum testing. - Do not compile your kernel with -fstack-protector-all, it won't work. Submitted by: Jeremie Le Hen <jeremie@le-hen.org>
* Add MIPS to the list of known arches.obrien2008-06-181-1/+1
|
* Add the DTrace build tools to the list of tools and pass NO_CTF to alljb2008-05-231-8/+36
| | | | the stages of the build which don't require CTF conversion.
* Fix conflicts after heimdal-1.1 import and add build infrastructure. Importdfr2008-05-071-4/+10
| | | | all non-style changes made by heimdal to our own libgssapi.
* Bootstrap the build of btxld.ru2008-04-151-1/+3
|
* Remove options MK_LIBKSE and DEFAULT_THREAD_LIB now that we no longerru2008-03-291-7/+3
| | | | build libkse. This should fix WITHOUT_LIBTHR builds as a side effect.
* Set AR=gnu-ar and RANLIB=gnu-ranlib on systems where we are forcedru2008-03-021-4/+3
| | | | | | to use GNU tools. Remove the _WITH_GNUAR knob. Prodded by: obrien
* Sort.ru2008-02-251-5/+5
| | | | Prodded by: obrien
* Make again BSD ar(1) the default system ar(1), now properly handlingru2008-02-251-0/+9
| | | | | | | | | | | | | source upgrades by falling back to GNU ar(1) as necessary. Option WITH_BSDAR is gone. Option _WITH_GNUAR to aid in upgrades is *not* supposed to be set by the user. Stop bootstrapping BSD ar(1) on the next __FreeBSD_version bump, as there are no known bugs in it. Bump __FreeBSD_version to anticipate this and to flag the switch to BSD ar(1), should it be needed for something. Input from: obrien, des, kaiw
* Satisfy a particularly obstinate nit-picker :)des2008-02-051-1/+1
|
* Give usr.bin/kdump/kdump_subr.c the same treatment as usr.bin/kdump/ioctl.cdes2008-02-051-0/+1
| | | | | | | | | and usr.bin/truss/ioctl.c. This is the correct way to address the problem that arises when doing an incremental build after a header used by kdump has been removed (cf. i4b disconnect a while ago) Explained by: ru MFC after: 2 weeks
* Support source upgrades from at least 6.0-RELEASE.ru2008-01-231-0/+4
| | | | Reviewed by: imp, obrien
* Conditionally add mklocale to bootstrap-toolsache2008-01-231-0/+5
|
* Cleanup after last commit (remove undefined variables).ru2008-01-221-7/+1
|
* Remove 5.x and 6.x cruft - source upgrades to RELENG_8 from versions priorobrien2008-01-211-28/+0
| | | | to RELENG_7 are not supported.
* Remove WITHOUT_FORTRAN from the XMAKE target, it doesn't exist anymore.brueffer2008-01-161-1/+1
| | | | | | Reviewed by: imp, kan Approved by: rwatson (mentor) MFC after: 3 days
* - Explicitly verify if all needed libs were found by ldd(1). Do soyar2007-12-041-6/+14
| | | | | | | | | | | | | | | | | through scanning its output as ldd(1) returns a non-zero status only for really abnormal conditions such as an improper file format. Now cp(1) won't get bogus "not" and "found" arguments if a lib is missing. [1] - Don't guess if an element of a complex pipeline is assigned to the main shell or a sub-shell. Namely use stdio, not vars, to pass lists out from loops. If using vars, there's the risk that a loop will run in a sub-shell and the list won't make it to the main shell. It appears that braces and parens give only limited control over the issue while stdio always works as intended. Apply this solution to both $progs and $libs for consistency, although I've failed to go without it only in the $libs part. Requested by: emaste [1]
* Decouple the install tools from the main system as much as possible.yar2007-10-311-14/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | I.e., not only copy them to a scratch dir, but also make them use saved copies of libraries and locale files. That gives us several benefits: 1) ABI breakages should no longer affect installworld over the live system. 2) It becomes safe to run installworld while still running the old kernel. However, it can be reasonable to save the old /rescue before that to be able to run the old reboot(8), as the new binaries are rather likely to fail with the old kernel. Anyhow, it's now possible to upgrade a system in a single reboot _reliably_. 3) With a bit of hackery around rtld(8), it becomes possible to do destructive cross-installs, e.g., i386->amd64 over the live system. The only shared item left between the old and new systems is rtld(8), which cannot be run from a saved copy easily because its full pathname is stored in the respective field of each ELF executable. (In theory, that field could be overridden, e.g., from the environment, but this can lead to security issues.) That's why a destructive cross-install isn't possible w/o hackery yet. Fruitful ideas by: ru Reviewed by: ru Tested with: audit(4)
* If a required install tool is missing, provide a more friendly erroremaste2007-10-151-1/+6
| | | | message (instead of cp's usage info).
* Tweak the handling of "WITHOUT_LIBPTHREAD". Also remove the accidentalobrien2007-10-091-1/+1
| | | | | | | treatment of 'LIBKSE' as an "old style" knob. Submitted by: ru Approved by: re(kensmith)
* Repo copy libpthreads to libkse.obrien2007-10-091-3/+3
| | | | | | This introduces the WITHOUT_LIBKSE nob, and changes WITHOUT_LIBPTHREADS to mean with neither threading libs. Approved by: re(kensmith)
* Revise the list of directories we manually create underru2007-10-011-5/+2
| | | | | | | ${WORLDTMP} and ${LIB32TMP}; some of them are no longer needed, and some were never needed. Approved by: re (kensmith)
* Always install libpthread.* symlinks if at least one ofru2007-10-011-1/+9
| | | | | | | | | | | | the threading libraries is built. This simplifies the logic in makefiles that need to check if the pthreads support is present. It also fixes a bug where we would build a threading library that we shouldn't have built: for example, building with WITHOUT_LIBTHR and the default value of DEFAULT_THREADING_LIB (libthr) would mistakenly build the libthr library, but not install it. Approved by: re (kensmith)
* Add sed(1) to cross tools. We do want newly built version duringdelphij2007-07-101-0/+1
| | | | | | buildworld. Approved by: re (rwatson)
* lex(1) no longer installs headers into GCC-internal dirsru2007-05-261-3/+3
| | | | (since src/usr.bin/lex/Makefile,v 1.20).
* Revision 1.576 removed too much. I didn't notice because my /usr is ondes2007-05-191-0/+2
| | | | ZFS, which doesn't support flags...
* GCC will now properly link libc with all shared objects in order to recordkan2007-05-191-3/+26
| | | | | | their dependency on libc and its versioned symbols. For that to work, libc needs to be built before any other shared library that might depend on it. Add necessary glue to make that happen.
* Don't use a subshell where it isn't needed.des2007-05-161-12/+12
| | | | Noticed by: John E Hein <jhein@timing.com>
* Expose all of {check,delete}-old{,-dirs,-files,-libs}.des2007-05-161-1/+4
| | | | MFC after: 3 weeks
OpenPOWER on IntegriCloud