summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--system/wine/README49
-rw-r--r--system/wine/wine.SlackBuild102
-rw-r--r--system/wine/wine.info8
-rw-r--r--system/wine/x86_remove_fpic.patch202
4 files changed, 309 insertions, 52 deletions
diff --git a/system/wine/README b/system/wine/README
index 578c86d92e..cd197eb7fd 100644
--- a/system/wine/README
+++ b/system/wine/README
@@ -1,17 +1,50 @@
Wine is an Open Source implementation of the Windows API on top of X
-and Unix.
+for Linux and Unix.
NOTE: This builds the stable version of wine. If you need
cutting-edge then you may want to check out wine-staging.
-If your video card does not support hardware-accelerated OpenGL, then
-run the script like this: OPENGL=NO ./wine.SlackBuild
+Options:
-NOTE: This will not build on a stock 64bit Slackware system, and we
-do not support doing so with 32bit-compatibility packages. That
-doesn't mean that it won't work - we just don't support it at all.
+To build wine to run 64bit Windows executable support, use:
+
+WIN64=yes ./wine.SlackBuild
+
+To disable OpenGL support, use:
+
+OPENGL=no ./wine.SlackBuild
+
+The above options can be combined.
Optional dependencies:
-fontforge
-webcore-fonts
+fontforge:
+(to build tahoma, tahomabd, and marlett fonts)
+
+webcore-fonts:
+(for tahoma, lucida console, MS fonts for the web and Win Vista)
+
+====================================================================
+
+NOTES
+
+To build on x86_64 you will need to have multilib packages installed,
+unless you want to build for Windows 64 bit applications only (using
+WIN64=yes).
+
+AlienBOB's multilib readme and repo:
+
+https://docs.slackware.com/slackware:multilib
+http://www.slackware.com/~alien/multilib/
+
+I have made a script that rsyncs with alienBOB's repo and installs
+the multilib packages which can be found here:
+
+http://dawoodfall.net/files/scripts/slackware/alien-multilib-rysnc.sh
+
+Be sure to read the short instructions at the top. If you use
+slackpkg then you will also want to blacklist his packages in
+/etc/slackpkg/blacklist:
+
+[0-9]+alien
+[0-9]+compat32
diff --git a/system/wine/wine.SlackBuild b/system/wine/wine.SlackBuild
index 9304f5889b..94702848f0 100644
--- a/system/wine/wine.SlackBuild
+++ b/system/wine/wine.SlackBuild
@@ -24,17 +24,9 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=wine
-VERSION=${VERSION:-2.0.3}
+VERSION=${VERSION:-2.0.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
-if [ -z "$ARCH" ]; then
- case "$( uname -m )" in
- i?86) ARCH=i586 ;;
- arm*) ARCH=arm ;;
- *) ARCH=$( uname -m ) ;;
- esac
-fi
-
CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
@@ -42,22 +34,44 @@ OUTPUT=${OUTPUT:-/tmp}
# If your video card does not support hardware accelerated OpenGL,
# then run the script like: OPENGL=NO ./wine.SlackBuild
-OPENGL=${OPENGL:-YES}
-
-if [ "$ARCH" = "i586" ]; then
- SLKCFLAGS="-O2 -march=i586 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "i686" ]; then
- SLKCFLAGS="-O2 -march=i686 -mtune=i686"
- LIBDIRSUFFIX=""
-elif [ "$ARCH" = "x86_64" ]; then
- SLKCFLAGS="-O2 -fPIC"
- LIBDIRSUFFIX=""
+if [ "${OPENGL:-YES}" = "YES" ]; then
+ do_opengl="with"
else
- SLKCFLAGS="-O2"
- LIBDIRSUFFIX=""
+ do_opengl="without"
+fi
+
+if [ -z "$ARCH" ]; then
+ case "$(uname -m)" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$(uname -m) ;;
+ esac
fi
+# These should work for anything not specified below
+BUILD_ARCH=$ARCH"-slackware-linux"
+SLKCFLAGS="-O2"
+
+case "$ARCH" in
+ arm)
+ BUILD_ARCH=$ARCH"-slackware-linux-gnueabi"
+ ;;
+ i?86)
+ # -Os was -O2, fix for:
+ # https://bugs.winehq.org/show_bug.cgi?id=42406
+ # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78911
+ # https://bugs.gentoo.org/613128
+ SLKCFLAGS="-Os -march=$ARCH -mtune=i686"
+ SLKLDFLAGS="-L/usr/lib -ldl"
+ ;;
+ x86_64)
+ [ -n "$WIN64" ] && WIN64="--enable-win64"
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+ SLKLDFLAGS="-L/usr/lib64"
+ ;;
+esac
+
set -e
rm -rf $PKG
@@ -68,34 +82,42 @@ tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-# If OPENGL=YES above, then enable opengl; otherwise, disable it.
-if [ "$OPENGL" = "YES" ]; then
- do_opengl="with"
- else
- do_opengl="without"
-fi
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
# Fix for flex
patch -p1 --verbose < $CWD/0001-winhlp32-Workaround-a-bug-in-Flex.patch
+# Remove -fPIC for i?86 or the build will hang
+if [ "$ARCH" == "i?86" ]; then
+ patch -p1 --verbose < $CWD/x86_remove_fpic.patch
+fi
+
+LDFLAGS="$SLKLDFLAGS" \
+CFLAGS="$SLKCFLAGS" \
+CXXFLAGS="$SLKCFLAGS" \
./configure \
- --prefix=/usr \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --with-gnutls=yes \
- --${do_opengl}-opengl \
- --build=$ARCH-slackware-linux
+ $WIN64 \
+ --prefix=/usr \
+ --localstatedir=/var \
+ --libdir=/usr/lib$LIBDIRSUFFIX \
+ --sysconfdir=/etc \
+ --mandir=/usr/man \
+ --with-x \
+ --with-gnutls \
+ --${do_opengl}-opengl \
+ --program-prefix= \
+ --program-suffix= \
+ --disable-tests \
+ --build=$BUILD_ARCH
make
make install DESTDIR=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
diff --git a/system/wine/wine.info b/system/wine/wine.info
index 5ad55628a9..c307993a07 100644
--- a/system/wine/wine.info
+++ b/system/wine/wine.info
@@ -1,9 +1,9 @@
PRGNAM="wine"
-VERSION="2.0.3"
+VERSION="2.0.4"
HOMEPAGE="http://www.winehq.com/"
-DOWNLOAD="http://prdownloads.sourceforge.net/wine/wine-2.0.3.tar.xz"
-MD5SUM="f85b3919cf45aa640f7784d3093a8995"
-DOWNLOAD_x86_64="UNSUPPORTED"
+DOWNLOAD="http://prdownloads.sourceforge.net/wine/wine-2.0.4.tar.xz"
+MD5SUM="15916710f16119ec135cc450818db76f"
+DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="David Woodfall"
diff --git a/system/wine/x86_remove_fpic.patch b/system/wine/x86_remove_fpic.patch
new file mode 100644
index 0000000000..ac949dc86d
--- /dev/null
+++ b/system/wine/x86_remove_fpic.patch
@@ -0,0 +1,202 @@
+diff -Naur a/configure b/configure
+--- a/configure 2018-01-02 20:58:13.000000000 +0000
++++ b/configure 2018-01-08 18:31:55.480995247 +0000
+@@ -8072,7 +8072,7 @@
+ done
+
+ LIBEXT="dylib"
+- DLLFLAGS="$DLLFLAGS -fPIC"
++ DLLFLAGS="$DLLFLAGS "
+ LDRPATH_INSTALL="-Wl,-rpath,@loader_path/\`\$(MAKEDEP) -R \${bindir} \${libdir}\`"
+ LDRPATH_LOCAL="-Wl,-rpath,@loader_path/\$(top_builddir)/libs/wine"
+ COREFOUNDATION_LIBS="-framework CoreFoundation"
+@@ -8304,14 +8304,14 @@
+ ;;
+
+ linux-android*)
+- DLLFLAGS="$DLLFLAGS -fPIC"
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -fPIC -Wl,--export-dynamic" >&5
+-$as_echo_n "checking whether the compiler supports -fPIC -Wl,--export-dynamic... " >&6; }
++ DLLFLAGS="$DLLFLAGS "
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -Wl,--export-dynamic" >&5
++$as_echo_n "checking whether the compiler supports -Wl,--export-dynamic... " >&6; }
+ if ${ac_cv_cflags__fPIC__Wl___export_dynamic+:} false; then :
+ $as_echo_n "(cached) " >&6
+ else
+ ac_wine_try_cflags_saved=$CFLAGS
+-CFLAGS="$CFLAGS -fPIC -Wl,--export-dynamic"
++CFLAGS="$CFLAGS -Wl,--export-dynamic"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+ int main(int argc, char **argv) { return 0; }
+@@ -8330,14 +8330,14 @@
+ if test "x$ac_cv_cflags__fPIC__Wl___export_dynamic" = xyes; then :
+ LDEXECFLAGS="-Wl,--export-dynamic"
+ fi
+- as_ac_var=`$as_echo "ac_cv_cflags_-fPIC -Wl,--rpath,\\$ORIGIN/../lib" | $as_tr_sh`
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -fPIC -Wl,--rpath,\$ORIGIN/../lib" >&5
+-$as_echo_n "checking whether the compiler supports -fPIC -Wl,--rpath,\$ORIGIN/../lib... " >&6; }
++ as_ac_var=`$as_echo "ac_cv_cflags_ -Wl,--rpath,\\$ORIGIN/../lib" | $as_tr_sh`
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -Wl,--rpath,\$ORIGIN/../lib" >&5
++$as_echo_n "checking whether the compiler supports -Wl,--rpath,\$ORIGIN/../lib... " >&6; }
+ if eval \${$as_ac_var+:} false; then :
+ $as_echo_n "(cached) " >&6
+ else
+ ac_wine_try_cflags_saved=$CFLAGS
+-CFLAGS="$CFLAGS -fPIC -Wl,--rpath,\$ORIGIN/../lib"
++CFLAGS="$CFLAGS -Wl,--rpath,\$ORIGIN/../lib"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+ int main(int argc, char **argv) { return 0; }
+@@ -8358,14 +8358,14 @@
+ LDRPATH_INSTALL="-Wl,--rpath,\\\$\$ORIGIN/\`\$(MAKEDEP) -R \${bindir} \${libdir}\`"
+ LDRPATH_LOCAL="-Wl,--rpath,\\\$\$ORIGIN/\$(top_builddir)/libs/wine"
+ else
+- as_ac_var=`$as_echo "ac_cv_cflags_-fPIC -Wl,-R,\\$ORIGIN/../lib" | $as_tr_sh`
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -fPIC -Wl,-R,\$ORIGIN/../lib" >&5
+-$as_echo_n "checking whether the compiler supports -fPIC -Wl,-R,\$ORIGIN/../lib... " >&6; }
++ as_ac_var=`$as_echo "ac_cv_cflags_ -Wl,-R,\\$ORIGIN/../lib" | $as_tr_sh`
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -Wl,-R,\$ORIGIN/../lib" >&5
++$as_echo_n "checking whether the compiler supports -Wl,-R,\$ORIGIN/../lib... " >&6; }
+ if eval \${$as_ac_var+:} false; then :
+ $as_echo_n "(cached) " >&6
+ else
+ ac_wine_try_cflags_saved=$CFLAGS
+-CFLAGS="$CFLAGS -fPIC -Wl,-R,\$ORIGIN/../lib"
++CFLAGS="$CFLAGS -Wl,-R,\$ORIGIN/../lib"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+ int main(int argc, char **argv) { return 0; }
+@@ -8448,7 +8448,7 @@
+ ;;
+
+ *)
+- DLLFLAGS="$DLLFLAGS -fPIC"
++ DLLFLAGS="$DLLFLAGS "
+ LDEXECFLAGS=""
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we can build a GNU style ELF dll" >&5
+ $as_echo_n "checking whether we can build a GNU style ELF dll... " >&6; }
+@@ -8456,7 +8456,7 @@
+ $as_echo_n "(cached) " >&6
+ else
+ ac_wine_try_cflags_saved=$CFLAGS
+-CFLAGS="$CFLAGS -fPIC -shared -Wl,-Bsymbolic"
++CFLAGS="$CFLAGS -shared -Wl,-Bsymbolic"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+ void myfunc() {}
+@@ -8475,13 +8475,13 @@
+ if test "$ac_cv_c_dll_gnuelf" = "yes"
+ then
+ LIBWINE_LDFLAGS="-shared"
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -fPIC -shared -Wl,-soname,confest.so.1" >&5
+-$as_echo_n "checking whether the compiler supports -fPIC -shared -Wl,-soname,confest.so.1... " >&6; }
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -shared -Wl,-soname,confest.so.1" >&5
++$as_echo_n "checking whether the compiler supports -shared -Wl,-soname,confest.so.1... " >&6; }
+ if ${ac_cv_cflags__fPIC__shared__Wl__soname_confest_so_1+:} false; then :
+ $as_echo_n "(cached) " >&6
+ else
+ ac_wine_try_cflags_saved=$CFLAGS
+-CFLAGS="$CFLAGS -fPIC -shared -Wl,-soname,confest.so.1"
++CFLAGS="$CFLAGS -shared -Wl,-soname,confest.so.1"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+ int main(int argc, char **argv) { return 0; }
+@@ -8500,13 +8500,13 @@
+ if test "x$ac_cv_cflags__fPIC__shared__Wl__soname_confest_so_1" = xyes; then :
+ LIBWINE_LDFLAGS="-shared -Wl,-soname,libwine.so.$libwine_soversion"
+ else
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -fPIC -shared -Wl,-h,confest.so.1" >&5
+-$as_echo_n "checking whether the compiler supports -fPIC -shared -Wl,-h,confest.so.1... " >&6; }
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -shared -Wl,-h,confest.so.1" >&5
++$as_echo_n "checking whether the compiler supports -shared -Wl,-h,confest.so.1... " >&6; }
+ if ${ac_cv_cflags__fPIC__shared__Wl__h_confest_so_1+:} false; then :
+ $as_echo_n "(cached) " >&6
+ else
+ ac_wine_try_cflags_saved=$CFLAGS
+-CFLAGS="$CFLAGS -fPIC -shared -Wl,-h,confest.so.1"
++CFLAGS="$CFLAGS -shared -Wl,-h,confest.so.1"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+ int main(int argc, char **argv) { return 0; }
+@@ -8528,13 +8528,13 @@
+ fi
+
+ echo '{ global: *; };' >conftest.map
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -fPIC -shared -Wl,--version-script=conftest.map" >&5
+-$as_echo_n "checking whether the compiler supports -fPIC -shared -Wl,--version-script=conftest.map... " >&6; }
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -shared -Wl,--version-script=conftest.map" >&5
++$as_echo_n "checking whether the compiler supports -shared -Wl,--version-script=conftest.map... " >&6; }
+ if ${ac_cv_cflags__fPIC__shared__Wl___version_script_conftest_map+:} false; then :
+ $as_echo_n "(cached) " >&6
+ else
+ ac_wine_try_cflags_saved=$CFLAGS
+-CFLAGS="$CFLAGS -fPIC -shared -Wl,--version-script=conftest.map"
++CFLAGS="$CFLAGS -shared -Wl,--version-script=conftest.map"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+ int main(int argc, char **argv) { return 0; }
+@@ -8555,13 +8555,13 @@
+ fi
+ rm -f conftest.map
+
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -fPIC -Wl,--export-dynamic" >&5
+-$as_echo_n "checking whether the compiler supports -fPIC -Wl,--export-dynamic... " >&6; }
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -Wl,--export-dynamic" >&5
++$as_echo_n "checking whether the compiler supports -Wl,--export-dynamic... " >&6; }
+ if ${ac_cv_cflags__fPIC__Wl___export_dynamic+:} false; then :
+ $as_echo_n "(cached) " >&6
+ else
+ ac_wine_try_cflags_saved=$CFLAGS
+-CFLAGS="$CFLAGS -fPIC -Wl,--export-dynamic"
++CFLAGS="$CFLAGS -Wl,--export-dynamic"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+ int main(int argc, char **argv) { return 0; }
+@@ -8581,14 +8581,14 @@
+ LDEXECFLAGS="-Wl,--export-dynamic"
+ fi
+
+- as_ac_var=`$as_echo "ac_cv_cflags_-fPIC -Wl,--rpath,\\$ORIGIN/../lib" | $as_tr_sh`
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -fPIC -Wl,--rpath,\$ORIGIN/../lib" >&5
+-$as_echo_n "checking whether the compiler supports -fPIC -Wl,--rpath,\$ORIGIN/../lib... " >&6; }
++ as_ac_var=`$as_echo "ac_cv_cflags_ -Wl,--rpath,\\$ORIGIN/../lib" | $as_tr_sh`
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -Wl,--rpath,\$ORIGIN/../lib" >&5
++$as_echo_n "checking whether the compiler supports -Wl,--rpath,\$ORIGIN/../lib... " >&6; }
+ if eval \${$as_ac_var+:} false; then :
+ $as_echo_n "(cached) " >&6
+ else
+ ac_wine_try_cflags_saved=$CFLAGS
+-CFLAGS="$CFLAGS -fPIC -Wl,--rpath,\$ORIGIN/../lib"
++CFLAGS="$CFLAGS -Wl,--rpath,\$ORIGIN/../lib"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+ int main(int argc, char **argv) { return 0; }
+@@ -8609,14 +8609,14 @@
+ LDRPATH_INSTALL="-Wl,--rpath,\\\$\$ORIGIN/\`\$(MAKEDEP) -R \${bindir} \${libdir}\`"
+ LDRPATH_LOCAL="-Wl,--rpath,\\\$\$ORIGIN/\$(top_builddir)/libs/wine"
+ else
+- as_ac_var=`$as_echo "ac_cv_cflags_-fPIC -Wl,-R,\\$ORIGIN/../lib" | $as_tr_sh`
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -fPIC -Wl,-R,\$ORIGIN/../lib" >&5
+-$as_echo_n "checking whether the compiler supports -fPIC -Wl,-R,\$ORIGIN/../lib... " >&6; }
++ as_ac_var=`$as_echo "ac_cv_cflags_ -Wl,-R,\\$ORIGIN/../lib" | $as_tr_sh`
++{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports -Wl,-R,\$ORIGIN/../lib" >&5
++$as_echo_n "checking whether the compiler supports -Wl,-R,\$ORIGIN/../lib... " >&6; }
+ if eval \${$as_ac_var+:} false; then :
+ $as_echo_n "(cached) " >&6
+ else
+ ac_wine_try_cflags_saved=$CFLAGS
+-CFLAGS="$CFLAGS -fPIC -Wl,-R,\$ORIGIN/../lib"
++CFLAGS="$CFLAGS -Wl,-R,\$ORIGIN/../lib"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+ int main(int argc, char **argv) { return 0; }
+@@ -8804,7 +8804,7 @@
+ $as_echo_n "(cached) " >&6
+ else
+ ac_wine_try_cflags_saved=$CFLAGS
+-CFLAGS="$CFLAGS -fPIC -Wl,-G,-h,conftest.so.1.0,-B,symbolic"
++CFLAGS="$CFLAGS -Wl,-G,-h,conftest.so.1.0,-B,symbolic"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ /* end confdefs.h. */
+ void myfunc() {}