aboutsummaryrefslogtreecommitdiff
path: root/gnu/usr.bin/cc
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | Let gcc and ld know where to find 32 bit libraries on amd64.Tijl Coosemans2010-11-171-1/+1
| |_|/ |/| | | | | | | | | | | | | | | | | | | | Reviewed by: arch@ Approved by: kib (mentor) Notes: svn path=/head/; revision=215439
* | | We need to add powerpc64->powerpc translations (I knew I hated copyingWarner Losh2010-11-141-1/+1
| |/ |/| | | | | | | | | | | | | | | | | | | this code in the first place). Also MACHINE_ARCH powerpc is 32-bit, not MACHINE_CPUARCH == powerpc. Submitted by: nathanw Notes: svn path=/head/; revision=215276
* | Complete the integration of tbemd branch into head.Warner Losh2010-11-104-27/+28
|/ | | | | | | | | | | | | | | | | | | TARGET_BIG_ENDIAN is now completely dead, except where it was originally supposed to be used (internally in the toolchain building). TARGET_ARCH has changed in three cases: (1) Little endian mips has changed to mipsel. (2) Big endian mips has changed to mipseb. (3) Big endian arm has changed to armeb. Some additional changes are needed to make 'make universe' work on arm and mips after this change, so those are commented out for now. UPDATING information will be forthcoming. Any remaining rough edges will be hammered out in -current. Notes: svn path=/head/; revision=215082
* Teach our toolchain how to generate 64-bit PowerPC binaries. This fixesNathan Whitehorn2010-07-103-4/+22
| | | | | | | | | | | 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
* Fix build for O32 systems without a TARGET_CPUTYPE defined. We must default toJuli Mallett2010-06-021-0/+8
| | | | | | | | | MIPS-III because FreeBSD relies on a number of MIPS-III features; the ABI default would be MIPS-I which we don't intend to support. Our old default before I switched to using the ABI default was MIPS32. Notes: svn path=/head/; revision=208758
* Add/improve mips64r2, Octeon, n32 and n64 support in the toolchain.Juli Mallett2010-06-021-1/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | o) Add TARGET_ABI to the MIPS toolchain build process. This sets the default ABI to one of o32, n32 or n64. If it is not set, o32 is assumed as that is the current default. o) Set the default GCC cpu type to any specified TARGET_CPUTYPE. This is necessary to have a working "cc" if e.g. mips64 is specified, as binutils will refuse to link objects using different ISAs in some cases. o) Add support for n32 and n64 ABIs to binutils and GCC. o) Add additional required libgcc2 stubs for n32 and n64. o) Add support for the "mips64r2" architecture to GCC. Add the "octeon" o) When static linking, wrap default libraries in --start-group and --end-group. This is required for static linking to work on n64 with the interdependencies between libraries there. This is what other OSes that support n64 seem to do, as well. o) Fix our GCC spec to define __mips64 for 64-bit targets, not __mips64__, the former being what libgcc, etc., check and the latter seemingly being a misspelling of a hand merge from a Linux spec. o) When no TARGET_CPUTYPE is specified at build time, make GCC take the default ISA from the ABI. Our old defaults were too liberal and assumed that 64-bit ABIs should default to the MIPS64 ISA and that 32-bit ABIs should default to the MIPS32 ISA, when we are supporting or will support some systems based on earlier 32-bit and 64-bit ISAs, most notably MIPS-III. o) Merge a new opcode file (and support code) from a later version of binutils and add flags and code necessary to support Octeon-specific instructions. This should also make merging opcodes for other modern architectures easier. Reviewed by: imp Notes: svn path=/head/; revision=208737
* Non-GCC gcc compatible compilers may provide the same multimedia intrinsicDavid E. O'Brien2010-05-123-3/+7
| | | | | | | | | | headers as GCC, but of their own implementation. So put the GCC ones into their own header "namespace". Requested by: ed Notes: svn path=/head/; revision=207995
* Make little endian compiles produce little endian binaries on mips.Warner Losh2010-03-051-0/+4
| | | | | | | Submitted by: neel@ Notes: svn path=/head/; revision=204771
* Back-merge (by hand) r195668:Warner Losh2010-01-081-3/+0
| | | | | | | | | r195668 | gonzo | 2009-07-13 17:01:12 -0600 (Mon, 13 Jul 2009) | 3 lines - Get rid of ugly TARGET_CPU_DEFAULT default. 16 is MASK_DSP and was set there due to my ignroance. Notes: svn path=/head/; revision=201849
* Back out previous revision until better tested fix is ready.Alexander Kabaev2009-06-291-8/+0
| | | | | | | Approved by: re (impliciti, by approving previos check-in) Notes: svn path=/head/; revision=195152
* Eliminate .text relocations in shared libraries compiled with stack protector.Alexander Kabaev2009-06-281-0/+8
| | | | | | | | | | | | | | | 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) Notes: svn path=/head/; revision=195151
* Fix build breakage due to the interplay between r189801 and r189824.David Schultz2009-03-141-0/+1
| | | | | | | | | | In particular, vendor sources that aren't ready for gnu99 should still be compiled with gnu89. (Before r189824, these would have generated warnings if you tried to compile them in gnu99 mode, but the warnings went unheeded due to -Wno-error.) Notes: svn path=/head/; revision=189834
* Add strndup(3) prototype to string.h.Konstantin Belousov2008-12-081-1/+1
| | | | | | | | | | | | | | This change was erronously ommitted from the r185690, and attempt to simply add the prototype to string.h has revealed that several contributed programs defined local prototypes for strndup(), controlled by autoconfed config.h. So, manually change #undef HAVE_STRNDUP to #define HAVE_STRNDUP 1. Next import of the corresponding program would regenerate config.h, overriding the changes in this commit. No objections from: kan Notes: svn path=/head/; revision=185777
* Add FreeBSD/MIPS support to GCC.David E. O'Brien2008-09-013-1/+14
| | | | Notes: svn path=/head/; revision=182627
* Turn cc_tools/Makefile and Makefile.tgt into a "linear" read. SharedDavid E. O'Brien2008-08-313-23/+20
| | | | | | | | parts of the configuration aren't duplicated, and arch-specific exceptions are made "in-place". Also clean up the FreeBSD/amd64 config a little. Notes: svn path=/head/; revision=182579
* Use LC_ALL=C before awk generating "optionlist"Andrey A. Chernov2007-11-181-3/+3
| | | | | | | | | (and before two other awk calls, just to be safe) Without it sorting is broken for locales with ASCII collating equivalence like (v,w) in sv_SE Notes: svn path=/head/; revision=173731
* Welcome FreeBSD 8.David E. O'Brien2007-10-121-2/+2
| | | | Notes: svn path=/head/; revision=172592
* Disable TLS for arm and sparc64 here as binutils 2.15 predate GNU TLSMarius Strobl2007-10-081-0/+2
| | | | | | | | | | | support for these. This is in line with gnu/lib/libgomp/config.h and gnu/lib/libstdc++/config.h. Reviewed by: cognet, obrien Approved by: re (kensmith) Notes: svn path=/head/; revision=172473
* Make gcc default to big endian when building it for a big endian target.Olivier Houchard2007-09-181-0/+4
| | | | | | | | | | This was lost while migrating to gcc4. Reported by: Michael Reifenberger <mike at Reifenberger dot com> Approved by: re (blanket) Notes: svn path=/head/; revision=172234
* Fix compiles when user chooses to disable both ObjC and C++ support inAlexander Kabaev2007-05-281-1/+2
| | | | | | | | | GCC. Reported by: bz Notes: svn path=/head/; revision=170039
* Back out the addition of -static to LDFLAGS; I'm pretty confidentRuslan Ermilov2007-05-211-1/+0
| | | | | | | | | | | | | | | | | | | that the build failure was caused by a computer/sources date/time mismatch that caused GCC tools to be mistakenly rebuilt again at an inappropriate time during buildworld, re-linking them against new libraries instead of host's installed libraries and thus making them not runnable by the host. Normally they are only built in the early stage of buildworld (build-tools) that links them against shared libraries of the host, but if either the system clock or modification date/time on source files is set incorrectly, make(1) can be foolished into thinking that tools are stale and will rebuild them again, now in the "target" environment which is not suitable for building helper apps that are to be run during buildworld. OK'ed by: kan Notes: svn path=/head/; revision=169828
* Work-around for upgrading from a pre-symbol-versioned world.Scott Long2007-05-191-0/+1
| | | | | | | Blame-to: cperciva Notes: svn path=/head/; revision=169740
* Update bmake glue to build GCC 4.2.Alexander Kabaev2007-05-1930-827/+2672
| | | | | | | | | | | | | | | | | | | | | | | | 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
* Minor Makefile cleanup. Do not use Makefile variables named 'version' andAlexander Kabaev2007-03-125-9/+8
| | | | | | | | | | | | | | | | 'target'. Latter is problematic in particular as apparently FreeBSD's bsd.prog.mk re-defines it under some circumstances. This causes an unexpected failures like -dumpmachine not working for cc while working fine for c++. Do not re-define IN_GCC in multipe places, it gets inherited from Makefile.in anyway. PR: gnu/110143 Submitted by: usleepless at gmail Notes: svn path=/head/; revision=167471
* Remove gratuitous white space change.David E. O'Brien2006-11-061-12/+5
| | | | Notes: svn path=/head/; revision=164019
* Prepare to pick up manpages from their new location.Ruslan Ermilov2006-09-212-7/+2
| | | | Notes: svn path=/head/; revision=162511
* Bump __FreeBSD_cc_version in case someone cares for differences betweenAlexander Kabaev2006-09-211-1/+1
| | | | | | | GCC 3.4.4 and GCC 3.4.6 on -current. Notes: svn path=/head/; revision=162496
* Add additional support for generating code for the arm. There's stillWarner Losh2006-09-185-0/+201
| | | | | | | | | | | | a few issues in other parts of the tree, but those will be resolved separately. Submitted by: cogenet@ Reviewed by: kan@, obrien@ MFC After: 5 days Notes: svn path=/head/; revision=162417
* This is not needed since src/gnu/usr.bin/cc/cc_int/Makefile,v 1.34.Ruslan Ermilov2006-09-161-54/+0
| | | | Notes: svn path=/head/; revision=162346
* A TARGET_CPU_DEFAULT of xscale for arm results in illegal instructionsWarner Losh2006-09-151-1/+1
| | | | | | | during buildworld. Comment it out for now. Notes: svn path=/head/; revision=162312
* Remove redundant defines alerady set by Makefile.feAlexander Kabaev2006-09-121-3/+0
| | | | Notes: svn path=/head/; revision=162258
* Move to more global Makefile.tgt vs. having to define in the leaves.David E. O'Brien2006-09-121-4/+0
| | | | Notes: svn path=/head/; revision=162247
* Default to big endian ARM if "TARGET_BIG_ENDIAN" is defined, and set an ARMDavid E. O'Brien2006-09-121-0/+4
| | | | | | | target default. Notes: svn path=/head/; revision=162246
* Default to big endian ARM if "TARGET_BIG_ENDIAN" is defined (& targeting ARM).David E. O'Brien2006-09-121-0/+4
| | | | Notes: svn path=/head/; revision=162244
* Fix three whitespace nits.Warner Losh2006-09-111-3/+2
| | | | | | | I think these are from kan@... Notes: svn path=/head/; revision=162209
* The platform name is ARM not StrongARM.David E. O'Brien2006-07-221-1/+1
| | | | | | | Submitted by: cognet Notes: svn path=/head/; revision=160575
* Desupport the *_COLLECT2 no-op.Ruslan Ermilov2006-03-211-2/+2
| | | | Notes: svn path=/head/; revision=156935
* Reimplementation of world/kernel build options. For details, see:Ruslan Ermilov2006-03-172-10/+14
| | | | | | | | | | | http://lists.freebsd.org/pipermail/freebsd-current/2006-March/061725.html The src.conf(5) manpage is to follow in a few days. Brought to you by: imp, jhb, kris, phk, ru (all bugs are mine) Notes: svn path=/head/; revision=156813
* Don't pollute output when "make" is run with -s.Ruslan Ermilov2006-01-141-1/+2
| | | | | | | Approved by: kan Notes: svn path=/head/; revision=154374
* Locate __FreeBSD_cc_version's value beside __FreeBSD__'s value to make itDavid E. O'Brien2005-10-301-1/+2
| | | | | | | easier to keep them in sync. Notes: svn path=/head/; revision=151887
* Catch up with FreeBSD 7.David E. O'Brien2005-10-291-1/+1
| | | | Notes: svn path=/head/; revision=151857
* Update bmake glue for GCC 3.4.4.Alexander Kabaev2005-06-031-1/+3
| | | | Notes: svn path=/head/; revision=146910
* NOSHARED -> NO_SHAREDRuslan Ermilov2004-12-214-4/+4
| | | | Notes: svn path=/head/; revision=139112
* Start the dreaded NOFOO -> NO_FOO conversion.Ruslan Ermilov2004-12-219-9/+9
| | | | | | | OK'ed by: core Notes: svn path=/head/; revision=139103
* Remove trailing whitespace.Alexander Kabaev2004-11-071-1/+1
| | | | | | | Pointed out by: ru Notes: svn path=/head/; revision=137361
* Reconnect c++filt to the build.Alexander Kabaev2004-11-071-2/+2
| | | | Notes: svn path=/head/; revision=137334
* Unbreak c++filt. It was disconnected from the build and never fixed duringAlexander Kabaev2004-11-071-8/+1
| | | | | | | | | GCC 3.4.2 work unintentioanlly. Reminded by: bms Notes: svn path=/head/; revision=137333
* For variables that are only checked with defined(), don't provideRuslan Ermilov2004-10-246-7/+7
| | | | | | | any fake value. Notes: svn path=/head/; revision=136910
* A fix from rev. 1.52 of gnu/usr.bin/cc/cc_tools/Makefile was lostRuslan Ermilov2004-08-181-10/+0
| | | | | | | | | | | | in rev. 1.57. Fix this regression by making cc_tools a new-style build-tool in Makefile.inc1. For details of what has been fixed, please see the gnu/usr.bin/cc/cc_tools/Makefile,v 1.52 commit log. Caught this by accidentally touching param.h while in the process of cross-buildworld for amd64. Notes: svn path=/head/; revision=133956
* Consolidate libiberty files in one place and avoid listing someAlexander Kabaev2004-08-122-15/+12
| | | | | | | | | of them in several places. Noticed by: bsdimp Notes: svn path=/head/; revision=133581