summaryrefslogtreecommitdiffstats
path: root/gnu/lib/csu
Commit message (Collapse)AuthorAgeFilesLines
* MFC r257532 (by adrian):dim2013-12-301-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix this build for clang. MFC r259730: To avoid having to explicitly test COMPILER_TYPE for setting 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 r259913: For libstand and sys/boot, split off gcc-only flags into CFLAGS.gcc. MFC r259927: Fix pc98 build, by also forcing COMPILER_TYPE in sys/boot/pc98/boot2's Makefile. Pointy hat to: dim
* MFC r259720:dim2013-12-251-4/+6
| | | | For gnu/lib/csu, only use gcc-specific flags when compiling with gcc.
* Add compiler support for the ARM EABI.andrew2013-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.
* Build the "S" objects with the same name they get installed under.marcel2012-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.
* Revert r234356 for now, as it leads to run-time problems on 32-bitdim2012-04-231-1/+0
| | | | | | | PowerPC. Note this will break world. Reported by: andreast Pointy hat to: dim
* Work around an issue on 32-bit PowerPC, where clang executable can getdim2012-04-161-0/+1
| | | | | | too big, causing 'relocation truncated to fit' errors at link time. Reviewed by: nwhitehorn
* MFtbemd:imp2010-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.
* Teach our toolchain how to generate 64-bit PowerPC binaries. This fixesnwhitehorn2010-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
* Often reported issue with newer ld is:kib2010-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
* Fix build when WITH_SSP is set explicitly.ru2009-02-211-1/+3
| | | | Submitted by: Jeremie Le Hen
* Revert previous commit. The prototype has been moved to unistd.hmarcel2008-09-281-1/+1
|
* Add -D_OSRELDATE_H to CFLAGS to prevent the declaration ofmarcel2008-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.
* Enable GCC stack protection (aka Propolice) for userland:ru2008-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>
* Remove one more alpha leftover.ru2008-01-241-1/+1
|
* Back out last commit -- it breaks sparc64 build which hasru2007-10-131-2/+2
| | | | more than one .c file in SRCS.
* Minor tweak to finding BEG/END source.obrien2007-10-121-2/+2
|
* Update bmake glue to build GCC 4.2.kan2007-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.
* Fix a problem mentioned in the previous revision in a different,ru2004-09-101-3/+3
| | | | | non-intrusive way. This should also fix the PowerPC build that broke due to this change.
* Add the .h files to the .o dependency lists so the .h's are created beforeobrien2004-09-091-2/+2
| | | | trying to build the .o's.
* Bmake glue for GCC 3.4.2-prerelease.kan2004-07-281-5/+5
|
* Just pass -DCRT_BEGIN as an option to mkdep(1), no need to overrideru2004-03-061-1/+1
| | | | the entire command.
* Including dynamically generated osreldate.h wasn't such a goodkan2003-07-131-0/+1
| | | | | | | | idea after all. Fix cross-builds and ia64 builds. gnu/lib/csu/Makefile is modified to pre-include osreldate.h and gnu/usr.bin/cc/cc_tools/auto-host.h will avoid including sys/param.h if __FreeBSD_version is already defined.
* Change CFLAGS to more closely follow options used when GCC is builtkan2003-07-111-1/+2
| | | | from stock FSF sources.
* Use ?= before someone brings it up.obrien2003-06-021-1/+1
|
* crtstuff needs isn't compilable with C99 on Sparc64, so set CSTD to gnu89.obrien2003-06-011-0/+1
|
* Only cross-tools may use TARGET_ARCH/TARGET, everyone elseru2003-02-271-3/+3
| | | | should use the normal MACHINE_ARCH/MACHINE instead.
* Drop support for COPY, -c has been the default mode of install(1)ru2002-07-291-1/+1
| | | | | | for a long time now. Approved by: bde
* Alpha has crtfastmath also.obrien2002-05-261-1/+1
|
* Rev 1.12 broke `make all' w/o a previous `make depends'.obrien2002-05-261-4/+5
|
* Put on peril-sensitive sunglasses and risk touching gcc related build gluepeter2002-05-171-15/+19
| | | | | | | | | again. Try and deal with platforms that provide their own crtbegin/end asm files (ia64 for example). crtstuff.c does not actually work on ia64 since libgcc.a doesn't have a few key support functions when built on ia64 so it is compulsory to use crtbegin.asm and crtend.asm. Reviewed by: obrien
* GCC 3.1 on PowerPC also has the crtsavres C Run Time file.obrien2002-05-171-0/+5
|
* Quote {CC} so ccache can be used.obrien2002-05-141-1/+1
|
* Fixed CLEANFILES after bsd.lib.mk sweep.ru2002-05-131-1/+3
|
* Major cleanup of bsd.lib.mk.ru2002-05-131-2/+0
| | | | | | | Get rid of the INTERNALSTATICLIB knob and just use plain INTERNALLIB. INTERNALLIB now means to build static library only and don't install anything. Added a NOINSTALLLIB knob for libpam/modules. To not build any library at all, just do not set LIB.
* NOLIB is gone; put INTERNALLIB back for now.ru2002-05-121-0/+2
|
* There is no more NOLIB.obrien2002-05-121-1/+0
|
* Bmake bits for Gcc 3.1.obrien2002-05-101-41/+26
| | | | Partially made possible by: Wilko.Bulte@compaq.com
* Style reorg.obrien2002-04-051-5/+2
|
* Removed mentions of TARGET_ARCH from non-cross places.ru2001-10-041-4/+2
|
* GCC uses .asm files on the Alpha for crt{begin,end}.o rather thanobrien2000-10-311-9/+30
| | | | | | crtstuff.c as they do for other platforms. Moral support from: jdp
* * Bring back the guts of crt{i,n}.S. This allows C++ exceptions to workobrien2000-10-281-0/+56
when using the egcs and gcc-devel ports, along with GCC built from stock public FSF sources. With out this change, FreeBSD will be removed from the list of systems GCC 3.0 must be evaluated on before release. With the effort some of us put into getting FreeBSD on this list, we should not turn this effort into a waste, else we might not be worth fighting for in the future. (note that Alpha and IA-64 versions of crt{i,n}.S are needed) * Switch from our own crt{begin,in} to those created from GCC's crtstuff.c. This will allow us to switch to DWARF2 exceptions in the future, along with staying in sync with any future GCC requirements. * Break out our ELF branding bits into a seperate file. Currently this is now included by our crt1.c files (since this functionality was part of our native crtbegin.c). Later crtbrand.o will be merged in the creation of crti.o.
OpenPOWER on IntegriCloud