summaryrefslogtreecommitdiff
path: root/src/logic
diff options
context:
space:
mode:
Diffstat (limited to 'src/logic')
-rw-r--r--src/logic/slbt_exec_link.c24
1 files changed, 13 insertions, 11 deletions
diff --git a/src/logic/slbt_exec_link.c b/src/logic/slbt_exec_link.c
index c593423..b1c242c 100644
--- a/src/logic/slbt_exec_link.c
+++ b/src/logic/slbt_exec_link.c
@@ -1963,19 +1963,21 @@ int slbt_exec_link(
return SLBT_NESTED_ERROR(dctx);
/* dynamic library via -module */
- if (dctx->cctx->drvflags & SLBT_DRIVER_MODULE) {
- if (!dot || strcmp(dot,".la")) {
- if (slbt_exec_link_create_library(
- dctx,ectx,
- ectx->dsobasename,
- ectx->dsofilename,
- ectx->relfilename)) {
+ if (dctx->cctx->rpath && !fstaticonly) {
+ if (dctx->cctx->drvflags & SLBT_DRIVER_MODULE) {
+ if (!dot || strcmp(dot,".la")) {
+ if (slbt_exec_link_create_library(
+ dctx,ectx,
+ ectx->dsobasename,
+ ectx->dsofilename,
+ ectx->relfilename)) {
+ slbt_free_exec_ctx(actx);
+ return SLBT_NESTED_ERROR(dctx);
+ }
+
slbt_free_exec_ctx(actx);
- return SLBT_NESTED_ERROR(dctx);
+ return 0;
}
-
- slbt_free_exec_ctx(actx);
- return 0;
}
}