summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorChris Packham <judge.packham@gmail.com>2021-02-23 07:18:06 (GMT)
committerGitHub <noreply@github.com>2021-02-23 07:18:06 (GMT)
commit79fcfa17cb7ad72d848dd3a732de8ac6c6d93496 (patch)
tree190203e71f46231bb94ae412856cf5db5bf1856b /scripts
parent0e0fd3cf1859bd86d016a5d54c32061fe1059d17 (diff)
parent5171b3033a6dc20bf120256abeb5c732f93077a0 (diff)
Merge pull request #1459 from foss-for-synopsys-dwc-arc-processors/abrodkin-newlib-nano-symlinks
newlib-nano: Create symlinks for nano-suffixed libs
Diffstat (limited to 'scripts')
-rw-r--r--scripts/build/companion_libs/350-newlib_nano.sh32
1 files changed, 32 insertions, 0 deletions
diff --git a/scripts/build/companion_libs/350-newlib_nano.sh b/scripts/build/companion_libs/350-newlib_nano.sh
index 00ea948..28992c0 100644
--- a/scripts/build/companion_libs/350-newlib_nano.sh
+++ b/scripts/build/companion_libs/350-newlib_nano.sh
@@ -22,6 +22,31 @@ do_newlib_nano_extract() {
CT_ExtractPatch NEWLIB_NANO
}
+# Some architectures assume "nano" libs co-exist with normal ones
+# in the same folder, though being suffixed with "_nano".
+do_nano_libc_symlinks() {
+ CT_Pushd "${CT_PREFIX_DIR}/newlib-nano/${CT_TARGET}/lib/${multi_dir}"
+
+ CT_DoLog DEBUG "Installing nano libc symlinks in $PWD"
+
+ ln -s libc.a libc_nano.a
+ ln -s libm.a libm_nano.a
+ ln -s libg.a libg_nano.a
+
+ CT_Popd
+}
+
+do_nano_libstdcxx_symlinks() {
+ CT_Pushd "${CT_PREFIX_DIR}/newlib-nano/${CT_TARGET}/lib/${multi_dir}"
+
+ CT_DoLog DEBUG "Installing nano libstdc++ symlinks in $PWD"
+
+ ln -s libstdc++.a libstdc++_nano.a
+ ln -s libsupc++.a libsupc++_nano.a
+
+ CT_Popd
+}
+
#------------------------------------------------------------------------------
# Build an additional target libstdc++ with "-Os" (optimise for speed) option
# flag for libstdc++ "newlib_nano" variant.
@@ -59,6 +84,10 @@ do_cc_libstdcxx_newlib_nano()
CT_DoStep INFO "Installing libstdc++ newlib-nano"
CT_mkdir_pushd "${CT_BUILD_DIR}/build-cc-libstdcxx-newlib-nano"
"${final_backend}" "${final_opts[@]}"
+
+ # Create "nano" symlinks for libstdc++.a & libsup++.a
+ CT_IterateMultilibs do_nano_libstdcxx_symlinks libstdcxx_symlinks
+
CT_Popd
CT_EndStep
@@ -180,6 +209,9 @@ ENABLE_TARGET_OPTSPACE:target-optspace
EOF
+ # Create "nano" symlinks for libc.a, libg.a & libm.a
+ CT_IterateMultilibs do_nano_libc_symlinks libc_symlinks
+
CT_Popd
CT_EndStep