aboutsummaryrefslogtreecommitdiff
path: root/gnu/lib/csu
Commit message (Collapse)AuthorAgeFilesLines
* remove stale gnu/lib/csu directoryEd Maste2020-02-032-87/+0
| | | | | | | As of r357338 gnu/lib/csu is never used. Notes: svn path=/head/; revision=357444
* csu: Add proper .depend tracking for each object.Bryan Drewery2019-06-151-0/+1
| | | | | | | | | | | This doesn't appear to have ever worked. After a .depend is generated there will be duplicate .c dependencies so only use the first one. MFC after: 2 weeks Sponsored by: DellEMC Notes: svn path=/head/; revision=349069
* Support reading in .depend files.Bryan Drewery2019-06-151-5/+5
| | | | | | | | | | | This is for an upcoming change that fixes .depend handling in here. It will cause some duplicate sources which need to be trimmed out. MFC after: 2 weeks Sponsored by: DellEMC Notes: svn path=/head/; revision=349067
* Create crtsavres.o for powerpc buildsJustin Hibbits2019-01-121-4/+0
| | | | | | | | | | | | | | | | Summary: GCC expects to link in a crtsavres.o on powerpc platforms. On powerpc64 this is an empty file, but on powerpc and powerpcspe this does contain some save/restore functions, which may not actually be necessary for newer modern GCC and clang. This appeases the in-tree gcc, though, and is needed in order to switch to the BSD CRTRBEGIN. PR: 233751 Reviewed By: andrew Differential Revision: https://reviews.freebsd.org/D18826 Notes: svn path=/head/; revision=342974
* Convert gnu to using SRCTOPWarner Losh2017-03-121-3/+3
| | | | | | | | | | | | | | | Prefer SRCTOP over CURDIR/../../contrib, etc. However, retain the "up one level" instances of ../ because they are really relative to this part of the tree and not a means to find the root of the tree. As such, it's better to leave them since that further the goal of being able to move directories if watned to in the future. Differential Revision: https://reviews.freebsd.org/D9932 Sponsored by: Netflix Silence On: arch@ (twice) Notes: svn path=/head/; revision=315175
* Follow-up r297842: Rework header generation to fix always rebuilding.Bryan Drewery2016-04-181-4/+4
| | | | | | | | | | | | | This reworks the handling of common headers to just include the needed logic rather than invoke MAKE. This avoids the problem listed in r297842 and avoids other dependency tracking issues. Pointyhat to: bdrewery Reported by: Nikolai Lifanov <lifanov@mail.lifanov.com> Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=298218
* META_MODE: Avoid changed build command every build.Bryan Drewery2016-04-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Because the file is generated with -f using another Makefile, 2 different Makefiles are trying to handle the .meta file for the target. The obvious .NOMETA_CMP or .NOMETA on the ${MAKE} targets don't work as they are very limited in scope in bmake. Using .PHONY fixes the problem and ensures that the ${MAKE} command is always ran to check if it is outdated in the sub-make. An example of the problem in gnu/lib/libgcc (with make -dM): /usr/obj/root/git/freebsd/gnu/lib/libgcc/tm.h.meta: 2: a build command has changed TARGET_CPU_DEFAULT="" HEADERS="options.h i386/biarch64.h i386/i386.h i386/unix.h i386/att.h dbxelf.h elfos-undef.h elfos.h freebsd-native.h freebsd-spec.h freebsd.h i386/x86-64.h i386/freebsd.h i386/freebsd64.h defaults.h" DEFINES="" /bin/sh /root/git/freebsd/gnu/lib/libgcc/../../../contrib/gcc/mkconfig.sh tm.h vs (cd /root/git/freebsd/gnu/lib/libgcc; make -f /root/git/freebsd/gnu/lib/libgcc/../../usr.bin/cc/cc_tools/Makefile MFILE=/root/git/freebsd/gnu/lib/libgcc/../../usr.bin/cc/cc_tools/Makefile GCCDIR=/root/git/freebsd/gnu/lib/libgcc/../../../contrib/gcc tm.h) Skipping meta for tm.h: .NOMETA (cd /root/git/freebsd/gnu/lib/libgcc; make -f /root/git/freebsd/gnu/lib/libgcc/../../usr.bin/cc/cc_tools/Makefile MFILE=/root/git/freebsd/gnu/lib/libgcc/../../usr.bin/cc/cc_tools/Makefile GCCDIR=/root/git/freebsd/gnu/lib/libgcc/../../../contrib/gcc tm.h) `tm.h' is up to date. Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=297842
* Remove the old depend (mkdep) code and make FAST_DEPEND the one true way.Bryan Drewery2016-03-301-1/+0
| | | | | | | | | | Reviewed by: emaste, hselasky (partial), brooks (brief) Discussed on: arch@ Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D5742 Notes: svn path=/head/; revision=297434
* DIRDEPS_BUILD: Regenerate without local dependencies.Bryan Drewery2016-02-241-30/+0
| | | | | | | | | | | These are no longer needed after the recent 'beforebuild: depend' changes and hooking DIRDEPS_BUILD into a subset of FAST_DEPEND which supports skipping 'make depend'. Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=295989
* Remove redundant .NOPATH.Bryan Drewery2015-09-261-2/+0
| | | | | | | | | All of these are already in CLEANFILES which is added to .NOPATH in bsd.obj.mk. Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=288267
* Fix installation of 32bit libraries after r288074.Bryan Drewery2015-09-211-0/+2
| | | | | | | | | | | | | | FILES is not used when LIBRARIES_ONLY is set, which is used to build and install the lib32 sysroot. All of the csu files do quality as "libraries" for this case so just undefine LIBRARIES_ONLY. This is still better than the previous realinstall handling as it does not hook into META_MODE properly. Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=288076
* Replace realinstall: and META_MODE staging hacks with FILES mechanism.Bryan Drewery2015-09-211-14/+6
| | | | | | | | | | | | | This partially reverts r270170 for lib/csu/i386 while retaining the change for using bsd.lib.mk. These FILES groups could go into lib/csu/Makefile.inc but I've kept them in the Makefiles for clarity. Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=288074
* Add META_MODE support.Simon J. Gerraty2015-06-132-0/+52
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | Off by default, build behaves normally. WITH_META_MODE we get auto objdir creation, the ability to start build from anywhere in the tree. Still need to add real targets under targets/ to build packages. Differential Revision: D2796 Reviewed by: brooks imp Notes: svn path=/head/; revision=284345
| * dirdeps.mk now sets DEP_RELDIRSimon J. Gerraty2015-06-081-2/+0
| | | | | | | | Notes: svn path=/projects/bmake/; revision=284172
| * Merge sync of headSimon J. Gerraty2015-05-272-0/+2
| |\ | |/ |/| | | Notes: svn path=/projects/bmake/; revision=283595
| * all is MAIN targetSimon J. Gerraty2014-11-301-0/+2
| | | | | | | | Notes: svn path=/projects/bmake/; revision=275340
| * Merge from head@274682Simon J. Gerraty2014-11-191-1/+1
| |\ | |/ |/| | | Notes: svn path=/projects/bmake/; revision=274683
| * fixed depSimon J. Gerraty2014-11-191-1/+0
| | | | | | | | Notes: svn path=/projects/bmake/; revision=274682
| * Merge head from 7/28Simon J. Gerraty2014-08-192-8/+2
| |\ | | | | | | | | | Notes: svn path=/projects/bmake/; revision=270164
| * \ Merge from headSimon J. Gerraty2014-05-081-1/+1
| |\ \ | | | | | | | | | | | | Notes: svn path=/projects/bmake/; revision=265720
| * | | Need to stage_filesSimon J. Gerraty2014-05-051-0/+6
| | | | | | | | | | | | | | | | Notes: svn path=/projects/bmake/; revision=265404
| * | | Merge headSimon J. Gerraty2014-04-281-4/+4
| |\ \ \ | | | | | | | | | | | | | | | Notes: svn path=/projects/bmake/; revision=265044
| * | | | Updated dependenciesSimon J. Gerraty2013-02-161-2/+0
| | | | | | | | | | | | | | | | | | | | Notes: svn path=/projects/bmake/; revision=246868
| * | | | Sync with HEAD.David E. O'Brien2013-02-081-0/+4
| |\ \ \ \ | | | | | | | | | | | | | | | | | | Notes: svn path=/projects/bmake/; revision=246555
| * | | | | Sync FreeBSD's bmake branch with Juniper's internal bmake branch.Marcel Moolenaar2012-08-221-0/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Requested by: Simon Gerraty <sjg@juniper.net> Notes: svn path=/projects/bmake/; revision=239572
* | | | | | Remove MK_ARM_EABI, the armeb issues have been fixed. The code to supportAndrew Turner2014-10-011-1/+1
| |_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the oabi is still in the tree, but it is expected this will be removed as developers work on surrounding code. With this commit the ARM EABI is the only supported supported ABI by FreeBSD on ARMa 32-bit processors. X-MFC after: never Relnotes: yes Differential Revision: https://reviews.freebsd.org/D876 Notes: svn path=/head/; revision=272350
* | | | | Remove ia64.Marcel Moolenaar2014-07-071-7/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This includes: o All directories named *ia64* o All files named *ia64* o All ia64-specific code guarded by __ia64__ o All ia64-specific makefile logic o Mention of ia64 in comments and documentation This excludes: o Everything under contrib/ o Everything under crypto/ o sys/xen/interface o sys/sys/elf_common.h Discussed at: BSDcan Notes: svn path=/head/; revision=268351
* | | | | Make sure that the sub-makes for unwind.h start from the CURDIRWarner Losh2014-06-241-1/+1
| |_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (/usr/src) tree rather than the OBJDIR (/usr/obj) tree. This fixes broken incremental builds with the canonical MAKESYSPATH workaround of .../share/mk. This is a gross kludge. Notes: svn path=/head/; revision=267845
* | | | Use src.opts.mk in preference to bsd.own.mk except where we need stuffWarner Losh2014-05-061-1/+1
| |_|/ |/| | | | | | | | | | | | | | | | | from the latter. Notes: svn path=/head/; revision=265420
* | | To avoid having to explicitly test COMPILER_TYPE for settingDimitry Andric2013-12-221-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | clang-specific or gcc-specific flags, introduce the following new variables for use in Makefiles: CFLAGS.clang CFLAGS.gcc CXXFLAGS.clang CXXFLAGS.gcc In bsd.sys.mk, these get appended to the regular CFLAGS or CXXFLAGS for the right compiler. MFC after: 1 week Notes: svn path=/head/; revision=259730
* | | For gnu/lib/csu, only use gcc-specific flags when compiling with gcc.Dimitry Andric2013-12-221-4/+6
| |/ |/| | | | | | | | | | | MFC after: 3 days Notes: svn path=/head/; revision=259720
* | Add compiler support for the ARM EABI.Andrew Turner2013-01-171-0/+4
|/ | | | | | | | | ARM EABI support is disabled by default and can be enabled by setting WITH_ARM_EABI when building, however only the kernel-toolchain target will work with this flag until the rest of the support is added. Notes: svn path=/head/; revision=245539
* Build the "S" objects with the same name they get installed under.Marcel Moolenaar2012-05-171-4/+4
| | | | | | | | | | That is, build crtbeginS.o and crtendS.o instead of crtbegin.So and crtend.So. Remove the name substitution during install. Obtained from: Juniper Networks, Inc. Notes: svn path=/head/; revision=235566
* Revert r234356 for now, as it leads to run-time problems on 32-bitDimitry Andric2012-04-231-1/+0
| | | | | | | | | | PowerPC. Note this will break world. Reported by: andreast Pointy hat to: dim Notes: svn path=/head/; revision=234596
* Work around an issue on 32-bit PowerPC, where clang executable can getDimitry Andric2012-04-161-0/+1
| | | | | | | | | too big, causing 'relocation truncated to fit' errors at link time. Reviewed by: nwhitehorn Notes: svn path=/head/; revision=234356
* MFtbemd:Warner Losh2010-08-231-3/+3
| | | | | | | | Prefer MACHNE_CPUARCH to MACHINE_ARCH in most contexts where you want to test of all the CPUs of a given family conform. Notes: svn path=/head/; revision=211725
* Teach our toolchain how to generate 64-bit PowerPC binaries. This fixesNathan Whitehorn2010-07-101-1/+1
| | | | | | | | | | | a variety of bugs in binutils related to handling of 64-bit PPC ELF, provides a GCC configuration for 64-bit PowerPC on FreeBSD, and associated build systems tweaks. Obtained from: projects/ppc64 Notes: svn path=/head/; revision=209867
* Often reported issue with newer ld is:Konstantin Belousov2010-06-181-1/+2
| | | | | | | | | | | | | | | | | | | | error in /usr/lib/crtendS.o(.eh_frame); no .eh_frame_hdr table will be created. The issue is that crtend is compiled with unwind table, and also it places the special CIE into the .eh_frame indicating the end of section, that is located before generated unwind table. New ld has assertion that verifies that closing CIE is indeed the last CIE, causing the crypting message to be issued, and refusing to generate dwarf unwind. Add -fno-asynchronous-unwind-tables to disable unwind table generation for crtbegin/crtend. While there, disable omitting the frame pointer [1]. Requested by: kan [1] Reviewed by: kan MFC after: 2 weeks Notes: svn path=/head/; revision=209294
* Fix build when WITH_SSP is set explicitly.Ruslan Ermilov2009-02-211-1/+3
| | | | | | | Submitted by: Jeremie Le Hen Notes: svn path=/head/; revision=188895
* Revert previous commit. The prototype has been moved to unistd.hMarcel Moolenaar2008-09-281-1/+1
| | | | Notes: svn path=/head/; revision=183440
* Add -D_OSRELDATE_H to CFLAGS to prevent the declaration ofMarcel Moolenaar2008-09-261-1/+1
| | | | | | | | | | | getosreldate() in assembler source files. We still get the definition of __FreeBSD_version this way, because it's outside the standard multiple-inclusion protection trick. All this is specific to ia64. Notes: svn path=/head/; revision=183384
* Enable GCC stack protection (aka Propolice) for userland:Ruslan Ermilov2008-06-251-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | - 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> Notes: svn path=/head/; revision=180012
* Remove one more alpha leftover.Ruslan Ermilov2008-01-241-1/+1
| | | | Notes: svn path=/head/; revision=175623
* Back out last commit -- it breaks sparc64 build which hasRuslan Ermilov2007-10-131-2/+2
| | | | | | | more than one .c file in SRCS. Notes: svn path=/head/; revision=172609
* Minor tweak to finding BEG/END source.David E. O'Brien2007-10-121-2/+2
| | | | Notes: svn path=/head/; revision=172594
* Update bmake glue to build GCC 4.2.Alexander Kabaev2007-05-191-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | Also: Switch FreeBSD to use libgcc_s.so.1. Use dl_iterate_phdr to locate shared objects' exception frame info instead of depending on older register_frame_info machinery. This allows us to avoid depending on libgcc_s.so.1 in binaries that do not use exception handling directly. As an additional benefit it breaks circular libc <=> libgcc_s.so.1 dependency too. Build newly added libgomp.so.1 library, the runtime support bits for OpenMP. Build LGPLed libssp library. Our libc provides our own BSD-licensed SSP callbacks implementation, so this library is only built to benefit applications that have hadcoded knowledge of libssp.so and libssp_nonshared.a. When linked in from command line, these libraries override libc implementation. Notes: svn path=/head/; revision=169718
* Fix a problem mentioned in the previous revision in a different,Ruslan Ermilov2004-09-101-3/+3
| | | | | | | | non-intrusive way. This should also fix the PowerPC build that broke due to this change. Notes: svn path=/head/; revision=135029
* Add the .h files to the .o dependency lists so the .h's are created beforeDavid E. O'Brien2004-09-091-2/+2
| | | | | | | trying to build the .o's. Notes: svn path=/head/; revision=135011
* Bmake glue for GCC 3.4.2-prerelease.Alexander Kabaev2004-07-281-5/+5
| | | | Notes: svn path=/head/; revision=132751
* Just pass -DCRT_BEGIN as an option to mkdep(1), no need to overrideRuslan Ermilov2004-03-061-1/+1
| | | | | | | the entire command. Notes: svn path=/head/; revision=126688