diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2010-01-25 15:21:16 +0100 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2010-01-25 15:21:16 +0100 |
commit | 3bb3f6d6e0e479dfbdbd838d8659fbfc763eaf09 (patch) | |
tree | 54850037d6cfdb1cf7eb673529bc194fb29790cc /gcc/ada/link.c | |
parent | 00f88f071eb35d2cbc91823a192b054c3232d0ee (diff) | |
download | gcc-3bb3f6d6e0e479dfbdbd838d8659fbfc763eaf09.zip gcc-3bb3f6d6e0e479dfbdbd838d8659fbfc763eaf09.tar.gz gcc-3bb3f6d6e0e479dfbdbd838d8659fbfc763eaf09.tar.bz2 |
[multiple changes]
2010-01-25 Florian Villoing <villoing@adacore.com>
* gnat_ugn.texi: Fix typo.
2010-01-25 Thomas Quinot <quinot@adacore.com>
* scos.ads: Update specification.
2010-01-25 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Process_PPCs): If a postcondition is present and the
enclosing subprogram has no previous spec, attach postcondition
procedure to the defining entity for the body.
2010-01-25 Ed Schonberg <schonberg@adacore.com>
* exp_aggr.adb (Build_Record_Aggr_Code); Do not generate call to
initialization procedure of the ancestor part of an extension aggregate
if it is an interface type.
2010-01-25 Vincent Celier <celier@adacore.com>
* gnatlink.adb (Process_Binder_File): The directory for the shared
version of libgcc in the run path options is found in the subdirectory
indicated by __gnat_default_libgcc_subdir.
* link.c: Declare new const char * __gnat_default_libgcc_subdir for
each platform.
2010-01-25 Ed Schonberg <schonberg@adacore.com>
* sem_prag.adb: More flexible pragma Annotate.
From-SVN: r156209
Diffstat (limited to 'gcc/ada/link.c')
-rw-r--r-- | gcc/ada/link.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/gcc/ada/link.c b/gcc/ada/link.c index 6ebd329..1cf6cfd 100644 --- a/gcc/ada/link.c +++ b/gcc/ada/link.c @@ -71,6 +71,9 @@ /* separate_run_path_options is set to 1 when separate "rpath" arguments */ /* must be passed to the linker for each directory in the rpath. */ +/* default_libgcc_subdir is the subdirectory name (from the installation */ +/* root) where we may find a shared libgcc to use by default. */ + /* RESPONSE FILE & GNU LINKER */ /* -------------------------- */ /* objlist_file_supported and using_gnu_link used together tell gnatlink */ @@ -96,6 +99,7 @@ char __gnat_shared_libgcc_default = STATIC; unsigned char __gnat_using_gnu_linker = 0; const char *__gnat_object_library_extension = ".a"; unsigned char __gnat_separate_run_path_options = 0; +const char *__gnat_default_libgcc_subdir = "lib"; #elif defined (sgi) const char *__gnat_object_file_option = "-Wl,-objectlist,"; @@ -108,6 +112,15 @@ unsigned char __gnat_using_gnu_linker = 0; const char *__gnat_object_library_extension = ".a"; unsigned char __gnat_separate_run_path_options = 0; +/* The libgcc_s locations have changed in GCC 4. The n32 version used + to be in "lib", it moved to "lib32" and "lib" became the home of + the o32 version. We are targetting n32 by default, so ... */ +#if __GNUC__ < 4 +const char *__gnat_default_libgcc_subdir = "lib"; +#else +const char *__gnat_default_libgcc_subdir = "lib32"; +#endif + #elif defined (__WIN32) const char *__gnat_object_file_option = ""; const char *__gnat_run_path_option = ""; @@ -118,6 +131,7 @@ char __gnat_shared_libgcc_default = STATIC; 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 (__hpux__) const char *__gnat_object_file_option = "-Wl,-c,"; @@ -129,6 +143,7 @@ char __gnat_shared_libgcc_default = STATIC; unsigned char __gnat_using_gnu_linker = 0; const char *__gnat_object_library_extension = ".a"; unsigned char __gnat_separate_run_path_options = 0; +const char *__gnat_default_libgcc_subdir = "lib"; #elif defined (_AIX) const char *__gnat_object_file_option = "-Wl,-f,"; @@ -140,6 +155,7 @@ char __gnat_shared_libgcc_default = STATIC; unsigned char __gnat_using_gnu_linker = 0; 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 = ""; @@ -151,6 +167,7 @@ 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 = ""; @@ -162,6 +179,13 @@ 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 = ""; @@ -173,6 +197,7 @@ 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 (__APPLE__) const char *__gnat_object_file_option = "-Wl,-filelist,"; @@ -184,6 +209,7 @@ unsigned char __gnat_objlist_file_supported = 1; unsigned char __gnat_using_gnu_linker = 0; const char *__gnat_object_library_extension = ".a"; unsigned char __gnat_separate_run_path_options = 1; +const char *__gnat_default_libgcc_subdir = "lib"; #elif defined (linux) || defined(__GLIBC__) const char *__gnat_object_file_option = ""; @@ -195,6 +221,11 @@ 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; +#if defined (__x86_64) +const char *__gnat_default_libgcc_subdir = "lib64"; +#else +const char *__gnat_default_libgcc_subdir = "lib"; +#endif #elif defined (__svr4__) && defined (i386) const char *__gnat_object_file_option = ""; @@ -206,6 +237,7 @@ 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; +const char *__gnat_default_libgcc_subdir = "lib"; #else @@ -220,4 +252,5 @@ 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; +const char *__gnat_default_libgcc_subdir = "lib"; #endif |