summaryrefslogtreecommitdiffhomepage
path: root/src/driver/slbt_split_argv.c
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2024-03-05 01:11:15 +0000
committermidipix <writeonce@midipix.org>2024-03-05 02:10:46 +0000
commite47cd7d15cee80e0a78fb7a4ec0d53e117d37379 (patch)
tree9f5d8a988db33f1941f9e61f3a6771ec32eeed86 /src/driver/slbt_split_argv.c
parent8ef9e14afc6d97e6cf2da17995c3278f7309cf25 (diff)
downloadslibtool-e47cd7d15cee80e0a78fb7a4ec0d53e117d37379.tar.bz2
slibtool-e47cd7d15cee80e0a78fb7a4ec0d53e117d37379.tar.xz
driver: finalized -dlopen, including the 'self' and 'force' special arguments.
Diffstat (limited to 'src/driver/slbt_split_argv.c')
-rw-r--r--src/driver/slbt_split_argv.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/driver/slbt_split_argv.c b/src/driver/slbt_split_argv.c
index df0db37..894ed9d 100644
--- a/src/driver/slbt_split_argv.c
+++ b/src/driver/slbt_split_argv.c
@@ -472,10 +472,6 @@ slbt_hidden int slbt_split_argv(
*targv++ = argv[i++];
*targv++ = argv[i];
- } else if (!(strcmp("dlopen",&argv[i][1]))) {
- *targv++ = argv[i++];
- *targv++ = argv[i];
-
} else if (!(strcmp("weak",&argv[i][1]))) {
*targv++ = argv[i++];
*targv++ = argv[i];
@@ -502,6 +498,13 @@ slbt_hidden int slbt_split_argv(
*targv++ = argv[i++];
*targv++ = argv[i];
+ } else if (!(strcmp("dlopen",&argv[i][1]))) {
+ if (!argv[i+1])
+ return -1;
+
+ *targv++ = argv[i++];
+ *targv++ = argv[i];
+
} else if (!(strcmp("dlpreopen",&argv[i][1]))) {
if (!argv[i+1])
return -1;