From 83832a821d9e39a70ee1aef82804d52318a25cea Mon Sep 17 00:00:00 2001 From: Gethyn ThomasQuail Date: Fri, 25 Dec 2015 08:16:50 +0700 Subject: system/wine-staging: Added (Wine Is Not an Emulator Staging). Signed-off-by: Willy Sudiarto Raharjo --- system/wine-staging/README | 31 ++++ system/wine-staging/README.SLACKWARE | 78 ++++++++++ system/wine-staging/doinst.sh | 3 + system/wine-staging/slack-desc | 19 +++ system/wine-staging/wine-staging.SlackBuild | 215 ++++++++++++++++++++++++++++ system/wine-staging/wine-staging.info | 12 ++ 6 files changed, 358 insertions(+) create mode 100644 system/wine-staging/README create mode 100644 system/wine-staging/README.SLACKWARE create mode 100644 system/wine-staging/doinst.sh create mode 100644 system/wine-staging/slack-desc create mode 100644 system/wine-staging/wine-staging.SlackBuild create mode 100644 system/wine-staging/wine-staging.info (limited to 'system/wine-staging') diff --git a/system/wine-staging/README b/system/wine-staging/README new file mode 100644 index 0000000000..f23c5209cd --- /dev/null +++ b/system/wine-staging/README @@ -0,0 +1,31 @@ +Wine is an Open Source implementation of the Windows API on top of X and Unix. + +This is Wine patched on the fly with the staging patches, which bring +experimental but useful new Wine features such as PhysX support, EAX, and +more. + +NOTE: At the moment, it only compiles a 32-bit version of Wine, this may +change in the future with the ability to compile both 64-bit and 32-bit +version of Wine. You'll need a multilib system in order to compile this. + +While this is list as a separate package, this WILL overwrite your normal +Wine binaries! Please keep this in mind. + +Compile options/Optional dependences (keep in mind, you need 32-bit libs of +each): + +See README.SLACKWARE for a giant list of dependencies. + +XORG=YES|NO (default: YES), enable or disable Xorg +ALSA=YES|NO (default: YES), enable or disable ALSA +OSS=YES|NO (default: NO), requires oss +PULSE=YES|NO (default: NO), requires PulseAudio +CUPS=YES|NO (default: YES), enable or disable CUPS +DBUS=YES|NO (default: YES), enable or disable DBus +GALLIUM=YES|NO (default: NO), enable or disable Gallium Nine support + requires mesa compiled with the -nine option +OPENAL=YES|NO (default: NO), requires OpenAL +OPENGL=YES|NO (default: YES), enable or disable OpenGL +JPEG=YES|NO (default: NO), enable or disable jpeg support +PNG=YES|NO (default: NO), enable or disable png support +MPG123=YES|NO (default: NO), enable or disable mpg123 support diff --git a/system/wine-staging/README.SLACKWARE b/system/wine-staging/README.SLACKWARE new file mode 100644 index 0000000000..7a94a1ef4c --- /dev/null +++ b/system/wine-staging/README.SLACKWARE @@ -0,0 +1,78 @@ +This lists most if not all the required deps for Wine staging. In the future, this will list all +optional deps and the Slackbuild will have more build options. + +Key: + + x = optional + + = required + ? = information + +List: + + |----- x alsa-lib + |----- x cairo-compat32 + | |------ + glib2-compat32 + | | |------ + libffi-compat32 + | |------ + pixman-compat32 + | |------ + gtk+3-compat32 (Self conversion) + | | |------ + atk-compat32 + | | |------ + at-spi2-atk (current only) + | | |------ + gdk-pixbuf2-compat32 + | | |------ + libepoxy-compat32 (current only) + | | |------ + libICE-compat32 + | | |------ + libSM-compat32 + | | | |------ + at-spi2-atk-compat32 + | | | | |------ + at-spi2-core-compat32 + | | | |------ + util-linux-compat32 + | | |------ + libxshmfence-compat32 + | | |------ + pango-compat32 + | | | |------ + harfbuzz-compat32 + | | | |------ + libXft-compat32 + | | |------ + udev-compat32 + | |------ ? This is only needed if you care about GTK3 theme support. + |----- x dbus-compat32 + |----- + fontconfig-compat32 + | |------ + expat-compat32 + |----- + freetype-compat32 + |----- + gamin-compat32 + | |------ + I'm not sure if this is exactly needed, but Wine use to spit out error messages of it missing. + |----- + gnutls-compat32 + | |------ + gmp-compat32 + | |------ + libidn-compat32 (current only) + | |------ + nettle-compat32 + | |------ + p11-kit-compat32 + | |------ + zlib-compat32 + | |------ ? Technically you can compile without this, but heavily recommended this. + |----- + glew-compat32 + |----- x glu-compat32 + | |------ + libXdamage-compat32 + | |------ + libdrm-compat32 + | |------ ? Needed by some programs but compiles without it. + |----- + libjpeg-turbo-compat32 + |----- + libpng-compat32 + |----- + libXcomposite-compat32 + |----- + libXcursor-compat32 + | |------ + libXfixes-compat32 + |----- + libXext-compat32 + |----- + libX11-compat32 + |----- + libXau-compat32 + |----- + libxcb-compat32 + |----- + libXdmcp-compat32 + |----- + libXinerama-compat32 + |----- + libXi-compat32 + |----- + libXrandr-compat32 + |----- + libXrender-compat32 + |----- + libXxf86dga-compat32 + |----- + libXxf86vm-compat32 + |----- x libxml2-compat32 + | |------ + aaa_elflibs-compat32 + | |------ ? This is needed for .NET to work correctly. + |----- x libva-compat32 + | |------ ? VAAPI backend for DXVA2 GPU decoding. + |----- + mesa-compat32 + |----- + mpg123-compat32 + | |------ + libtool-compat32 + |----- + OpenAL-compat32 + |----- x oss + |----- + openjpeg-compat32 + |----- x PulseAudio diff --git a/system/wine-staging/doinst.sh b/system/wine-staging/doinst.sh new file mode 100644 index 0000000000..140e332222 --- /dev/null +++ b/system/wine-staging/doinst.sh @@ -0,0 +1,3 @@ +if [ -x /usr/bin/update-desktop-database ]; then + /usr/bin/update-desktop-database -q usr/share/applications +fi diff --git a/system/wine-staging/slack-desc b/system/wine-staging/slack-desc new file mode 100644 index 0000000000..39d828e869 --- /dev/null +++ b/system/wine-staging/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. +# Line up the first '|' above the ':' following the base package name, and +# the '|' on the right side marks the last column you can put a character in. +# You must make exactly 11 lines for the formatting to be correct. It's also +# customary to leave one space after the ':' except on otherwise blank lines. + + |-----handy-ruler------------------------------------------------------| +wine-staging: wine-staging (Wine Is Not an Emulator Staging) +wine-staging: +wine-staging: Wine is an Open Source implementation of the Windows API +wine-staging: on top of X and Unix. This version of Wine is patched with +wine-staging: experimental but useful new Wine features. +wine-staging: +wine-staging: Homepage: http://www.wine-staging.com/ +wine-staging: +wine-staging: +wine-staging: +wine-staging: diff --git a/system/wine-staging/wine-staging.SlackBuild b/system/wine-staging/wine-staging.SlackBuild new file mode 100644 index 0000000000..585049961c --- /dev/null +++ b/system/wine-staging/wine-staging.SlackBuild @@ -0,0 +1,215 @@ +#!/bin/sh + +# Slackware build script for wine-staging + +# Copyright 2015 Gethyn ThomasQuail +# All rights reserved. + +# Based on: +# Wine SlackBuild by David Woodfall Copyright 2011 +# Some elements from Wine Slackbuilds by Eric Hameleers and Phantom X, Goiania, Brazil + +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +PRGNAM=wine-staging +VERSION=${VERSION:-1.8} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i486 ;; + arm*) ARCH=arm ;; + *) ARCH=$( uname -m ) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +# Default compile options +XORG=${XORG:-YES} +ALSA=${ALSA:-YES} +OSS=${OSS:-NO} +PULSE=${PULSE:-NO} +CUPS=${CUPS:-YES} +DBUS=${DBUS:-YES} +GALLIUM=${GALLIUM:-NO} +OPENAL=${OPENAL:-NO} +OPENGL=${OPENGL:-YES} +JPEG=${JPEG:-NO} +PNG=${PNG:-NO} +MPG123=${MPG123:-NO} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +rm -rf wine-$VERSION +tar xvf $CWD/wine-$VERSION.tar.bz2 +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz + +# Apply Staging patches +cd wine-staging-$VERSION/patches +./patchinstall.sh --all DESTDIR=$TMP/wine-$VERSION + +cd $TMP/wine-$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 {} \; + +# Various compile options +if [ "$XORG" = "YES" ]; then + do_x="with" + else + do_x="without" +fi + +if [ "$ALSA" = "YES" ]; then + do_alsa="with" + else + do_alsa="without" +fi + +if [ "$OSS" = "YES" ]; then + do_oss="with" + else + do_oss="without" +fi + +if [ "$PULSE" = "YES" ]; then + do_pulse="with" + else + do_pulse="without" +fi + +if [ "$CUPS" = "YES" ]; then + do_cups="with" + else + do_cups="without" +fi + +if [ "$DBUS" = "YES" ]; then + do_dbus="with" + else + do_dbus="without" +fi + +if [ "$GALLIUM" = "YES" ]; then + do_gallium="with" + else + do_gallium="without" +fi + +if [ "$OPENAL" = "YES" ]; then + do_openal="with" + else + do_openal="without" +fi + +if [ "$OPENGL" = "YES" ]; then + do_opengl="with" + else + do_opengl="without" +fi + +if [ "$JPEG" = "YES" ]; then + do_jpeg="with" + else + do_jpeg="without" +fi + +if [ "$PNG" = "YES" ]; then + do_png="with" + else + do_png="without" +fi + +if [ "$MPG123" = "YES" ]; then + do_mpg123="with" + else + do_mpg123="without" +fi + +# All of the libraries produced are 32bit libs anyway +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --mandir=/usr/man \ + --docdir=/usr/doc/$PRGNAM-$VERSION \ + --localstatedir=/var \ + --sysconfdir=/etc \ + --with-gnutls=yes \ + --${do_x}-x \ + --x-includes=/usr/include \ + --${do_alsa}-alsa \ + --${do_oss}-oss \ + --${do_pulse}-pulse \ + --${do_cups}-cups \ + --${do_dbus}-dbus \ + --${do_openal}-openal \ + --${do_gallium}-d3dadapter \ + --${do_opengl}-opengl \ + --${do_jpeg}-jpeg \ + --${do_png}-png \ + --${do_mpg123}-mpg123 \ + --with-fontconfig \ + --with-freetype \ + --build=$ARCH-slackware-linux + +make depend +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 + +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 + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION +cp -a ANNOUNCE AUTHORS COPYING.LIB LICENSE* README VERSION $PKG/usr/doc/$PRGNAM-$VERSION +cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/system/wine-staging/wine-staging.info b/system/wine-staging/wine-staging.info new file mode 100644 index 0000000000..4058718138 --- /dev/null +++ b/system/wine-staging/wine-staging.info @@ -0,0 +1,12 @@ +PRGNAM="wine-staging" +VERSION="1.8" +HOMEPAGE="http://www.winehq.com/" +DOWNLOAD="http://ftp.winehq.org/pub/wine/source/1.8/wine-1.8.tar.bz2 \ + https://github.com/wine-compholio/wine-staging/archive/v1.8.tar.gz" +MD5SUM="96b51a2f2ae727802d71095354e69fef \ + 7d65f0f8a70089eed7a8e0b73d8edc99" +DOWNLOAD_x86_64="UNSUPPORTED" +MD5SUM_x86_64="" +REQUIRES="" +MAINTAINER="Gethyn ThomasQuail" +EMAIL="gethyn@bloodbathsoftworks.com" -- cgit v1.2.3