AMIGAOS4: Strip out -use-dynld when linking statically

This avoids use of superfluous patch
This commit is contained in:
Le Philousophe
2021-05-01 13:58:28 +00:00
parent 6e760bdf9a
commit 9d282d4e5b
2 changed files with 8 additions and 75 deletions
@@ -108,6 +108,10 @@ do_lha_install () {
sed -i -e "s#^exec_prefix=.*\$#exec_prefix=$PREFIX#" "$dstlib/pkgconfig/$f"
sed -i -e 's#^libdir=.*$#libdir=${pcfiledir}/..#' "$dstlib/pkgconfig/$f"
sed -i -e 's#^includedir=.*/include#includedir=${prefix}/include#' "$dstlib/pkgconfig/$f"
# If we don't install dynamic version, strip out -use-dynld flag
if [ -z "$dynamic" ]; then
sed -i -e 's# -use-dynld ##g' "$dstlib/pkgconfig/$f"
fi
done
done
@@ -125,6 +129,10 @@ do_lha_install () {
sed -i -e 's#^[ \t]*exec_prefix=.*$#exec_prefix="${prefix}"#' "$f"
sed -i -e 's#^[ \t]*libdir=.*$#libdir="${prefix}/lib"#' "$f"
sed -i -e 's#^[ \t]*includedir=\("\?\).*/include#includedir=\1${prefix}/include#' "$f"
# If we don't install dynamic version, strip out -use-dynld flag
if [ -z "$dynamic" ]; then
sed -i -e 's# -use-dynld ##g' "$f"
fi
chmod +x "$f"
done
@@ -1,75 +0,0 @@
diff --git a/gcc-build/features.mk b/gcc-build/features.mk
index 6f1c678..d9317fa 100644
--- a/gcc-build/features.mk
+++ b/gcc-build/features.mk
@@ -11,3 +11,5 @@ FEATURES=\
ifeq ($(shell test $(MAJOR_VERSION) -ge 8; echo $$?), 0)
FEATURES+=--enable-threads=amigaos --enable-lto
endif
+
+FEATURES+=--disable-shared
diff --git a/gcc/4.9/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch b/gcc/4.9/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
index adc6ab8..0d514f7 100644
--- a/gcc/4.9/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
+++ b/gcc/4.9/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
@@ -955,7 +955,7 @@ index 0000000000000000000000000000000000000000..4556163c22a8fadc51c9ed7401c7e6c4
+/* default linker specs */
+#undef REAL_LIBGCC_SPEC
+#define REAL_LIBGCC_SPEC "\
-+%{static|static-libgcc: %{!use-dynld: -lgcc -lgcc_eh} %{use-dynld: -lgcc} }%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc: %{!use-dynld: -lgcc -lgcc_eh} %{use-dynld: -lgcc}}%{shared-libgcc:-lgcc}}%{shared:%{shared-libgcc:-lgcc}%{!shared-libgcc:-lgcc}}}}"
++%{static|static-libgcc: -lgcc}%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc: %{!use-dynld: -lgcc} %{use-dynld: -lgcc}}%{shared-libgcc:-lgcc}}%{shared:%{shared-libgcc:-lgcc}%{!shared-libgcc:-lgcc}}}}"
+
+
+/* make newlib the default */
diff --git a/gcc/5/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch b/gcc/5/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
index ad32733..3ef05c8 100644
--- a/gcc/5/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
+++ b/gcc/5/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
@@ -955,7 +955,7 @@ index 0000000000000000000000000000000000000000..94fa93c0be047c08987d7acbc7c71413
+/* default linker specs */
+#undef REAL_LIBGCC_SPEC
+#define REAL_LIBGCC_SPEC "\
-+%{static|static-libgcc: %{!use-dynld: -lgcc -lgcc_eh} %{use-dynld: -lgcc} }%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc: %{!use-dynld: -lgcc -lgcc_eh} %{use-dynld: -lgcc}}%{shared-libgcc:-lgcc}}%{shared:%{shared-libgcc:-lgcc}%{!shared-libgcc:-lgcc}}}}"
++%{static|static-libgcc: -lgcc}%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc: %{!use-dynld: -lgcc} %{use-dynld: -lgcc}}%{shared-libgcc:-lgcc}}%{shared:%{shared-libgcc:-lgcc}%{!shared-libgcc:-lgcc}}}}"
+
+
+/* make newlib the default */
diff --git a/gcc/6/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch b/gcc/6/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
index 0e0b6c2..3f67eb9 100644
--- a/gcc/6/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
+++ b/gcc/6/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
@@ -956,7 +956,7 @@ index 0000000000000000000000000000000000000000..0d06f2dd48c7d97bbd192b26d530b18b
+/* default linker specs */
+#undef REAL_LIBGCC_SPEC
+#define REAL_LIBGCC_SPEC "\
-+%{static|static-libgcc: %{!use-dynld: -lgcc -lgcc_eh} %{use-dynld: -lgcc} }%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc: %{!use-dynld: -lgcc -lgcc_eh} %{use-dynld: -lgcc}}%{shared-libgcc:-lgcc}}%{shared:%{shared-libgcc:-lgcc}%{!shared-libgcc:-lgcc}}}}"
++%{static|static-libgcc: -lgcc}%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc: %{!use-dynld: -lgcc} %{use-dynld: -lgcc}}%{shared-libgcc:-lgcc}}%{shared:%{shared-libgcc:-lgcc}%{!shared-libgcc:-lgcc}}}}"
+
+
+/* make newlib the default */
diff --git a/gcc/8/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch b/gcc/8/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
index 4e4edf5..cf3eeef 100644
--- a/gcc/8/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
+++ b/gcc/8/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
@@ -960,7 +960,7 @@ index 0000000000000000000000000000000000000000..1153ece337930f7bbf5f9978bf6f3faf
+/* default linker specs */
+#undef REAL_LIBGCC_SPEC
+#define REAL_LIBGCC_SPEC "\
-+%{static|static-libgcc: %{!use-dynld: -lgcc -lgcc_eh} %{use-dynld: -lgcc} }%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc: %{!use-dynld: -lgcc -lgcc_eh} %{use-dynld: -lgcc}}%{shared-libgcc:-lgcc}}%{shared:%{shared-libgcc:-lgcc}%{!shared-libgcc:-lgcc}}}}"
++%{static|static-libgcc: -lgcc}%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc: %{!use-dynld: -lgcc} %{use-dynld: -lgcc}}%{shared-libgcc:-lgcc}}%{shared:%{shared-libgcc:-lgcc}%{!shared-libgcc:-lgcc}}}}"
+
+
+/* make newlib the default */
diff --git a/gcc/9/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch b/gcc/9/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
index 2fb3de7..783e14d 100644
--- a/gcc/9/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
+++ b/gcc/9/patches/0001-Changes-for-AmigaOS-version-of-gcc.patch
@@ -960,7 +960,7 @@ index 0000000000000000000000000000000000000000..1153ece337930f7bbf5f9978bf6f3faf
+/* default linker specs */
+#undef REAL_LIBGCC_SPEC
+#define REAL_LIBGCC_SPEC "\
-+%{static|static-libgcc: %{!use-dynld: -lgcc -lgcc_eh} %{use-dynld: -lgcc} }%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc: %{!use-dynld: -lgcc -lgcc_eh} %{use-dynld: -lgcc}}%{shared-libgcc:-lgcc}}%{shared:%{shared-libgcc:-lgcc}%{!shared-libgcc:-lgcc}}}}"
++%{static|static-libgcc: -lgcc}%{!static:%{!static-libgcc:%{!shared:%{!shared-libgcc: %{!use-dynld: -lgcc} %{use-dynld: -lgcc}}%{shared-libgcc:-lgcc}}%{shared:%{shared-libgcc:-lgcc}%{!shared-libgcc:-lgcc}}}}"
+
+
+/* make newlib the default */