summaryrefslogtreecommitdiff
path: root/src/logic
diff options
context:
space:
mode:
authorFelix Janda <felix.janda@posteo.de>2016-11-19 08:56:14 -0500
committermidipix <writeonce@midipix.org>2016-11-19 10:17:20 -0500
commita647761da7d67980b53aa0cafe48bdc2af2fd1f9 (patch)
treef3ed43a1e2c91fa6c90dc69faa43465cc8ed2013 /src/logic
parent890d563655acb4cbd56e9d0dc427c62e4da1090e (diff)
downloadslibtool-a647761da7d67980b53aa0cafe48bdc2af2fd1f9.tar.bz2
slibtool-a647761da7d67980b53aa0cafe48bdc2af2fd1f9.tar.xz
link mode: do not respect -disable-static without -rpath.
When no -rpath argument is provided we cannot build a dynamic library. To match gnu libtool's behavior, build in this case a static library even if -disable-static has been specified.
Diffstat (limited to 'src/logic')
-rw-r--r--src/logic/slbt_exec_link.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/logic/slbt_exec_link.c b/src/logic/slbt_exec_link.c
index bce8147..b7c7868 100644
--- a/src/logic/slbt_exec_link.c
+++ b/src/logic/slbt_exec_link.c
@@ -790,7 +790,8 @@ static int slbt_exec_link_create_archive(
/* -disable-static? */
if (dctx->cctx->drvflags & SLBT_DRIVER_DISABLE_STATIC)
- return 0;
+ if (dctx->cctx->rpath)
+ return 0;
/* initial state */
slbt_reset_arguments(ectx);