Alexandre Julliard : configure:
Set rpath on all executables that link to libwine.
Alexandre Julliard
julliard at wine.codeweavers.com
Fri Aug 25 13:34:16 CDT 2006
Module: wine
Branch: master
Commit: 13a93b4a94512fd6829d9884eb4bb0aba7abac16
URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=13a93b4a94512fd6829d9884eb4bb0aba7abac16
Author: Alexandre Julliard <julliard at winehq.org>
Date: Fri Aug 25 17:23:44 2006 +0200
configure: Set rpath on all executables that link to libwine.
Also add the -multiply_defined suppress option for executables on MacOS.
---
Make.rules.in | 1 +
configure | 10 ++++++----
configure.ac | 4 +++-
loader/Makefile.in | 7 +++----
server/Makefile.in | 4 +---
tools/wmc/Makefile.in | 2 +-
tools/wrc/Makefile.in | 2 +-
7 files changed, 16 insertions(+), 14 deletions(-)
diff --git a/Make.rules.in b/Make.rules.in
index 18cfd5c..f77ae49 100644
--- a/Make.rules.in
+++ b/Make.rules.in
@@ -84,6 +84,7 @@ DLLDIR = $(TOPOBJDIR)/dlls
LIBPORT = $(TOPOBJDIR)/libs/port/libwine_port.a
LIBWPP = $(TOPOBJDIR)/libs/wpp/libwpp.a
LIBWINE = -L$(TOPOBJDIR)/libs/wine -lwine
+LIBWINE_LDFLAGS = @LIBWINE_LDFLAGS@ $(LIBWINE)
@SET_MAKE@
diff --git a/configure b/configure
index ca41210..78210e8 100755
--- a/configure
+++ b/configure
@@ -738,13 +738,13 @@ LDSHARED
LDDLLFLAGS
LIBEXT
IMPLIBEXT
+LIBWINE_LDFLAGS
DLLTOOL
DLLWRAP
COREFOUNDATIONLIB
IOKITLIB
LDEXECFLAGS
COREAUDIO
-LDEXERPATH
CROSSTEST
CROSSCC
CROSSWINDRES
@@ -15224,6 +15224,8 @@ LIBEXT="so"
IMPLIBEXT="def"
+LIBWINE_LDFLAGS=""
+
case $host_os in
cygwin*|mingw32*)
@@ -15433,6 +15435,7 @@ fi
LIBEXT="dylib"
DLLFLAGS="$DLLFLAGS -fPIC"
LDDLLFLAGS="-bundle -multiply_defined suppress"
+ LIBWINE_LDFLAGS="-multiply_defined suppress"
LDSHARED="\$(CC) -dynamiclib -install_name @executable_path/\`\$(RELPATH) \$(bindir) \$(libdir)\`/\$(DYNAME)"
STRIP="$STRIP -u -r"
COREFOUNDATIONLIB="-framework CoreFoundation"
@@ -16042,8 +16045,7 @@ ac_res=`eval echo '${'$as_ac_var'}'`
{ echo "$as_me:$LINENO: result: $ac_res" >&5
echo "${ECHO_T}$ac_res" >&6; }
if test `eval echo '${'$as_ac_var'}'` = yes; then
- LDEXERPATH="-Wl,--rpath,\\\$\$ORIGIN/\`\$(RELPATH) \$(bindir) \$(libdir)\`"
-
+ LIBWINE_LDFLAGS="-Wl,--rpath,\\\$\$ORIGIN/\`\$(RELPATH) \$(bindir) \$(libdir)\`"
fi
@@ -25170,13 +25172,13 @@ LDSHARED!$LDSHARED$ac_delim
LDDLLFLAGS!$LDDLLFLAGS$ac_delim
LIBEXT!$LIBEXT$ac_delim
IMPLIBEXT!$IMPLIBEXT$ac_delim
+LIBWINE_LDFLAGS!$LIBWINE_LDFLAGS$ac_delim
DLLTOOL!$DLLTOOL$ac_delim
DLLWRAP!$DLLWRAP$ac_delim
COREFOUNDATIONLIB!$COREFOUNDATIONLIB$ac_delim
IOKITLIB!$IOKITLIB$ac_delim
LDEXECFLAGS!$LDEXECFLAGS$ac_delim
COREAUDIO!$COREAUDIO$ac_delim
-LDEXERPATH!$LDEXERPATH$ac_delim
CROSSTEST!$CROSSTEST$ac_delim
CROSSCC!$CROSSCC$ac_delim
CROSSWINDRES!$CROSSWINDRES$ac_delim
diff --git a/configure.ac b/configure.ac
index 1ed3b1e..f6125e5 100644
--- a/configure.ac
+++ b/configure.ac
@@ -999,6 +999,7 @@ AC_SUBST(LDSHARED,"")
AC_SUBST(LDDLLFLAGS,"")
AC_SUBST(LIBEXT,"so")
AC_SUBST(IMPLIBEXT,"def")
+AC_SUBST(LIBWINE_LDFLAGS,"")
case $host_os in
cygwin*|mingw32*)
@@ -1020,6 +1021,7 @@ case $host_os in
LIBEXT="dylib"
DLLFLAGS="$DLLFLAGS -fPIC"
LDDLLFLAGS="-bundle -multiply_defined suppress"
+ LIBWINE_LDFLAGS="-multiply_defined suppress"
LDSHARED="\$(CC) -dynamiclib -install_name @executable_path/\`\$(RELPATH) \$(bindir) \$(libdir)\`/\$(DYNAME)"
STRIP="$STRIP -u -r"
dnl declare needed frameworks
@@ -1066,7 +1068,7 @@ case $host_os in
[AC_SUBST(LDEXECFLAGS,["-Wl,--export-dynamic"])])
WINE_TRY_CFLAGS([-fPIC -Wl,--rpath,\$ORIGIN/../lib],
- [AC_SUBST(LDEXERPATH,["-Wl,--rpath,\\\$\$ORIGIN/\`\$(RELPATH) \$(bindir) \$(libdir)\`"])])
+ [LIBWINE_LDFLAGS="-Wl,--rpath,\\\$\$ORIGIN/\`\$(RELPATH) \$(bindir) \$(libdir)\`"])
case $host_cpu in
*i[[3456789]]86* | x86_64)
diff --git a/loader/Makefile.in b/loader/Makefile.in
index abf4a5f..51f190d 100644
--- a/loader/Makefile.in
+++ b/loader/Makefile.in
@@ -28,19 +28,18 @@ all: $(WINE_BINARIES) $(MODULE) $(MANPAG
LIBPTHREAD = @LIBPTHREAD@
LDEXECFLAGS = @LDEXECFLAGS@
-LDRPATH = @LDEXERPATH@
wine-glibc: glibc.o Makefile.in
- $(CC) -o $@ glibc.o $(LDRPATH) $(LIBWINE) $(LIBPORT) $(LIBPTHREAD) $(EXTRALIBS) $(LDFLAGS)
+ $(CC) -o $@ glibc.o $(LIBWINE_LDFLAGS) $(LIBPORT) $(LIBPTHREAD) $(EXTRALIBS) $(LDFLAGS)
wine-preloader: preloader.o Makefile.in
$(CC) -o $@ -static -nostartfiles -nodefaultlibs -Wl,-Ttext=0x7c000000 preloader.o $(LIBPORT) $(LDFLAGS)
wine-kthread: $(KTHREAD_OBJS) Makefile.in
- $(CC) -o $@ $(LDEXECFLAGS) $(LDRPATH) $(KTHREAD_OBJS) $(LIBWINE) $(LIBPORT) $(EXTRALIBS) $(LDFLAGS)
+ $(CC) -o $@ $(LDEXECFLAGS) $(KTHREAD_OBJS) $(LIBWINE_LDFLAGS) $(LIBPORT) $(EXTRALIBS) $(LDFLAGS)
wine-pthread: $(PTHREAD_OBJS) Makefile.in
- $(CC) -o $@ $(LDEXECFLAGS) $(LDRPATH) $(PTHREAD_OBJS) $(LIBWINE) $(LIBPORT) $(LIBPTHREAD) $(EXTRALIBS) $(LDFLAGS)
+ $(CC) -o $@ $(LDEXECFLAGS) $(PTHREAD_OBJS) $(LIBWINE_LDFLAGS) $(LIBPORT) $(LIBPTHREAD) $(EXTRALIBS) $(LDFLAGS)
$(MODULE): $(MAIN_BINARY)
$(RM) $(MODULE) && $(LN_S) $(MAIN_BINARY) $(MODULE)
diff --git a/server/Makefile.in b/server/Makefile.in
index afa6539..05f92aa 100644
--- a/server/Makefile.in
+++ b/server/Makefile.in
@@ -60,10 +60,8 @@ all: $(PROGRAMS) $(MANPAGES)
@MAKE_RULES@
-LDEXERPATH = @LDEXERPATH@
-
wineserver: $(OBJS)
- $(CC) -o $@ $(LDEXERPATH) $(OBJS) $(LIBWINE) $(LIBPORT) $(LDFLAGS) $(LIBS)
+ $(CC) -o $@ $(OBJS) $(LIBWINE_LDFLAGS) $(LIBPORT) $(LDFLAGS) $(LIBS)
install:: $(PROGRAMS) $(MANPAGES) $(INSTALLDIRS)
$(INSTALL_PROGRAM) wineserver $(DESTDIR)$(bindir)/wineserver
diff --git a/tools/wmc/Makefile.in b/tools/wmc/Makefile.in
index 4584a97..5c99710 100644
--- a/tools/wmc/Makefile.in
+++ b/tools/wmc/Makefile.in
@@ -27,7 +27,7 @@ mcl.o: mcy.tab.h
@MAKE_RULES@
wmc$(EXEEXT): $(OBJS)
- $(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBWINE) $(LIBPORT) $(LEXLIB) $(LDFLAGS)
+ $(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBWINE_LDFLAGS) $(LIBPORT) $(LEXLIB) $(LDFLAGS)
mcy.tab.c mcy.tab.h: mcy.y
$(BISON) -d -t $(SRCDIR)/mcy.y -o mcy.tab.c
diff --git a/tools/wrc/Makefile.in b/tools/wrc/Makefile.in
index 4e40df5..dd2ca82 100644
--- a/tools/wrc/Makefile.in
+++ b/tools/wrc/Makefile.in
@@ -29,7 +29,7 @@ all: $(PROGRAMS) $(MANPAGES)
@MAKE_RULES@
wrc$(EXEEXT): $(OBJS) $(LIBWPP)
- $(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBWPP) $(LIBWINE) $(LIBPORT) $(LEXLIB) $(LDFLAGS)
+ $(CC) $(CFLAGS) -o $@ $(OBJS) $(LIBWPP) $(LIBWINE_LDFLAGS) $(LIBPORT) $(LEXLIB) $(LDFLAGS)
parser.tab.c parser.tab.h: parser.y
$(BISON) -d -t $(SRCDIR)/parser.y -o parser.tab.c
More information about the wine-cvs
mailing list