summaryrefslogtreecommitdiff
path: root/src/logic/linkcmd
diff options
context:
space:
mode:
authormidipix <writeonce@midipix.org>2024-03-03 05:35:33 +0000
committermidipix <writeonce@midipix.org>2024-03-03 09:27:48 +0000
commit4af256bee433fadfacf2cb1e22dbe35c9e0a8fbf (patch)
treea5d5acddf8bff2c09638348f9d665806fe76702b /src/logic/linkcmd
parentabb1bf44beb99a03a6197742fd0c50d48a644f38 (diff)
downloadslibtool-4af256bee433fadfacf2cb1e22dbe35c9e0a8fbf.tar.bz2
slibtool-4af256bee433fadfacf2cb1e22dbe35c9e0a8fbf.tar.xz
slbt_exec_link_create_library(): allow ar(1) driven invocations.
Diffstat (limited to 'src/logic/linkcmd')
-rw-r--r--src/logic/linkcmd/slbt_linkcmd_dsolib.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/logic/linkcmd/slbt_linkcmd_dsolib.c b/src/logic/linkcmd/slbt_linkcmd_dsolib.c
index 4d611a0..dd5bf64 100644
--- a/src/logic/linkcmd/slbt_linkcmd_dsolib.c
+++ b/src/logic/linkcmd/slbt_linkcmd_dsolib.c
@@ -60,7 +60,8 @@ slbt_hidden int slbt_exec_link_create_library(
struct slbt_exec_ctx * ectx,
const char * dsobasename,
const char * dsofilename,
- const char * relfilename)
+ const char * relfilename,
+ bool fardlopen)
{
int fdcwd;
char ** parg;
@@ -273,6 +274,7 @@ slbt_hidden int slbt_exec_link_create_library(
return SLBT_BUFFER_ERROR(dctx);
}
+ /* output marks */
*ectx->lout[0] = "-o";
*ectx->lout[1] = output;
@@ -307,6 +309,10 @@ slbt_hidden int slbt_exec_link_create_library(
if (slbt_exec_link_finalize_argument_vector(dctx,ectx))
return SLBT_NESTED_ERROR(dctx);
+ /* all done? */
+ if (fardlopen)
+ return 0;
+
/* step output */
if (!(dctx->cctx->drvflags & SLBT_DRIVER_SILENT))
if (slbt_output_link(ectx))