diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2011-08-02 17:21:19 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2011-08-02 17:21:19 +0200 |
commit | 4fbad0ba4c093d5653e70679aba43193a20881e5 (patch) | |
tree | cdbed559d62d3196ef10ffa5c397108b184f5e08 /gcc/ada/link.c | |
parent | 6ff6152d5046cab8da2873eb3a95bd85b7074194 (diff) | |
download | gcc-4fbad0ba4c093d5653e70679aba43193a20881e5.zip gcc-4fbad0ba4c093d5653e70679aba43193a20881e5.tar.gz gcc-4fbad0ba4c093d5653e70679aba43193a20881e5.tar.bz2 |
[multiple changes]
2011-08-02 Sergey Rybin <rybin@adacore.com>
* gnat_rm.texi: Ramification of pragma Eliminate documentation
- fix bugs in the description of Source_Trace;
- get rid of UNIT_NAME;
2011-08-02 Javier Miranda <miranda@adacore.com>
* exp_ch9.adb
(Build_Dispatching_Requeue): Adding support for VM targets
since we cannot directly reference the Tag entity.
* exp_sel.adb (Build_K): Adding support for VM targets.
(Build_S_Assignment): Adding support for VM targets.
* exp_disp.adb
(Default_Prim_Op_Position): In VM targets do not restrict availability
of predefined interface primitives to compiling in Ada 2005 mode.
(Is_Predefined_Interface_Primitive): In VM targets this service is not
restricted to compiling in Ada 2005 mode.
(Make_VM_TSD): Generate code that declares and initializes the OSD
record. Needed to support dispatching calls through synchronized
interfaces.
* exp_ch3.adb
(Make_Predefined_Primitive_Specs): Enable generation of predefined
primitives associated with synchronized interfaces.
(Make_Predefined_Primitive_Bodies): Enable generation of predefined
primitives associated with synchronized interfaces.
2011-08-02 Yannick Moy <moy@adacore.com>
* par-ch11.adb (P_Handled_Sequence_Of_Statements): mark a sequence of
statements hidden in SPARK if preceded by the HIDE directive
(Parse_Exception_Handlers): mark each exception handler in a sequence of
exception handlers as hidden in SPARK if preceded by the HIDE directive
* par-ch6.adb (P_Subprogram): mark a subprogram body hidden in SPARK
if starting with the HIDE directive
* par-ch7.adb (P_Package): mark a package body hidden in SPARK if
starting with the HIDE directive; mark the declarations in a private
part as hidden in SPARK if the private part starts with the HIDE
directive
* restrict.adb, restrict.ads
(Set_Hidden_Part_In_SPARK): record a range of slocs as hidden in SPARK
(Is_In_Hidden_Part_In_SPARK): new function which returns whether its
argument node belongs to a part which is hidden in SPARK
(Check_SPARK_Restriction): do not issue violations on nodes in hidden
parts in SPARK; protect the possibly costly call to
Is_In_Hidden_Part_In_SPARK by a check that the SPARK restriction is on
* scans.ads (Token_Type): new value Tok_SPARK_Hide in enumeration
* scng.adb (Accumulate_Token_Checksum_GNAT_6_3,
Accumulate_Token_Checksum_GNAT_5_03): add case for new token
Tok_SPARK_Hide.
(Scan): recognize special comment starting with '#' and followed by
SPARK keyword "hide" as a HIDE directive.
2011-08-02 Yannick Moy <moy@adacore.com>
* types.ads, erroutc.ads: Minor reformatting.
2011-08-02 Vincent Celier <celier@adacore.com>
* link.c: Add response file support for cross platforms.
From-SVN: r177179
Diffstat (limited to 'gcc/ada/link.c')
-rw-r--r-- | gcc/ada/link.c | 76 |
1 files changed, 46 insertions, 30 deletions
diff --git a/gcc/ada/link.c b/gcc/ada/link.c index a4722d2..3c21c97 100644 --- a/gcc/ada/link.c +++ b/gcc/ada/link.c @@ -37,6 +37,7 @@ extern "C" { #endif #include <string.h> +#include "auto-host.h" /* objlist_file_supported is set to 1 when the system linker allows */ /* response file, that is a file that contains the list of object files. */ @@ -160,36 +161,6 @@ const char *__gnat_object_library_extension = ".a"; unsigned char __gnat_separate_run_path_options = 0; const char *__gnat_default_libgcc_subdir = "lib"; -#elif defined (VMS) -const char *__gnat_object_file_option = ""; -const char *__gnat_run_path_option = ""; -char __gnat_shared_libgnat_default = STATIC; -char __gnat_shared_libgcc_default = STATIC; -int __gnat_link_max = 2147483647; -unsigned char __gnat_objlist_file_supported = 0; -unsigned char __gnat_using_gnu_linker = 0; -const char *__gnat_object_library_extension = ".olb"; -unsigned char __gnat_separate_run_path_options = 0; -const char *__gnat_default_libgcc_subdir = "lib"; - -#elif defined (sun) -const char *__gnat_object_file_option = ""; -const char *__gnat_run_path_option = "-Wl,-R"; -char __gnat_shared_libgnat_default = STATIC; -char __gnat_shared_libgcc_default = STATIC; -int __gnat_link_max = 2147483647; -unsigned char __gnat_objlist_file_supported = 0; -unsigned char __gnat_using_gnu_linker = 0; -const char *__gnat_object_library_extension = ".a"; -unsigned char __gnat_separate_run_path_options = 0; -#if defined (__sparc_v9__) || defined (__sparcv9) -const char *__gnat_default_libgcc_subdir = "lib/sparcv9"; -#elif defined (__x86_64) -const char *__gnat_default_libgcc_subdir = "lib/amd64"; -#else -const char *__gnat_default_libgcc_subdir = "lib"; -#endif - #elif defined (__FreeBSD__) const char *__gnat_object_file_option = ""; const char *__gnat_run_path_option = "-Wl,-rpath,"; @@ -230,6 +201,51 @@ const char *__gnat_default_libgcc_subdir = "lib64"; const char *__gnat_default_libgcc_subdir = "lib"; #endif +#elif (HAVE_GNU_LD) +/* These are the settings for all systems that use gnu ld. GNU style response + file is supported, the shared library default is STATIC. */ + +const char *__gnat_run_path_option = ""; +const char *__gnat_object_file_option = ""; +char __gnat_shared_libgnat_default = STATIC; +char __gnat_shared_libgcc_default = STATIC; +int __gnat_link_max = 8192; +unsigned char __gnat_objlist_file_supported = 1; +unsigned char __gnat_using_gnu_linker = 1; +const char *__gnat_object_library_extension = ".a"; +unsigned char __gnat_separate_run_path_options = 0; +const char *__gnat_default_libgcc_subdir = "lib"; + +#elif defined (VMS) +const char *__gnat_object_file_option = ""; +const char *__gnat_run_path_option = ""; +char __gnat_shared_libgnat_default = STATIC; +char __gnat_shared_libgcc_default = STATIC; +int __gnat_link_max = 2147483647; +unsigned char __gnat_objlist_file_supported = 0; +unsigned char __gnat_using_gnu_linker = 0; +const char *__gnat_object_library_extension = ".olb"; +unsigned char __gnat_separate_run_path_options = 0; +const char *__gnat_default_libgcc_subdir = "lib"; + +#elif defined (sun) +const char *__gnat_object_file_option = ""; +const char *__gnat_run_path_option = "-Wl,-R"; +char __gnat_shared_libgnat_default = STATIC; +char __gnat_shared_libgcc_default = STATIC; +int __gnat_link_max = 2147483647; +unsigned char __gnat_objlist_file_supported = 0; +unsigned char __gnat_using_gnu_linker = 0; +const char *__gnat_object_library_extension = ".a"; +unsigned char __gnat_separate_run_path_options = 0; +#if defined (__sparc_v9__) || defined (__sparcv9) +const char *__gnat_default_libgcc_subdir = "lib/sparcv9"; +#elif defined (__x86_64) +const char *__gnat_default_libgcc_subdir = "lib/amd64"; +#else +const char *__gnat_default_libgcc_subdir = "lib"; +#endif + #elif defined (__svr4__) && defined (i386) const char *__gnat_object_file_option = ""; const char *__gnat_run_path_option = ""; |