302408 |
08-Jul-2016 |
gjb |
Copy head@r302406 to stable/11 as part of the 11.0-RELEASE cycle. Prune svn:mergeinfo from the new branch, as nothing has been merged here.
Additional commits post-branch will follow.
Approved by: re (implicit) Sponsored by: The FreeBSD Foundation |
288226 |
25-Sep-2015 |
bdrewery |
META_MODE: Remove DEP_RELDIR from Makefile.depend files.
This has not been needed since r284171 in projects/bmake.
Sponsored by: EMC / Isilon Storage Division
|
284345 |
13-Jun-2015 |
sjg |
Add META_MODE support.
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
|
258507 |
24-Nov-2013 |
pfg |
gcc: Missing makefile changes for r258501.
pointyhat: me
|
245539 |
17-Jan-2013 |
andrew |
Add compiler support for the ARM EABI.
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.
|
241298 |
06-Oct-2012 |
marcel |
Add support for bmake. This includes: 1. Don't do upgrade_checks when using bmake. As long as we have WITH_BMAKE, there's a bootstrap complication in ths respect. Avoid it. Make the necessary changes to have upgrade_checks work wth bmake anyway. 2. Remove the use of -E. It's not needed in our build because we use ?= for the respective variables, which means that we'll take the environment value (if any) anyway. 3. Properly declare phony targets as phony as bmake is a lot smarter (and thus agressive) about build avoidance. 4. Make sure CLEANFILES is complete and use it on .NOPATH. bmake is a lot smarter about build avoidance and should not find files we generate in the source tree. We should not have files in the repository we want to generate, but this is an easier way to cross this hurdle. 5. Have behavior under bmake the same as it is under make with respect to halting when sub-commands fail. Add "set -e" to compound commands so that bmake is informed when sub-commands fail. 6. Make sure crunchgen uses the same make as the rest of the build. This is important when the make utility isn't called make (but bmake for example). 7. While here, add support for using MAKEOBJDIR to set the object tree location. It's the second alternative bmake looks for when determining the actual object directory (= .OBJDIR).
Submitted by: Simon Gerraty <sjg@juniper.net> Submitted by: John Van Horne <jvanhorne@juniper.net>
|
215082 |
10-Nov-2010 |
imp |
Complete the integration of tbemd branch into head.
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.
|
172234 |
18-Sep-2007 |
cognet |
Make gcc default to big endian when building it for a big endian target. This was lost while migrating to gcc4.
Reported by: Michael Reifenberger <mike at Reifenberger dot com> Approved by: re (blanket)
|
169718 |
19-May-2007 |
kan |
Update bmake glue to build GCC 4.2.
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.
|
167471 |
12-Mar-2007 |
kan |
Minor Makefile cleanup. Do not use Makefile variables named 'version' and '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
|
162417 |
18-Sep-2006 |
imp |
Add additional support for generating code for the arm. There's still 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
|
162346 |
16-Sep-2006 |
ru |
This is not needed since src/gnu/usr.bin/cc/cc_int/Makefile,v 1.34.
|
162247 |
12-Sep-2006 |
obrien |
Move to more global Makefile.tgt vs. having to define in the leaves.
|
162244 |
12-Sep-2006 |
obrien |
Default to big endian ARM if "TARGET_BIG_ENDIAN" is defined (& targeting ARM).
|
154374 |
14-Jan-2006 |
ru |
Don't pollute output when "make" is run with -s.
Approved by: kan
|
136910 |
24-Oct-2004 |
ru |
For variables that are only checked with defined(), don't provide any fake value.
|
133581 |
12-Aug-2004 |
kan |
Consolidate libiberty files in one place and avoid listing some of them in several places.
Noticed by: bsdimp
|
133057 |
03-Aug-2004 |
ru |
Whitespace nit.
OK'ed by: kan
|
132887 |
30-Jul-2004 |
kan |
Fix a copy and paste error. Do not include errors.c in libgcc_int.a, it is only used by build tools.
Submitted by: grehan
|
132751 |
28-Jul-2004 |
kan |
Bmake glue for GCC 3.4.2-prerelease.
|
125919 |
17-Feb-2004 |
ache |
Remove getopt*.c, we already have compatible getopt_long() in libc (cc toolchain use it rarely, so no surprizes should occurse)
|
124451 |
12-Jan-2004 |
ru |
Last revision also added duplicate SRCS. Fixed this so that the resulting .a library has only unique .o files.
Noticed by: bde
|
124443 |
12-Jan-2004 |
ru |
Don't put objects in SRCS -- this creates all sort of havoc like causing objects to be built during "make depend", missed sources in .depend, etc.
|
124417 |
12-Jan-2004 |
ru |
Removed duplicate SRCS.
|
124150 |
05-Jan-2004 |
kan |
Stop compiling files which are not part of GCC 3.3.x.
|
118273 |
31-Jul-2003 |
obrien |
If ${GCC_CPU}-c.c exists, we need to use it.
|
117429 |
11-Jul-2003 |
kan |
Update bmake bits to build GCC 3.3.1-prerelease.
|
115292 |
24-May-2003 |
peter |
Add a temporary indirect patch for gcc when targeting amd64. This is to give the cvs tree a surviving a 'make world'. One of the two diff chunks is already in gcc-3.3, the other has been committed to gcc's HEAD and is in the pipeline for gcc-3.3.1 (but has not been committed yet).
The first chunk simplifies an excessively complex assembler statement when generating switch jump tables. The use of '.' causes as(1) to choke on big files. Use a simpler form instead. This is only an issue for TARGET_64BIT mode.
The second chunk fixes an internal compiler error when compiling libc/stdio/vfprinf.c. While this is supposedly only an issue for 64 bit mode, it does touch the 32 bit i386 code paths, so this patch is only applied for TARGET_ARCH == amd64 to keep the risks down. Breaking gcc at the 11th hour would suck.
This will be removed when it is time to import gcc-3.3.
Discussed with: kan Approved by: re (jhb)
|
103436 |
17-Sep-2002 |
peter |
Initiate deorbit burn for the i386-only a.out related support. Moves are under way to move the remnants of the a.out toolchain to ports. As the comment in src/Makefile said, this stuff is deprecated and one should not expect this to remain beyond 4.0-REL. It has already lasted WAY beyond that.
Notable exceptions: gcc - I have not touched the a.out generation stuff there. ldd/ldconfig - still have some code to interface with a.out rtld. old as/ld/etc - I have not removed these yet, pending their move to ports. some includes - necessary for ldd/ldconfig for now.
Tested on: i386 (extensively), alpha
|
96514 |
13-May-2002 |
ru |
Mark all internal libraries with INTERNALLIB.
|
96340 |
10-May-2002 |
obrien |
Bmake bits for Gcc 3.1.
Partially made possible by: Wilko.Bulte@compaq.com
|
93738 |
04-Apr-2002 |
obrien |
Get rid of GCC_ARCH, and just use plain TARGET_ARCH. We got rid of the MIPS le/be stuff that needed this a long time ago.
|
93709 |
03-Apr-2002 |
obrien |
Remove some 1996 GCC 2.6.3 cruft for building a shared cc_int lib.
|
91559 |
02-Mar-2002 |
obrien |
Move the creation of the insn-*.c files from cc_tools to cc_int. This gets rid of a cross build problem we have because we build everything in cc_tools during the `make build-tools' (or `make depend') stage.
|
60884 |
24-May-2000 |
obrien |
Move c-decl.c out of the common libcc_int.a into the binary Makefiles where it is used. c-decl has symbols that conflict with several of the cc1plus sources.
GNU `ld' was changed in Dec 1999 to be more be compatable with the way that other linkers work (specifically in the Solaris linker). The 2.9.1 `ld', did the Wrong Thing in that if a library contained a common symbol that matched a definition of that symbol in another (already linked in object) it would also be linked in, even if there was no other reason to do so. This is wrong. The library should only be linked in if it contains non-common, non-weak symbols which are needed by previously linked in objects.
|
56552 |
24-Jan-2000 |
obrien |
Merge cc_drv into cc_int. Merge more shared files into cc_int.
|
56513 |
24-Jan-2000 |
obrien |
Style change to better match src/lib/'s Makefiles.
|
53173 |
15-Nov-1999 |
obrien |
Cut over the system compiler from from EGCS 1.1.2 to GCC 2.95.2.
|
50472 |
27-Aug-1999 |
peter |
$Id$ -> $FreeBSD$
|
49864 |
16-Aug-1999 |
obrien |
Purely cosmetic cleanups. - Id tag layout wrong. - "FOO =" -> "FOO=". - 4 space indention on continuation lines rather than a <tab>
Basic idea checked by: bde
|
46070 |
25-Apr-1999 |
obrien |
use `target' macro crafted in parent Makefile rather than making our own
Submitted by: Warner Losh
|
45944 |
22-Apr-1999 |
obrien |
Sorry didn't get this in the last commit: MACHINE_ARCH changes courtesy of Warner Losh <imp@village.org>. (he's got plans for FreeBSD mips :-))
|
45943 |
22-Apr-1999 |
obrien |
Use `GNU_ARCH' in most places where `MACHINE_ARCH' was used. Building for mips has some particularlies.
|
45389 |
06-Apr-1999 |
obrien |
Use Haifa scheduler on the Alpha.
|
45299 |
04-Apr-1999 |
obrien |
Minimum set of changes to switch from Gcc 2.7.2 (in contrib/gcc) to Egcs 1.1.2 (in contrib/egcs)
|
42450 |
09-Jan-1999 |
jdp |
Switch to using ".So" as the extension for PIC object files rather than ".so". The old extension conflicted with well-established naming conventions for dynamically loadable modules.
The "clean" targets continue to remove ".so" files too, to deal with old systems.
|
22996 |
22-Feb-1997 |
peter |
Revert $FreeBSD$ to $Id$
|
21928 |
21-Jan-1997 |
jkh |
Remove incorrect use of double-negative since it means the same thing to make but perhaps not to the human reading it.
|
21673 |
14-Jan-1997 |
jkh |
Make the long-awaited change from $Id$ to $FreeBSD$
This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long.
Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise.
|
18447 |
21-Sep-1996 |
jkh |
Nuke a trailing .endif which survived Peter's last edits.
|
18441 |
21-Sep-1996 |
peter |
Remove the partial support for a shared -lcc_int, since it's been unusable for a fair while. cc1, cc1plus etc have been linked static for some time.
|
18390 |
19-Sep-1996 |
peter |
Man the lifeboats! Tie down the hatches! Red alert! Activate gcc-2.7.2.1!
(the old cc has been tagged with "gcc_2_6_3_final" so we have a reference point in case of unforseen disasters...)
This has the objc backend active, and I think I've managed to get the f77 f2c support through in one piece, but I don't know fortran to test it.
A 'make world' change and libobjc commit will follow.
If you normally do 'make -DNOCLEAN world', do not do so this time, I know it can fail with groff.
This version of gcc makes a **LOT** more warnings on our kernel.
|
17142 |
12-Jul-1996 |
jkh |
General -Wall warning cleanup, part I. Submitted-By: Kent Vander Velden <graphix@iastate.edu>
|
13209 |
04-Jan-1996 |
jkh |
Work around optimizer strength reduction bug. Submitted by: Richard Henderson <richard@atheist.tamu.edu> Obtained from: bug-gcc@prep.ai.mit.edu
|
8858 |
30-May-1995 |
rgrimes |
Remove trailing whitespace.
|
7048 |
13-Mar-1995 |
ache |
Bump SHLIB_MAJOR to 263 to match ../Makefile.inc
|
6996 |
11-Mar-1995 |
nate |
Updated the sources to gcc 2.6.3 with FreeBSD changes already applied. Note: This isn't the most correct way, but it works and it's fast.
|
6979 |
10-Mar-1995 |
phk |
Since we are in the gcc bashing mood anyway: Add two changes for basic-block profiling: 1. use a .stabs(25) symbol to link all the data structures together with. The regular method isn't safe for the kernel. 2. add a BB before the prologue and add a BB after the epilogue, this alows us to find the length of any counted BB. This is a cheap and somewhat reasonable measure of actual cost.
|
4491 |
15-Nov-1994 |
phk |
Integrated GCC-2.6.1 -> GCC-2.6.2 changes.
Notice that the libgcc DOESN'T change number, because there are no changes.
Also now the gnu2bmake stuff is synchronized again.
I commit this so that others can test too.
You might want to postpone any "make worlds" until tomorrow, to avoid any problems I didn't see in the first pass.
Thanks to Bruce for rounding up our changes to gcc.
|
4226 |
07-Nov-1994 |
phk |
As pointed out by Paul Traina, we need the libs to be 261.0 not 26.1.
|
4215 |
06-Nov-1994 |
bde |
Restore my fixes to 2.6.0. The changes should not affect anything except profiling and wchar_t. Profiled libraries will shrink.
tm.h: Our wchar_t is int, not unsigned short. Always link statically if profiling. Define all the SPECs together.
final.c, tm.h: Don't emit unused profiling code and data.
aux-output.c: Always preserve the PIC register if profiling.
aux-output.c, tm.h: Implement FUNCTION_PROFILER_EPILOGUE (currently not used).
New: tm.h: Set the target defaults in the correct way.
|
4113 |
03-Nov-1994 |
phk |
---------------------------------- GCC-2.6.1 COMES TO FREEBSD-current ---------------------------------- Everybody needs to 'make world'.
Oakland, Nov 2nd 1994. In a surprise move this sunny afternoon, the release- engineer for the slightly delayed FreeBSD-2.0, Poul-Henning Kamp (28), decided to pull in the new version 2.6.1 of the GNU C-compiler. The new version of the compiler was release today at noon, and hardly 9 hours later it was committed into the FreeBSD-current source-repository. "It's is simply because we have had too much trouble with the version 2.6.0 of the compiler" Poul-Henning told the FreeBSD-Gazette, "we took a gamble when we decided to use that as our compiler for the 2.0 release, but it seems to pay of in the end now" he concludes. The move has not been discussed on the "core" list at all, and will come as a surprise for most Poul-Hennings peers. "I have only discussed it with Jordan [J. K. Hubbard, the FreeBSD's resident humourist], and we agreed that we needed to do it, so ... I did it!". After a breath he added with a grin: "My email will probably get an all time 'disk-full' now!". This will bring quite a flag-day to the FreeBSD developers, the patch-file is almost 1.4 Megabyte, and they will have to run "make world" to get entirely -current again. "Too bad, but we just had to do this." Was the only comment from Poul-Henning to these problems. When asked how this move would impact the 2.0 release-date, Poul-Hennings face grew dark, he mumbled some very Danish words while he moved his fingers in strange geometrical patterns. Immediately something ecclipsed the Sun, a minor tremor shook the buildings, and the temperature fell significantly. We decided not to pursure the question.
----------- JOB-SECTION ----------- Are you a dedicated GCC-hacker ? We BADLY need somebody to look at the 'freebsd' OS in gcc, sanitize it and carry the patches back to the GNU people. In particular, we need to get out of the "i386-only" spot we are in now. I have the stuff to take a gnu-dist into bmake-form, and will do that part.
Please apply to phk@freebsd.org
No Novice Need Apply.
|
3840 |
25-Oct-1994 |
dg |
Changed NO_SHARED_LIBCC_INT to SHARED_LIBCC_INT and changed the logic as appropriate. This makes gcc not built with a shared cc_int the default.
|
2938 |
20-Sep-1994 |
bde |
Don't build profiled library.
|
2907 |
19-Sep-1994 |
wollman |
For Bruce: -DNO_SHARED_LIBCC_INT reverts back to static libcc_int. This makes the back end run faster, but at the cost of speed.
|
2871 |
18-Sep-1994 |
wollman |
Make GCC's back end be shared among all languages. cc, c++, and cpp now no longer link against the whole library, since they don't require much from it, but just compile the few small modules they actually need static.
This should save a measurable amount of space; compare:
-r-xr-xr-x 1 bin bin 155648 Sep 18 18:00 cc1* -r-xr-xr-x 1 root bin 1048576 Sep 18 17:33 cc1.noshae*
Of course, the library takes up a bit of space, but when you add in the savings from the C++ compiler, you more than make up the difference:
-r--r--r-- 1 bin bin 1157344 Sep 18 18:27 /usr/lib/libcc_int.so.26.0 -r-xr-xr-x 1 bin bin 491520 Sep 18 18:27 /usr/libexec/cc1plus*
|
2863 |
18-Sep-1994 |
rgrimes |
Add q modifier (for long longs) support to -Wformat. Reviewed by: bde
|
1824 |
02-Aug-1994 |
phk |
This commit was generated by cvs2svn to compensate for changes in r1823, which included commits to RCS files with non-trunk default branches.
|