Commit Graph

342 Commits

Author SHA1 Message Date
Peter Wemm
20fe68acb9 Revise previous commit - I managed to mess up a 1-line change and broke
amd64 world.  The csu code evalues this Makefile with a different origin.
2004-06-11 00:35:29 +00:00
Peter Wemm
aabc36c5b8 The gcc/config/i386/freebsd64.h file neglects to override the default
(bogus, application name space) mcount function name on amd64.  Override
it here instead.

I've done it this way to avoid touching gcc source while 3.4 is in
progress, and this is the smallest, lowest impact I could come up with.
Adding a patch touches about 10-14 lines of Makefile, this touches only 1.
This will likely go away with the 3.4 import.

I spoke with Alexander about this a few days ago, but waited until after
sorting out some of the other bugs in the userland profiling.
2004-06-10 22:18:33 +00:00
Alexander Kabaev
4e02989415 Remove componenst which are not part of GCC 3.3 and which are not likely
to get used again in the future.
2004-05-29 04:05:37 +00:00
Bruce Evans
72abc018fe Rremoved bogus -static from CFLAGS. Makeworld will add -static in the
correct place if needed and possible.  Self-hosted builds can just use
the system default.
2004-02-26 07:50:56 +00:00
Bruce Evans
c561816b66 Backed out the residue of rev.1.13 (bogus addition of -static to CFLAGS).
Makeworld will add -static in the correct place if needed and possible.
Self-hosted builds can just use the system default.

Fixed some nearby style bugs (code unrelated to its comment, and comment
formatting).
2004-02-26 07:08:33 +00:00
Andrey A. Chernov
275e64c344 Remove getopt*.c, we already have compatible getopt_long() in libc
(cc toolchain use it rarely, so no surprizes should occurse)
2004-02-17 03:18:24 +00:00
Ruslan Ermilov
47d7e8a96f Fixed style of DPADD and LDADD assignments as per style.Makefile(5). 2004-02-05 22:44:25 +00:00
Alexander Kabaev
1d38183672 Do not treat make variables as Perl variables. 2004-01-26 16:12:29 +00:00
Ruslan Ermilov
0161ff2670 Fixed "make clean". 2004-01-15 10:07:59 +00:00
Ruslan Ermilov
d2ec2cabee Last revision also added duplicate SRCS. Fixed this so that
the resulting .a library has only unique .o files.

Noticed by:	bde
2004-01-12 22:02:31 +00:00
Ruslan Ermilov
24c50acd3f 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.
2004-01-12 20:08:20 +00:00
Ruslan Ermilov
1b427c9cd4 Removed duplicate SRCS. 2004-01-12 07:46:20 +00:00
Ruslan Ermilov
2eb3a038d7 Ensure that generated headers are here before we build .depend
and object files in a less hackish way compatible with further
planned changes to bsd.dep.mk.
2004-01-11 20:45:46 +00:00
Alexander Kabaev
eb46541e9c Stop compiling files which are not part of GCC 3.3.x. 2004-01-05 20:23:16 +00:00
Alexander Kabaev
cd3d9d6c3c Use __cxa_atexit, rather than atexit, to register C++ destructors for local
statics and global objects.  This is essential for fully standards-compliant
handling of destructors, and requires __cxa_atexit in libc.
2003-12-19 18:20:48 +00:00
Alexander Kabaev
903f6fc326 Add two additional headers for amd64 and x86.
Reported by: Ollivier Robert
2003-12-09 16:31:30 +00:00
David E. O'Brien
57ec2fc326 If ${GCC_CPU}-c.c exists, we need to use it. 2003-07-31 19:41:32 +00:00
Alexander Kabaev
0810229e75 Including dynamically generated osreldate.h wasn't such a good
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.
2003-07-13 02:41:48 +00:00
Alexander Kabaev
00041cf539 Include osreldate.h instead of sys/param.h to get __FreeBSD_version
definition. This fixes buildworld breakage on ia64.
2003-07-11 18:55:58 +00:00
Alexander Kabaev
e67810e696 Update bmake bits to build GCC 3.3.1-prerelease. 2003-07-11 05:37:23 +00:00
Alexander Kabaev
487ee93a17 Update for GCC 3.3.1-pre. 2003-07-11 05:33:24 +00:00
Ruslan Ermilov
68b4ee7bfa Fixed build.
Noticed by:	bde
2003-07-01 14:46:26 +00:00
Peter Wemm
fc369c7cd9 Add missing quote after cut/paste error in last commit. :-( 2003-06-26 20:34:08 +00:00
Peter Wemm
01e5a2aede Configure gcc in biarch mode for amd64 so that the -m32 flag is enabled
for things like boot blocks etc.

Reviewed by:  kan
2003-06-26 03:02:32 +00:00
Peter Wemm
a96996a182 When building a shared library, link it against libgcc_pic.a instead of the
non-PIC libgcc.a.  Linking non-pic code into a shared library is not
a good thing.  It happens to break amd64 at compile time, and the ppc
folks want it too.  The problem is mainly with C++ code, unwind-dw2.c
in particular.  Most of the other functions in libgcc.a are self
contained so most of the time it isn't a problem.  The dwarf2 unwinder
is not safe though since it does make global variable references.

Reviewed by:	kan
2003-06-13 22:25:41 +00:00
Jun Kuriyama
3a624f5e23 Use
cat ${.ALLSRC} > ${.TARGET}
rather than
	ln -sf ${.ALLSRC} ${.TARGET}
not to depends on absolute-path of symbolic links.

Commented by:  marcel, obrien, bde
2003-06-06 13:46:55 +00:00
Peter Wemm
cd51f0035e 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)
2003-05-24 20:58:47 +00:00
David E. O'Brien
8f3bf9945d Lock GCC w/o -m32 into 64-bit mode. 2003-05-01 15:00:46 +00:00
David E. O'Brien
a12d8aed9a We're changing the platform name from x86[_-]86 to amd64. 2003-04-26 20:04:38 +00:00
Ruslan Ermilov
4d63e8de71 Mark bits that do not require an object directory as such. 2003-04-01 12:37:54 +00:00
Ruslan Ermilov
2587947187 Install the gcov(1) manpage; kernbb(8) references it. 2003-02-24 22:58:19 +00:00
David E. O'Brien
685272c479 Gperf is usable again. 2002-12-04 17:34:21 +00:00
David E. O'Brien
f685377c2e Remove our custom mixed ELF/a.out support. This means the base compiler
now only produce ELF objects.  It also makes us closer to stock GCC, and
simplifies the set of changes we still need from stock GCC on every import.

Applauded by:	peter
Approved by:	re
2002-11-26 18:25:20 +00:00
Ruslan Ermilov
4192cfffe2 Bootstrapping aid for 4.0-RELEASE. 2002-11-13 11:50:40 +00:00
David E. O'Brien
837bd2fa82 Better emulate the FSF build for Sparc64. 2002-11-06 07:00:59 +00:00
David E. O'Brien
597e16e012 We HAVE_STPCPY now. 2002-10-20 07:50:20 +00:00
Alexander Kabaev
9734ce03a2 Add multilib_options variable definition.
Approved by:	obrien
2002-10-10 04:56:35 +00:00
Peter Wemm
66422f5b7a 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
2002-09-17 01:49:00 +00:00
David E. O'Brien
1ca4970561 We're going to have to use a TARGET_ARCH of "x86_64" rather than "x86-64"
to make building GCC happy.
2002-09-12 15:56:21 +00:00
David E. O'Brien
60f9b09d26 Allow one to profile FORTRAN77 programs. 2002-06-09 00:03:56 +00:00
David E. O'Brien
9291f1b122 Restore revision 1.15 (use profiled C++ libs) which wasn't on the WIP_GCC31
branch and thus was lost in the shuffle on the move to Gcc 3.1.
2002-06-08 19:58:31 +00:00
David E. O'Brien
a32192cc4f Fix compiling FORTRAN77 programs. 2002-06-08 18:48:40 +00:00
David E. O'Brien
86f99a57b2 Read specs from /usr/libdata/gcc/specs if it exists. 2002-06-06 03:47:02 +00:00
David E. O'Brien
eb5cb11b70 The best we can do about man pages for the moment. 2002-06-05 21:30:46 +00:00
David E. O'Brien
f09cdb5b44 Search the "backward" C++ compatibility include dir also. 2002-06-05 16:10:59 +00:00
David E. O'Brien
1fd8bea50e We don't need bsd.dep.mk here. 2002-06-05 15:40:39 +00:00
David E. O'Brien
d09b305248 Install the i386 MMX headers, and IA-64 intrinsics functions.
Requested by:	peter
2002-06-04 20:00:29 +00:00
David E. O'Brien
8df64a7d4f We don't need this library any more. 2002-06-04 19:45:09 +00:00
David E. O'Brien
ca9578f3ef I missed the setting of PREFIX_INCLUDE_DIR when I visually santity checked
the output from a autoconfig run.
2002-05-27 17:48:28 +00:00
David E. O'Brien
5a87307b7f Use a more API denoting way to handle what is in libc and what isn't. 2002-05-18 04:49:44 +00:00