diff --git a/wine-relocate-base.patch b/wine-relocate-base.patch deleted file mode 100644 index 969c591..0000000 --- a/wine-relocate-base.patch +++ /dev/null @@ -1,68 +0,0 @@ -Prelink was used to rewrite binares and set their text segment, but -modern linkers support setting the value at link time. Prelink is -being retired by upstream. - -Signed-off-by: Michael Cronenworth ---- - configure.ac | 11 ++++++++--- - tools/winegcc/winegcc.c | 11 +++++++++-- - 2 files changed, 17 insertions(+), 5 deletions(-) - -diff --git a/configure.ac b/configure.ac -index de8cde5..f283802 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -988,10 +988,15 @@ wine-installed: main.o - *) LDEXECFLAGS="$LDEXECFLAGS -Wl,--section-start,.interp=0x7bf00400" ;; - esac - ]) -- AC_PATH_PROG(PRELINK, prelink, false, [/sbin /usr/sbin $PATH]) -- if test "x$PRELINK" = xfalse -+ WINE_TRY_CFLAGS([-Wl,-Ttext-segment=0x7bc00000], -+ [HAVE_TTEXT_SEGMENT="yes"]) -+ if test "x$HAVE_TTEXT_SEGMENT" != "xyes" - then -- WINE_WARNING([prelink not found, base address of core dlls won't be set correctly.]) -+ AC_PATH_PROG(PRELINK, prelink, false, [/sbin /usr/sbin $PATH]) -+ if test "x$PRELINK" = xfalse -+ then -+ WINE_WARNING([prelink not found and linker does not support relocation, base address of core dlls won't be set correctly.]) -+ fi - fi - ;; - esac -diff --git a/tools/winegcc/winegcc.c b/tools/winegcc/winegcc.c -index 3b2794e..4acd12d 100644 ---- a/tools/winegcc/winegcc.c -+++ b/tools/winegcc/winegcc.c -@@ -1134,6 +1134,12 @@ static void build(struct options* opts) - } - break; - default: -+ /* Try option first, modern linkers support this */ -+ if (opts->image_base && -+ !try_link(opts->prefix, link_args, strmake("-Wl,-Ttext-segment=%s", opts->image_base))) -+ { -+ strarray_add(link_args, strmake("-Wl,-Ttext-segment=%s", opts->image_base)); -+ } - break; - } - -@@ -1167,8 +1173,9 @@ static void build(struct options* opts) - spawn(opts->prefix, link_args, 0); - strarray_free (link_args); - -- /* set the base address */ -- if (opts->image_base && !opts->target) -+ /* set the base address with prelink if linker support is not present */ -+ if (opts->image_base && !opts->target && -+ try_link(opts->prefix, link_args, strmake("-Wl,-Ttext-segment=%s", opts->image_base))) - { - const char *prelink = PRELINK; - if (prelink[0] && strcmp(prelink,"false")) --- -2.4.3 - - - - diff --git a/wine.changes b/wine.changes index f709a96..df0f360 100644 --- a/wine.changes +++ b/wine.changes @@ -8,6 +8,8 @@ Fri Oct 30 13:46:11 UTC 2015 - meissner@suse.com - Alternative for the deprecated prelink tool. - Major Turkish translation update. - Various bug fixes. +- wine-relocate-base.patch: is upstream +- winetricks: updated ------------------------------------------------------------------- Fri Oct 23 09:25:26 UTC 2015 - meissner@suse.com diff --git a/wine.spec b/wine.spec index 6dfb9d7..630759a 100644 --- a/wine.spec +++ b/wine.spec @@ -72,7 +72,6 @@ Source7: baselibs.conf # SUSE specific patches # - currently none, but add them here #Patch0: susepatches.patch -Patch1: wine-relocate-base.patch Recommends: wine-gecko >= 2.24 Recommends: wine-mp3 # not packaged in distro... @@ -118,7 +117,6 @@ libraries. %prep %setup -q #%patch0 -p1 -%patch1 -p1 # cp %{S:3} . #