summaryrefslogtreecommitdiffhomepage
path: root/src/logic/slbt_exec_link.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/logic/slbt_exec_link.c')
-rw-r--r--src/logic/slbt_exec_link.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/logic/slbt_exec_link.c b/src/logic/slbt_exec_link.c
index 7cea3ca..3ddbe6f 100644
--- a/src/logic/slbt_exec_link.c
+++ b/src/logic/slbt_exec_link.c
@@ -47,10 +47,11 @@ static bool slbt_adjust_input_argument(char * arg, bool fpic)
}
}
-static int slbt_exec_link_static_archive(
+static int slbt_exec_link_create_archive(
const struct slbt_driver_ctx * dctx,
struct slbt_exec_ctx * ectx,
- const char * arfilename)
+ const char * arfilename,
+ bool fpic)
{
char ** aarg;
char ** parg;
@@ -84,7 +85,7 @@ static int slbt_exec_link_static_archive(
/* input argument adjustment */
for (parg=ectx->cargv; *parg; parg++)
- if (slbt_adjust_input_argument(*parg,false))
+ if (slbt_adjust_input_argument(*parg,fpic))
*aarg++ = *parg;
*aarg = 0;
@@ -157,7 +158,7 @@ int slbt_exec_link(
/* non-pic libfoo.a */
if (dot && !strcmp(dot,".a"))
- if (slbt_exec_link_static_archive(dctx,ectx,output)) {
+ if (slbt_exec_link_create_archive(dctx,ectx,output,false)) {
slbt_free_exec_ctx(actx);
return -1;
}