summaryrefslogtreecommitdiffstats
path: root/gnu/usr.bin/cc/Makefile.inc
Commit message (Collapse)AuthorAgeFilesLines
* Remove unused support for 64 bit long on 32 bit architectures.tijl2011-01-071-6/+0
| | | | | | | | It was used mainly to discover and fix some 64-bit portability problems before 64-bit arches were widely available. Discussed with: bde Approved by: kib (mentor)
* Retire TARGET_ABI.imp2011-01-071-9/+6
| | | | | | | | | | | | | | | Implement MACHINE_ARCH=mips64e[lb] to build N64 images. This replaces MACHINE_ARCH=mipse[lb] TARGET_ABI=n64. MACHINE_ARCH=mipsn32e[lb] has been added, but currently requires WITHOUT_CDDL due to atomic issues in libzfs. I've not investigated this much, but implemented this to preserve as much of the TARGET_ABI functionality that I could. Since its presence doesn't affect the working cases, I've kept it in for now. Added mips64e[lb] to make universe, so more kernels build. And I think this (finally) closes the curtain on the tbemd tree.
* Complete the integration of tbemd branch into head.imp2010-11-101-3/+7
| | | | | | | | | | | | | | | | 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.
* Fix build for O32 systems without a TARGET_CPUTYPE defined. We must default tojmallett2010-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.
* Add/improve mips64r2, Octeon, n32 and n64 support in the toolchain.jmallett2010-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
* Non-GCC gcc compatible compilers may provide the same multimedia intrinsicobrien2010-05-121-0/+2
| | | | | | | headers as GCC, but of their own implementation. So put the GCC ones into their own header "namespace". Requested by: ed
* Make little endian compiles produce little endian binaries on mips.imp2010-03-051-0/+4
| | | | Submitted by: neel@
* Fix build breakage due to the interplay between r189801 and r189824.das2009-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.)
* Update bmake glue to build GCC 4.2.kan2007-05-191-6/+25
| | | | | | | | | | | | | | | | | | | | | 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.
* Minor Makefile cleanup. Do not use Makefile variables named 'version' andkan2007-03-121-1/+1
| | | | | | | | | | | | | '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
* Add additional support for generating code for the arm. There's stillimp2006-09-181-0/+4
| | | | | | | | | 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
* We don't need this library any more.obrien2002-06-041-6/+0
|
* Bmake bits for Gcc 3.1.obrien2002-05-101-16/+5
| | | | Partially made possible by: Wilko.Bulte@compaq.com
* Don't use "GCCDIR" as the multiple inclusion protector. Subdir Makefilesobrien2002-04-231-2/+4
| | | | may want to override GCCDIR and this gets in the way.
* Get rid of GCC_ARCH, and just use plain TARGET_ARCH.obrien2002-04-041-3/+2
| | | | We got rid of the MIPS le/be stuff that needed this a long time ago.
* Remove some 1996 GCC 2.6.3 cruft for building a shared cc_int lib.obrien2002-04-031-2/+0
|
* Properly get the version number after the 2.95.4 upgrade.obrien2002-03-211-1/+2
|
* Add the `WANT_FORCE_OPTIMIZATION_DOWNGRADE' knob. If set to an integerobrien2001-08-161-0/+4
| | | | | | value, it forces GCC to not optimize above this level. For intance, GCC made with "WANT_FORCE_OPTIMIZATION_DOWNGRADE=1" is a good setting for the Alpha platform when building ports.
* Remove MIPS support.obrien2001-04-111-5/+0
| | | | It has rotted quite badly and no one has provided updates for it.
* Define "FREEBSD_NATIVE" in the freebsd-native header to reduce the amountobrien2001-03-021-1/+1
| | | | | | | of stuff (and thus length of error output) we put on the invocation command line. Also follow the new FSF/GNU style of giving the symbol a value so it can be used in `if()' statements in addition to `#if' so seldomly compiled in code (on some platforms) gets compiled always, to help reduce bit-rot.
* Add comment about a requirement in using a 64-bit `long' on i386.obrien2000-11-101-0/+3
|
* Scoot things over to the temporary *.295 source while I do major constructionobrien2000-06-041-1/+1
| | | | on the mainline sources.
* Enable Haifa on sparc64 as well.steve2000-04-021-1/+1
|
* Move some cflag contents down to where they are acutally used.obrien2000-03-131-2/+0
|
* Merge cc_drv into cc_int. Merge more shared files into cc_int.obrien2000-01-241-6/+0
|
* Allow the specification of a prefix for gcc to find all the various bits.obrien1999-12-291-8/+7
| | | | | | | If one wishes to anchor the compiler toolchain tree somewhere other than /, all one needs to do is set "TOOLS_PREFIX" to a different rooting. Submitted by: marcel (in a different format and reworked by me)
* Fix cut-n-paste braino.obrien1999-12-221-2/+2
|
* Another style nit.obrien1999-12-221-2/+2
|
* * Support a non-default sized `long' data type. This allows one to easilyobrien1999-12-221-5/+9
| | | | | | | | build the compiler with a 64-bit longs on the i386. * Comment an important dependancy. * Fix some style nits Submitted by: bde
* * Remove debugging cruft that accidently got committed.obrien1999-12-221-8/+15
| | | | | * Support mixed OBJDIR handling such .a's are properly found with a mix of obj subdirs both w/in and outside the source tree works. Requested by BDE.
* Add libcc_fbsd.a that contains libc and libiberty routines needed inobrien1999-12-191-6/+7
| | | | | | bootstraping on FreeBSD specifically. 3.2 upgrade path tested by: marcel
* Remove the `sysctl' get osversion hack. There are issues with cross-hostingobrien1999-11-201-4/+0
| | | | | builds, Also, `sysctl' is not a build-tool and I'd rather not make it one. 3-STABLE has been updated to deal with the main reason this came in.
* Allow sub-Makefile's to determine the version of the OS we are make'ing on.obrien1999-11-171-0/+4
|
* Cut over the system compiler from from EGCS 1.1.2 to GCC 2.95.2.obrien1999-11-151-2/+2
|
* Move -I of cc_tool/ before the GCCDIR ones.obrien1999-10-121-1/+1
| | | | | | | | | | | | | When I imported EGCS into contrib/egcs/ I failed to prune out egcs/gcc/cp/hash.h which is generated from gxx.gperf. Thus `cc1plus' wasn't using the hash.h we generated by cc/cc_tools/Makefile, but rather the one in egcs/gcc/cp/. When I imported contrib/gcc/ I did prune gcc/cp/hash.h. Unfortunately the GCC maintainers weren't smart on their file nameing and there is also a egcs/gcc/hash.h (name overloading does NOT work as well on the filesystem as in C++...). Due to the -I ordering we are were then picking up gcc/hash.h when compiling `cc1plus'.
* $Id$ -> $FreeBSD$peter1999-08-271-1/+1
|
* Purely cosmetic cleanups.obrien1999-08-161-3/+1
| | | | | | | | - Id tag layout wrong. - "FOO =" -> "FOO=". - 4 space indention on continuation lines rather than a <tab> Basic idea checked by: bde
* Only use Bison to generate cc1plus's parse code.obrien1999-08-011-3/+1
|
* Go back to using Bison for now, due to `make world' breakage.obrien1999-07-291-1/+3
| | | | | BTW, if our src/contrib/bison is upgraded from 1.25 to the current 1.27 offering, the build breaks exactly the same way....
* Use Yacc rather than Bison.obrien1999-07-281-3/+1
|
* Sorry didn't get this in the last commit: MACHINE_ARCH changes courtesyobrien1999-04-221-1/+1
| | | | of Warner Losh <imp@village.org>. (he's got plans for FreeBSD mips :-))
* Use `GNU_ARCH' in most places where `MACHINE_ARCH' was used. Building forobrien1999-04-221-5/+19
| | | | mips has some particularlies.
* Move HAVE_CONFIG_H define to global cc/ Makefile so all can share the benifits.obrien1999-04-181-1/+1
|
* *** empty log message ***obrien1999-04-181-2/+2
|
* Include the parent Makefile.inc so we get a proper BINDIR definition.obrien1999-04-181-1/+3
| | | | As explained by: bde
* Clean up some stuff that's no longer used.peter1999-04-081-16/+1
|
* didn't get latest version:obrien1999-04-041-3/+2
| | | | Don't conditionalize -I${.CURDIR}/../cc_tools
* Minimum set of changes to switch from Gcc 2.7.2 (in contrib/gcc) to Egcs 1.1.2obrien1999-04-041-5/+30
| | | | (in contrib/egcs)
* Remove BINFORMAT/a.out/elf default hackery, it's elf by default internallypeter1999-01-161-17/+1
| | | | and doesn't need to use this.
* Another instance where we default to elf only on alpha, but shouldimp1998-10-261-2/+2
| | | | default to aout only on i386.
OpenPOWER on IntegriCloud