summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2024-03-03 18:27:28 +0000
committermidipix <writeonce@midipix.org>2024-03-03 22:10:14 +0000
commit99fb66b6e91e251dbb2ceb7d186d501110fd999f (patch)
tree89bfb2b817392dd3402c88fc63324a148eabcfba
parent9bc8c2b17dda448d2bfee74ec4639b9429c32dce (diff)
downloadslibtool-99fb66b6e91e251dbb2ceb7d186d501110fd999f.tar.bz2
slibtool-99fb66b6e91e251dbb2ceb7d186d501110fd999f.tar.xz
slbt_exec_link_finalize_argument_vector(): dlopenobj: filter out .a input args.
-rw-r--r--src/logic/linkcmd/slbt_linkcmd_argv.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/logic/linkcmd/slbt_linkcmd_argv.c b/src/logic/linkcmd/slbt_linkcmd_argv.c
index 409f0ee..5e2d606 100644
--- a/src/logic/linkcmd/slbt_linkcmd_argv.c
+++ b/src/logic/linkcmd/slbt_linkcmd_argv.c
@@ -984,6 +984,9 @@ slbt_hidden int slbt_exec_link_finalize_argument_vector(
} else if ((src[0][0] == '-') && (src[0][1] == 'l')) {
(void)0;
+ } else if ((dot = strrchr(*src,'.')) && (dot[1] == 'a') && !dot[2]) {
+ (void)0;
+
} else if ((src[0][0] == '-') && (src[0][1] == 'o')) {
src++;
@@ -998,6 +1001,7 @@ slbt_hidden int slbt_exec_link_finalize_argument_vector(
} else if ((src[0][0] == '-') && (src[0][1] == 'W')) {
if ((src[0][2] == 'a') && (src[0][3] == ','))
*dst++ = *src;
+
} else {
*dst++ = *src;
}