summaryrefslogtreecommitdiff
path: root/debian/ltmain-whole-archive.diff
diff options
context:
space:
mode:
Diffstat (limited to 'debian/ltmain-whole-archive.diff')
-rw-r--r--debian/ltmain-whole-archive.diff30
1 files changed, 30 insertions, 0 deletions
diff --git a/debian/ltmain-whole-archive.diff b/debian/ltmain-whole-archive.diff
new file mode 100644
index 000000000..4c730502c
--- /dev/null
+++ b/debian/ltmain-whole-archive.diff
@@ -0,0 +1,30 @@
+--- a/build-aux/ltmain.sh
++++ b/build-aux/ltmain.sh
+@@ -7296,6 +7296,11 @@
+ continue
+ ;;
+
++ -Wl,--whole-archive|-Wl,--no-whole-archive)
++ deplibs="$deplibs $arg"
++ continue
++ ;;
++
+ -Wc,*)
+ func_stripname '-Wc,' '' "$arg"
+ args=$func_stripname_result
+@@ -7735,6 +7740,15 @@
+ fi
+ continue
+ ;;
++ -Wl,--whole-archive|-Wl,--no-whole-archive)
++ if test "$linkmode,$pass" = "prog,link"; then
++ compile_deplibs="$deplib $compile_deplibs"
++ finalize_deplibs="$deplib $finalize_deplibs"
++ else
++ deplibs="$deplib $deplibs"
++ fi
++ continue
++ ;;
+ -l*)
+ if test lib != "$linkmode" && test prog != "$linkmode"; then
+ func_warning "'-l' is ignored for archives/objects"