Giovanni Funchal [off-list ref] writes:
quoted hunk
@@ -689,7 +689,6 @@ ifeq ($(uname_S),NetBSD)
endif
BASIC_CFLAGS += -I/usr/pkg/include
BASIC_LDFLAGS += -L/usr/pkg/lib
- ALL_LDFLAGS += -Wl,-rpath,/usr/pkg/lib
endif
ifeq ($(uname_S),AIX)
NO_STRCASESTR=YesPlease
@@ -763,9 +762,21 @@ ifneq (,$(findstring arm,$(uname_M)))
ARM_SHA1 = YesPlease
endif
+# Runtime dynamic library path switch
+ifdef NO_R_TO_GCC_LINKER
+ # Some linkers use -Wl,-rpath,
+ CC_LD_DYNPATH = -Wl,-rpath,
+else
+ # Some others need -R
+ CC_LD_DYNPATH = -R
+endif
+
-include config.mak.autogen
-include config.mak
+ifeq ($(uname_S),NetBSD)
+ ALL_LDFLAGS += $(CC_LD_DYNPATH)/usr/pkg/lib
+endif
I think this NetBSD change might be a good idea.
By moving "ifdef" before where we "include config.mak", however, you broke
existing setups that use NO_R_TO_GCC_LINKER to cause "-Wl,-rpath=" to be
used.
How about doing it the way the attached patch does instead? Then the
autoconf can configure CC_LD_DYNPATH to be used that may even be different
from "-Wl,-rpath=" (e.g. the one with double-dash "-Wl,--rpath").
Makefile | 17 +++++++++--------
1 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/Makefile b/Makefile
index 53ab4b5..264ede3 100644
--- a/Makefile
+++ b/Makefile
@@ -688,8 +688,7 @@ ifeq ($(uname_S),NetBSD)
NEEDS_LIBICONV = YesPlease
endif
BASIC_CFLAGS += -I/usr/pkg/include
- BASIC_LDFLAGS += -L/usr/pkg/lib
- ALL_LDFLAGS += -Wl,-rpath,/usr/pkg/lib
+ BASIC_LDFLAGS += -L/usr/pkg/lib $(CC_LD_DYNPATH)/usr/pkg/lib
endif
ifeq ($(uname_S),AIX)
NO_STRCASESTR=YesPlease
@@ -781,12 +780,14 @@ ifeq ($(uname_S),Darwin)
endif
endif
-ifdef NO_R_TO_GCC_LINKER
- # Some gcc does not accept and pass -R to the linker to specify
- # the runtime dynamic library path.
- CC_LD_DYNPATH = -Wl,-rpath=
-else
- CC_LD_DYNPATH = -R
+ifndef CC_LD_DYNPATH
+ ifdef NO_R_TO_GCC_LINKER
+ # Some gcc does not accept and pass -R to the linker to specify
+ # the runtime dynamic library path.
+ CC_LD_DYNPATH = -Wl,-rpath,
+ else
+ CC_LD_DYNPATH = -R
+ endif
endif
ifdef NO_CURL