diff options
author | David O'Brien <obrien@FreeBSD.org> | 1999-06-02 00:08:20 +0000 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1999-06-01 18:08:20 -0600 |
commit | d0550c9b301ea97c735ea5e503848f155c7747a5 (patch) | |
tree | 698bc976bc30ff34007699ec57efd0021e2241f7 /gcc | |
parent | 2f9929812a5a4a5594b7b41e19868e3300758504 (diff) | |
download | gcc-d0550c9b301ea97c735ea5e503848f155c7747a5.zip gcc-d0550c9b301ea97c735ea5e503848f155c7747a5.tar.gz gcc-d0550c9b301ea97c735ea5e503848f155c7747a5.tar.bz2 |
configure.in (i[34567]86-*-freebsdelf): Don't include linux.h, i386/freebsd-elf.h no longer requires it.
* configure.in (i[34567]86-*-freebsdelf): Don't include linux.h,
i386/freebsd-elf.h no longer requires it. Instead include svr4.h.
* configure: Rebuilt.
* i386/freebsd-elf.h (DEFAULT_VTABLE_THUNKS): Define.
(ASM_COMMENT_START, ASM_APP_ON, ASM_APP_OFF, SET_ASM_OP): Likewise.
(PREFERRED_DEBUGGING_TYPE, WCHAR_UNSIGNED): Likewise.
(SWITCH_TAKES_ARG): Likewise.
* i386/freebsd.h: Remove FREEBSD_NATIVE support.
* config/t-freebsd: Moved from config/i386/ so it can used for all
FreeBSD targets.
From-SVN: r27305
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 13 | ||||
-rw-r--r-- | gcc/config/i386/freebsd-elf.h | 36 | ||||
-rw-r--r-- | gcc/config/i386/freebsd.h | 27 | ||||
-rw-r--r-- | gcc/config/t-freebsd (renamed from gcc/config/i386/t-freebsd) | 1 | ||||
-rwxr-xr-x | gcc/configure | 6 | ||||
-rw-r--r-- | gcc/configure.in | 6 |
6 files changed, 55 insertions, 34 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c0a7929..38bf699 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,16 @@ +Wed Jun 2 00:52:34 1999 David O'Brien <obrien@FreeBSD.org> + + * configure.in (i[34567]86-*-freebsdelf): Don't include linux.h, + i386/freebsd-elf.h no longer requires it. Instead include svr4.h. + * configure: Rebuilt. + * i386/freebsd-elf.h (DEFAULT_VTABLE_THUNKS): Define. + (ASM_COMMENT_START, ASM_APP_ON, ASM_APP_OFF, SET_ASM_OP): Likewise. + (PREFERRED_DEBUGGING_TYPE, WCHAR_UNSIGNED): Likewise. + (SWITCH_TAKES_ARG): Likewise. + * i386/freebsd.h: Remove FREEBSD_NATIVE support. + * config/t-freebsd: Moved from config/i386/ so it can used for all + FreeBSD targets. + Mon May 31 02:22:55 1999 Philippe De Muyter <phdm@macqel.be> * m68k/x-mot3300 (XCFLAGS): Fixed to match stb.o, not f/stb.o. diff --git a/gcc/config/i386/freebsd-elf.h b/gcc/config/i386/freebsd-elf.h index 35ea674..5668d3e 100644 --- a/gcc/config/i386/freebsd-elf.h +++ b/gcc/config/i386/freebsd-elf.h @@ -3,6 +3,7 @@ Contributed by Eric Youngdale. Modified for stabs-in-ELF by H.J. Lu. Adapted from GNU/Linux version by John Polstra. + Continued development by David O'Brien <obrien@freebsd.org> This file is part of GNU CC. @@ -34,6 +35,23 @@ Boston, MA 02111-1307, USA. */ libraries compiled with the native cc, so undef it. */ #undef NO_DOLLAR_IN_LABEL +/* Use more efficient ``thunks'' to implement C++ vtables. */ +#undef DEFAULT_VTABLE_THUNKS +#define DEFAULT_VTABLE_THUNKS 1 + +/* Override the default comment-starter of "/". */ +#undef ASM_COMMENT_START +#define ASM_COMMENT_START "#" + +#undef ASM_APP_ON +#define ASM_APP_ON "#APP\n" + +#undef ASM_APP_OFF +#define ASM_APP_OFF "#NO_APP\n" + +#undef SET_ASM_OP +#define SET_ASM_OP ".set" + /* This is how to output an element of a case-vector that is relative. This is only used for PIC code. See comments by the `casesi' insn in i386.md for an explanation of the expression this outputs. */ @@ -45,6 +63,10 @@ Boston, MA 02111-1307, USA. */ necessary when compiling PIC code. */ #define JUMP_TABLES_IN_TEXT_SECTION (flag_pic) +/* Use stabs instead of DWARF debug format. */ +#undef PREFERRED_DEBUGGING_TYPE +#define PREFERRED_DEBUGGING_TYPE DBX_DEBUG + /* Copy this from the svr4 specifications... */ /* Define the register numbers to be used in Dwarf debugging information. The SVR4 reference port C compiler uses the following register numbers @@ -140,6 +162,9 @@ Boston, MA 02111-1307, USA. */ #undef WCHAR_TYPE #define WCHAR_TYPE "int" + +#undef WCHAR_UNSIGNED +#define WCHAR_UNSIGNED 0 #undef WCHAR_TYPE_SIZE #define WCHAR_TYPE_SIZE BITS_PER_WORD @@ -150,6 +175,17 @@ Boston, MA 02111-1307, USA. */ #undef CPP_SPEC #define CPP_SPEC "%(cpp_cpu) %{fPIC:-D__PIC__ -D__pic__} %{fpic:-D__PIC__ -D__pic__} %{posix:-D_POSIX_SOURCE}" +/* This defines which switch letters take arguments. On FreeBSD, most of + the normal cases (defined in gcc.c) apply, and we also have -h* and + -z* options (for the linker) (comming from svr4). + We also have -R (alias --rpath), no -z, --soname (-h), --assert etc. */ + +#define SWITCH_TAKES_ARG(CHAR) \ + (DEFAULT_SWITCH_TAKES_ARG (CHAR) \ + || (CHAR) == 'h' \ + || (CHAR) == 'z' \ + || (CHAR) == 'R') + #undef LIB_SPEC #if 1 /* We no longer link with libc_p.a or libg.a by default. If you diff --git a/gcc/config/i386/freebsd.h b/gcc/config/i386/freebsd.h index 5230222..89fe216 100644 --- a/gcc/config/i386/freebsd.h +++ b/gcc/config/i386/freebsd.h @@ -245,30 +245,3 @@ do { \ #define STARTFILE_SPEC \ "%{shared:c++rt0.o%s} \ %{!shared:%{pg:gcrt0.o%s}%{!pg:%{static:scrt0.o%s}%{!static:crt0.o%s}}}" - -/* This is defined when gcc is compiled in the BSD-directory-tree, and must - * make up for the gap to all the stuff done in the GNU-makefiles. - */ - -#ifdef FREEBSD_NATIVE - -#define INCLUDE_DEFAULTS { \ - { "/usr/include", 0, 0, 0 }, \ - { "/usr/include/g++", "G++", 1, 1 }, \ - { 0, 0, 0, 0} \ - } - -#undef MD_EXEC_PREFIX -#define MD_EXEC_PREFIX "/usr/libexec/" - -#undef STANDARD_STARTFILE_PREFIX -#define STANDARD_STARTFILE_PREFIX "/usr/lib" - -#if 0 /* This is very wrong!!! */ -#define DEFAULT_TARGET_MACHINE "i386-unknown-freebsd_1.0" -#define GPLUSPLUS_INCLUDE_DIR "/usr/local/lib/gcc-lib/i386-unknown-freebsd_1.0/2.5.8/include" -#define TOOL_INCLUDE_DIR "/usr/local/i386-unknown-freebsd_1.0/include" -#define GCC_INCLUDE_DIR "/usr/local/lib/gcc-lib/i386-unknown-freebsd_1.0/2.5.8/include" -#endif - -#endif /* FREEBSD_NATIVE */ diff --git a/gcc/config/i386/t-freebsd b/gcc/config/t-freebsd index 5164669..9981686 100644 --- a/gcc/config/i386/t-freebsd +++ b/gcc/config/t-freebsd @@ -2,4 +2,3 @@ STMP_FIXPROTO = # Use only native include files USER_H = $(EXTRA_HEADERS) $(LANG_EXTRA_HEADERS) - diff --git a/gcc/configure b/gcc/configure index aa43c5a..dacbe34 100755 --- a/gcc/configure +++ b/gcc/configure @@ -3537,16 +3537,16 @@ for machine in $build $host $target; do # use_collect2=yes ;; i[34567]86-*-freebsdelf*) - tm_file="i386/i386.h i386/att.h linux.h i386/freebsd-elf.h i386/perform.h" + tm_file="i386/i386.h i386/att.h svr4.h i386/freebsd-elf.h i386/perform.h" extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" - tmake_file=i386/t-freebsd + tmake_file=t-freebsd gas=yes gnu_ld=yes stabs=yes ;; i[34567]86-*-freebsd*) tm_file=i386/freebsd.h - tmake_file=i386/t-freebsd + tmake_file=t-freebsd ;; i[34567]86-*-netbsd*) tm_file=i386/netbsd.h diff --git a/gcc/configure.in b/gcc/configure.in index a5c0d6d..2b0b9c2 100644 --- a/gcc/configure.in +++ b/gcc/configure.in @@ -1138,9 +1138,9 @@ changequote([,])dnl changequote(,)dnl i[34567]86-*-freebsdelf*) changequote([,])dnl - tm_file="i386/i386.h i386/att.h linux.h i386/freebsd-elf.h i386/perform.h" + tm_file="i386/i386.h i386/att.h svr4.h i386/freebsd-elf.h i386/perform.h" extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o" - tmake_file=i386/t-freebsd + tmake_file=t-freebsd gas=yes gnu_ld=yes stabs=yes @@ -1149,7 +1149,7 @@ changequote(,)dnl i[34567]86-*-freebsd*) changequote([,])dnl tm_file=i386/freebsd.h - tmake_file=i386/t-freebsd + tmake_file=t-freebsd ;; changequote(,)dnl i[34567]86-*-netbsd*) |