diff options
author | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-11-01 23:44:35 +0000 |
---|---|---|
committer | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-11-01 23:44:35 +0000 |
commit | 13c3046411bee2b5dec8db03f3d2ee4fa79274bc (patch) | |
tree | baab8efbfd13ebfebeb8f47b71216ea988044443 | |
parent | f37ef985f35a963f06b8112872899cb9d6811969 (diff) | |
download | gcc-13c3046411bee2b5dec8db03f3d2ee4fa79274bc.tar.gz |
* config/alpha/alpha.h (WORD_SWITCH_TAKES_ARG): Remove.
* config/cris/cris.h (WORD_SWITCH_TAKES_ARG): Remove.
(CC1_SPEC): Don't handle -target.
* config/darwin.h (WORD_SWITCH_TAKES_ARG): Remove single-argument
options.
* config/darwin.opt (Zallowable_client, Zbundle_loader,
Zdylib_file, Zexported_symbols_list, Zfn_seg_addr_table_filename,
Zimage_base, Zinit, Zinstall_name, Zmultiply_defined,
Zmultiplydefinedunused, Zseg_addr_table, Zsegs_read_only_addr,
Zsegs_read_write_addr, Zumbrella, Zunexported_symbols_list,
Zweak_reference_mismatches, client_name, compatibility_version,
current_version, dylinker_install_name, pagezero_size,
read_only_relocs, seg1addr, segs_read_only_addr,
segs_read_write_addr, sub_library, sub_umbrella): New.
* config/freebsd-spec.h (BSD_WORD_SWITCH_TAKES_ARG): Remove.
* config/freebsd.h (WORD_SWITCH_TAKES_ARG): Remove.
* config/freebsd.opt: New.
* config/interix.h (WORD_SWITCH_TAKES_ARG): Remove.
* config/mips/iris6.h (WORD_SWITCH_TAKES_ARG): Remove.
* config/rpath.opt: New.
* config.gcc (*-*-freebsd*): Use rpath.opt and freebsd.opt.
(alpha*-dec-osf5.1*, i[34567]86-*-interix3*, mips-sgi-irix6.5*):
Use rpath.opt.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166156 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 26 | ||||
-rw-r--r-- | gcc/config.gcc | 4 | ||||
-rw-r--r-- | gcc/config/alpha/alpha.h | 3 | ||||
-rw-r--r-- | gcc/config/cris/cris.h | 12 | ||||
-rw-r--r-- | gcc/config/darwin.h | 30 | ||||
-rw-r--r-- | gcc/config/darwin.opt | 83 | ||||
-rw-r--r-- | gcc/config/freebsd-spec.h | 8 | ||||
-rw-r--r-- | gcc/config/freebsd.h | 6 | ||||
-rw-r--r-- | gcc/config/freebsd.opt | 38 | ||||
-rw-r--r-- | gcc/config/interix.h | 5 | ||||
-rw-r--r-- | gcc/config/mips/iris6.h | 4 | ||||
-rw-r--r-- | gcc/config/rpath.opt | 29 |
12 files changed, 180 insertions, 68 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0c2f666a467..1ca5b0be246 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,31 @@ 2010-11-01 Joseph Myers <joseph@codesourcery.com> + * config/alpha/alpha.h (WORD_SWITCH_TAKES_ARG): Remove. + * config/cris/cris.h (WORD_SWITCH_TAKES_ARG): Remove. + (CC1_SPEC): Don't handle -target. + * config/darwin.h (WORD_SWITCH_TAKES_ARG): Remove single-argument + options. + * config/darwin.opt (Zallowable_client, Zbundle_loader, + Zdylib_file, Zexported_symbols_list, Zfn_seg_addr_table_filename, + Zimage_base, Zinit, Zinstall_name, Zmultiply_defined, + Zmultiplydefinedunused, Zseg_addr_table, Zsegs_read_only_addr, + Zsegs_read_write_addr, Zumbrella, Zunexported_symbols_list, + Zweak_reference_mismatches, client_name, compatibility_version, + current_version, dylinker_install_name, pagezero_size, + read_only_relocs, seg1addr, segs_read_only_addr, + segs_read_write_addr, sub_library, sub_umbrella): New. + * config/freebsd-spec.h (BSD_WORD_SWITCH_TAKES_ARG): Remove. + * config/freebsd.h (WORD_SWITCH_TAKES_ARG): Remove. + * config/freebsd.opt: New. + * config/interix.h (WORD_SWITCH_TAKES_ARG): Remove. + * config/mips/iris6.h (WORD_SWITCH_TAKES_ARG): Remove. + * config/rpath.opt: New. + * config.gcc (*-*-freebsd*): Use rpath.opt and freebsd.opt. + (alpha*-dec-osf5.1*, i[34567]86-*-interix3*, mips-sgi-irix6.5*): + Use rpath.opt. + +2010-11-01 Joseph Myers <joseph@codesourcery.com> + * common.opt (R, T, Tbss, Tdata, Ttext, h, z): New. * defaults.h (DEFAULT_SWITCH_TAKES_ARG, SWITCH_TAKES_ARG): Remove. (DEFAULT_WORD_SWITCH_TAKES_ARG): Define to 0. diff --git a/gcc/config.gcc b/gcc/config.gcc index b353fa00c20..64eaaefa3d2 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -528,6 +528,7 @@ case ${target} in ;; esac fbsd_tm_file="${fbsd_tm_file} freebsd-spec.h freebsd.h freebsd-stdint.h" + extra_options="$extra_options rpath.opt freebsd.opt" case ${target} in *-*-freebsd[345].*) :;; @@ -727,6 +728,7 @@ alpha*-dec-osf5.1*) tmake_file="alpha/t-alpha alpha/t-ieee alpha/t-crtfm alpha/t-osf5" tm_file="${tm_file} alpha/osf5.h" tm_defines="${tm_defines} TARGET_SUPPORT_ARCH=1" + extra_options="${extra_options} rpath.opt" extra_headers=va_list.h use_gcc_stdint=provide case ${enable_threads} in @@ -1518,6 +1520,7 @@ i[34567]86-*-mingw* | x86_64-*-mingw*) i[34567]86-*-interix3*) tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h i386/i386-interix.h i386/i386-interix3.h interix.h interix3.h" tmake_file="${tmake_file} i386/t-interix" + extra_options="${extra_options} rpath.opt" extra_objs=winnt.o target_gtfiles="\$(srcdir)/config/i386/winnt.c" if test x$enable_threads = xyes ; then @@ -1784,6 +1787,7 @@ microblaze*-*-*) mips-sgi-irix6.5*) tm_file="elfos.h ${tm_file} mips/iris6.h" tmake_file="mips/t-iris mips/t-iris6 mips/t-slibgcc-irix" + extra_options="${extra_options} rpath.opt" target_cpu_default="MASK_ABICALLS" tm_defines="${tm_defines} MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_N32" # Only IRIX Development Foundation 1.3 for IRIX 6.5 provides stdint.h. diff --git a/gcc/config/alpha/alpha.h b/gcc/config/alpha/alpha.h index 7681b4ba5b5..5426a6414ec 100644 --- a/gcc/config/alpha/alpha.h +++ b/gcc/config/alpha/alpha.h @@ -96,9 +96,6 @@ along with GCC; see the file COPYING3. If not see while (0) #endif -#define WORD_SWITCH_TAKES_ARG(STR) \ - (!strcmp (STR, "rpath") || DEFAULT_WORD_SWITCH_TAKES_ARG(STR)) - /* Print subsidiary information on the compiler version in use. */ #define TARGET_VERSION diff --git a/gcc/config/cris/cris.h b/gcc/config/cris/cris.h index 776c44e2c81..a7b7e4d1e62 100644 --- a/gcc/config/cris/cris.h +++ b/gcc/config/cris/cris.h @@ -96,14 +96,6 @@ extern int cris_cpu_version; /* Node: Driver */ -/* When using make with defaults.mak for Sun this will handily remove - any "-target sun*" switches. */ -/* We need to override any previous definitions (linux.h) */ -#undef WORD_SWITCH_TAKES_ARG -#define WORD_SWITCH_TAKES_ARG(STR) \ - (DEFAULT_WORD_SWITCH_TAKES_ARG (STR) \ - || !strcmp (STR, "target")) - /* Also provide canonical vN definitions when user specifies an alias. Note that -melf overrides -maout. */ @@ -168,12 +160,10 @@ extern int cris_cpu_version; " -D__CRIS_arch_tune=" CRIS_DEFAULT_TUNE "}}}}}"\ CRIS_ARCH_CPP_DEFAULT -/* Remove those Sun-make "target" switches. */ /* Override previous definitions (linux.h). */ #undef CC1_SPEC #define CC1_SPEC \ - "%{target*:}\ - %{metrax4:-march=v3}\ + "%{metrax4:-march=v3}\ %{metrax100:-march=v8}\ %(cc1_subtarget)" diff --git a/gcc/config/darwin.h b/gcc/config/darwin.h index cd938cf6fbf..c488db22103 100644 --- a/gcc/config/darwin.h +++ b/gcc/config/darwin.h @@ -198,43 +198,13 @@ extern GTY(()) int darwin_ms_struct; #undef WORD_SWITCH_TAKES_ARG #define WORD_SWITCH_TAKES_ARG(STR) \ (DEFAULT_WORD_SWITCH_TAKES_ARG (STR) ? 1 : \ - !strcmp (STR, "Zallowable_client") ? 1 : \ - !strcmp (STR, "arch") ? 1 : \ - !strcmp (STR, "arch_only") ? 1 : \ - !strcmp (STR, "Zbundle_loader") ? 1 : \ - !strcmp (STR, "client_name") ? 1 : \ - !strcmp (STR, "compatibility_version") ? 1 : \ - !strcmp (STR, "current_version") ? 1 : \ - !strcmp (STR, "Zdylib_file") ? 1 : \ - !strcmp (STR, "Zexported_symbols_list") ? 1 : \ - !strcmp (STR, "Zimage_base") ? 1 : \ - !strcmp (STR, "Zinit") ? 1 : \ - !strcmp (STR, "Zinstall_name") ? 1 : \ - !strcmp (STR, "Zmultiplydefinedunused") ? 1 : \ - !strcmp (STR, "Zmultiply_defined") ? 1 : \ - !strcmp (STR, "precomp-trustfile") ? 1 : \ - !strcmp (STR, "read_only_relocs") ? 1 : \ !strcmp (STR, "sectcreate") ? 3 : \ !strcmp (STR, "sectorder") ? 3 : \ !strcmp (STR, "Zsegaddr") ? 2 : \ - !strcmp (STR, "Zsegs_read_only_addr") ? 1 : \ - !strcmp (STR, "Zsegs_read_write_addr") ? 1 : \ - !strcmp (STR, "Zseg_addr_table") ? 1 : \ - !strcmp (STR, "Zfn_seg_addr_table_filename") ? 1 :\ - !strcmp (STR, "seg1addr") ? 1 : \ !strcmp (STR, "segprot") ? 3 : \ - !strcmp (STR, "sub_library") ? 1 : \ - !strcmp (STR, "sub_umbrella") ? 1 : \ - !strcmp (STR, "Zumbrella") ? 1 : \ - !strcmp (STR, "Zunexported_symbols_list") ? 1 : \ - !strcmp (STR, "Zweak_reference_mismatches") ? 1 : \ - !strcmp (STR, "pagezero_size") ? 1 : \ - !strcmp (STR, "segs_read_only_addr") ? 1 : \ - !strcmp (STR, "segs_read_write_addr") ? 1 : \ !strcmp (STR, "sectalign") ? 3 : \ !strcmp (STR, "sectobjectsymbols") ? 2 : \ !strcmp (STR, "segcreate") ? 3 : \ - !strcmp (STR, "dylinker_install_name") ? 1 : \ 0) #define SUBTARGET_C_COMMON_OVERRIDE_OPTIONS do { \ diff --git a/gcc/config/darwin.opt b/gcc/config/darwin.opt index afb122849f4..4435fea0987 100644 --- a/gcc/config/darwin.opt +++ b/gcc/config/darwin.opt @@ -1,6 +1,6 @@ ; Processor-independent options for Darwin. -; Copyright (C) 2005, 2007 Free Software Foundation, Inc. +; Copyright (C) 2005, 2007, 2010 Free Software Foundation, Inc. ; ; This file is part of GCC. ; @@ -54,5 +54,86 @@ iframework Target RejectNegative C ObjC C++ ObjC++ Joined Separate -iframework <dir> Add <dir> to the end of the system framework include path +Zallowable_client +Driver Separate + +Zbundle_loader +Driver Separate + +Zdylib_file +Driver Separate + +Zexported_symbols_list +Driver Separate + +Zfn_seg_addr_table_filename +Driver Separate + +Zimage_base +Driver Separate + +Zinit +Driver Separate + +Zinstall_name +Driver Separate + +Zmultiply_defined +Driver Separate + +Zmultiplydefinedunused +Driver Separate + +Zseg_addr_table +Driver Separate + +Zsegs_read_only_addr +Driver Separate + +Zsegs_read_write_addr +Driver Separate + +Zumbrella +Driver Separate + +Zunexported_symbols_list +Driver Separate + +Zweak_reference_mismatches +Driver Separate + +client_name +Driver Separate + +compatibility_version +Driver Separate + +current_version +Driver Separate + +dylinker_install_name +Driver Separate + +pagezero_size +Driver Separate + +read_only_relocs +Driver Separate + +seg1addr +Driver Separate + +segs_read_only_addr +Driver Separate + +segs_read_write_addr +Driver Separate + +sub_library +Driver Separate + +sub_umbrella +Driver Separate + undefined Driver Separate diff --git a/gcc/config/freebsd-spec.h b/gcc/config/freebsd-spec.h index 7e08e787007..00b7407b1f4 100644 --- a/gcc/config/freebsd-spec.h +++ b/gcc/config/freebsd-spec.h @@ -34,14 +34,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see /* In case we need to know. */ #define USING_CONFIG_FREEBSD_SPEC 1 -/* This defines which multi-letter switches take arguments. */ - -#define FBSD_WORD_SWITCH_TAKES_ARG(STR) \ - (DEFAULT_WORD_SWITCH_TAKES_ARG (STR) \ - || !strcmp ((STR), "rpath") || !strcmp ((STR), "rpath-link") \ - || !strcmp ((STR), "soname") || !strcmp ((STR), "defsym") \ - || !strcmp ((STR), "assert") || !strcmp ((STR), "dynamic-linker")) - #define FBSD_TARGET_OS_CPP_BUILTINS() \ do \ { \ diff --git a/gcc/config/freebsd.h b/gcc/config/freebsd.h index 83811891cf3..1a7dac9630d 100644 --- a/gcc/config/freebsd.h +++ b/gcc/config/freebsd.h @@ -30,12 +30,6 @@ along with GCC; see the file COPYING3. If not see /* In case we need to know. */ #define USING_CONFIG_FREEBSD 1 -/* This defines which switch words take arguments. - We have --assert etc. */ - -#undef WORD_SWITCH_TAKES_ARG -#define WORD_SWITCH_TAKES_ARG(STR) (FBSD_WORD_SWITCH_TAKES_ARG(STR)) - #undef TARGET_OS_CPP_BUILTINS #define TARGET_OS_CPP_BUILTINS() FBSD_TARGET_OS_CPP_BUILTINS() diff --git a/gcc/config/freebsd.opt b/gcc/config/freebsd.opt new file mode 100644 index 00000000000..26dc9dfdaa5 --- /dev/null +++ b/gcc/config/freebsd.opt @@ -0,0 +1,38 @@ +; FreeBSD options. + +; Copyright (C) 2010 +; Free Software Foundation, Inc. +; +; This file is part of GCC. +; +; GCC is free software; you can redistribute it and/or modify it under +; the terms of the GNU General Public License as published by the Free +; Software Foundation; either version 3, or (at your option) any later +; version. +; +; GCC is distributed in the hope that it will be useful, but WITHOUT ANY +; WARRANTY; without even the implied warranty of MERCHANTABILITY or +; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +; for more details. +; +; You should have received a copy of the GNU General Public License +; along with GCC; see the file COPYING3. If not see +; <http://www.gnu.org/licenses/>. + +; See the GCC internals manual (options.texi) for a description of this file's format. + +; Please try to keep this file in ASCII collating order. + +assert +Driver Separate + +defsym +Driver Separate + +rpath-link +Driver Separate + +soname +Driver Separate + +; This comment is to ensure we retain the blank line above. diff --git a/gcc/config/interix.h b/gcc/config/interix.h index 67698a92a51..658c534277a 100644 --- a/gcc/config/interix.h +++ b/gcc/config/interix.h @@ -58,11 +58,6 @@ for windows/multi thread */ #define STARTFILE_SPEC \ "%{!shared:%{pg:gcrt0%O%s}%{!pg:%{p:mcrt0%O%s}%{!p:crt0%O%s}}} %{shared:crti%O%s}" -#undef WORD_SWITCH_TAKES_ARG -#define WORD_SWITCH_TAKES_ARG(STR) \ - (DEFAULT_WORD_SWITCH_TAKES_ARG (STR) \ - || !strcmp(STR, "rpath")) - #define STDC_0_IN_SYSTEM_HEADERS 1 diff --git a/gcc/config/mips/iris6.h b/gcc/config/mips/iris6.h index 6fa8ffc0616..dd8eb1158af 100644 --- a/gcc/config/mips/iris6.h +++ b/gcc/config/mips/iris6.h @@ -146,10 +146,6 @@ along with GCC; see the file COPYING3. If not see #undef DEFAULT_SIGNED_CHAR #define DEFAULT_SIGNED_CHAR 0 -#define WORD_SWITCH_TAKES_ARG(STR) \ - (DEFAULT_WORD_SWITCH_TAKES_ARG (STR) \ - || strcmp (STR, "rpath") == 0) - #define TARGET_OS_CPP_BUILTINS() \ do \ { \ diff --git a/gcc/config/rpath.opt b/gcc/config/rpath.opt new file mode 100644 index 00000000000..c76e2fc598c --- /dev/null +++ b/gcc/config/rpath.opt @@ -0,0 +1,29 @@ +; -rpath option to the driver. + +; Copyright (C) 2010 +; Free Software Foundation, Inc. +; +; This file is part of GCC. +; +; GCC is free software; you can redistribute it and/or modify it under +; the terms of the GNU General Public License as published by the Free +; Software Foundation; either version 3, or (at your option) any later +; version. +; +; GCC is distributed in the hope that it will be useful, but WITHOUT ANY +; WARRANTY; without even the implied warranty of MERCHANTABILITY or +; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +; for more details. +; +; You should have received a copy of the GNU General Public License +; along with GCC; see the file COPYING3. If not see +; <http://www.gnu.org/licenses/>. + +; See the GCC internals manual (options.texi) for a description of this file's format. + +; Please try to keep this file in ASCII collating order. + +rpath +Driver Separate + +; This comment is to ensure we retain the blank line above. |