Module: wine Branch: master Commit: 13a93b4a94512fd6829d9884eb4bb0aba7abac16 URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=13a93b4a94512fd6829d9884...
Author: Alexandre Julliard julliard@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