diff options
author | Iain Sandoe <iain@sandoe.co.uk> | 2021-10-05 19:54:30 +0100 |
---|---|---|
committer | Iain Sandoe <iain@sandoe.co.uk> | 2021-10-05 20:54:51 +0100 |
commit | e24760533b62bb7068e63eb8da49dbca2837d38d (patch) | |
tree | e36cd784ed1235ad6cccc7d5ffea4ab44763a387 /gcc | |
parent | d4c470c376b4cb82c9a0b7e8a4b88c44d5e4289d (diff) | |
download | gcc-e24760533b62bb7068e63eb8da49dbca2837d38d.zip gcc-e24760533b62bb7068e63eb8da49dbca2837d38d.tar.gz gcc-e24760533b62bb7068e63eb8da49dbca2837d38d.tar.bz2 |
Darwin, D: Fix bootstrap when target does not support -Bstatic/dynamic.
This fixes a bootstrap fail because saw_static_libcxx was unused for
targets without support for -Bstatic/dynamic.
The fix applied pushes the -static-libstdc++ back onto the command
line, which allows a target to substitute a static version of the
c++ standard library using specs.
Signed-off-by: Iain Sandoe <iain@sandoe.co.uk>
gcc/d/ChangeLog:
* d-spec.cc (lang_specific_driver): Push the -static-libstdc++
option back onto the command line for targets without support
for -Bstatic/dynamic.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/d/d-spec.cc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/d/d-spec.cc b/gcc/d/d-spec.cc index 5adc662..b12d28f 100644 --- a/gcc/d/d-spec.cc +++ b/gcc/d/d-spec.cc @@ -468,6 +468,12 @@ lang_specific_driver (cl_decoded_option **in_decoded_options, generate_option (OPT_Wl_, LD_STATIC_OPTION, 1, CL_DRIVER, &new_decoded_options[j++]); } +#else + /* Push the -static-libstdc++ option back onto the command so that + a target without LD_STATIC_DYNAMIC can use outfile substitution. */ + if (saw_static_libcxx && !static_link) + generate_option (OPT_static_libstdc__, NULL, 1, CL_DRIVER, + &new_decoded_options[j++]); #endif if (saw_libcxx) new_decoded_options[j++] = *saw_libcxx; |