From 243061bcff66bc5491300110fd4e4866bbdf0636 Mon Sep 17 00:00:00 2001 From: Eric Hameleers Date: Tue, 24 Oct 2017 15:27:51 +0200 Subject: Add wayland support (not enabled in regular repo) In an attempt to keep a single source tree for both 'latest' and 'testing' repositories, everything to support a Plasma5 Wayland session was added. This was made possible *without* the need for PAM or systemd because the ConsoleKit2 and KWin developers cooperated (on my request :-) to add the logind DBus API to CK2 and make KWin accept CK2 as an alternative to systemd-logind if the latter is not present. Note that this requires recompilation of two stock Slackware packages, mesa and xorg-server, to let them gain Wayland support. Build order: Deps: - ConsoleKit2 - wayland and wayland-protocols - mesa - xorg-server - libxkbcommon - qt5 Frameworks: - kwayland - plasma-framework Plasma; - kinfocenter - kscreenlocker - kwayland-integration - libkscreen2 - plasma-desktop - plasma-integration - plasma-workspace - powerdevil - kwin In order to start a Wayland session (you'll need to use packages from the 'testing' repository) either run 'startkwayland' from your console prompt in runlevel 3, or choose the "Plasma (Wayland)" session in the SDDM dropdown if you are booting into runlevel 4. --- deps/mesa/mesa.SlackBuild | 41 ++++++++++++++++++++++++++--------------- 1 file changed, 26 insertions(+), 15 deletions(-) (limited to 'deps/mesa/mesa.SlackBuild') diff --git a/deps/mesa/mesa.SlackBuild b/deps/mesa/mesa.SlackBuild index 05e49d8..36424d4 100755 --- a/deps/mesa/mesa.SlackBuild +++ b/deps/mesa/mesa.SlackBuild @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2013, 2014, 2015, 2016 Patrick J. Volkerding, Sebeka, MN, USA +# Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2013, 2014, 2015, 2016, 2017 Patrick J. Volkerding, Sebeka, MN, USA # All rights reserved. # # Redistribution and use of this script, with or without modification, is @@ -21,7 +21,7 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. PKGNAM=mesa -VERSION=${VERSION:-13.0.4} +VERSION=${VERSION:-17.2.3} DEMOVERS=${DEMOVERS:-8.3.0} BUILD=${BUILD:-1} @@ -47,9 +47,13 @@ PKG=$TMP/package-mesa if [ "$ARCH" = "i586" ]; then SLKCFLAGS="-O2 -march=i586 -mtune=i686" LIBDIRSUFFIX="" + # I've heard some reports as of late 2016 that Vulkan has some issues on + # 32-bit, but we'll try it anyway and see if anything is reported: + VULKAN=" --with-vulkan-drivers=intel,radeon " elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIRSUFFIX="64" + VULKAN=" --with-vulkan-drivers=intel,radeon " else SLKCFLAGS="-O2" LIBDIRSUFFIX="" @@ -108,7 +112,8 @@ CFLAGS="$SLKCFLAGS" \ --with-dri-drivers="$DRI_DRIVERS" \ --with-gallium-drivers="$GALLIUM_DRIVERS" \ --with-egl-platforms="$EGL_PLATFORMS" \ - --enable-gallium-llvm \ + $VULKAN \ + --enable-llvm \ --enable-llvm-shared-libs \ --enable-egl \ --enable-texture-float \ @@ -134,7 +139,11 @@ CFLAGS="$SLKCFLAGS" \ make $NUMJOBS || make || exit 1 make install DESTDIR=$PKG || exit 1 -# Now install the demos +# Install /etc/drirc as a .new file: +mv $PKG/etc/drirc $PKG/etc/drirc.new + +# Now build/install the demos: +export CWD SLKCFLAGS NUMJOBS PKG ( cd $TMP rm -rf mesa-demos-$DEMOVERS tar xvf $CWD/mesa-demos-$DEMOVERS.tar.?z* || exit 1 @@ -148,19 +157,20 @@ make install DESTDIR=$PKG || exit 1 CFLAGS="$SLKCFLAGS" \ ./configure \ --prefix=/usr \ - --build=$ARCH-slackware-linux - # Build and install gears and glinfo, as well as a few other demos - make -C src/demos gears glinfo - make -C src/xdemos \ - glthreads glxcontexts glxdemo glxgears glxgears_fbconfig \ - glxheads glxinfo glxpbdemo glxpixmap + --build=$ARCH-slackware-linux || exit 1 + make $NUMJOBS || exit 1 + # Install all the demos (including the pointless ones) at first, in a + # temporary location: + make install DESTDIR=$PKG/cruft + # Install gears and glinfo, as well as a few other demos: mkdir -p $PKG/usr/bin - cp -a src/demos/{gears,glinfo} $PKG/usr/bin - for i in glthreads glxcontexts glxdemo glxgears glxgears_fbconfig \ - glxheads glxinfo glxpbdemo glxpixmap ; do - cp -a src/xdemos/$i $PKG/usr/bin ; + for demo in gears glinfo glthreads glxcontexts glxdemo glxgears \ + glxgears_fbconfig glxheads glxinfo glxpbdemo glxpixmap ; do + mv --verbose $PKG/cruft/usr/bin/$demo $PKG/usr/bin done -) + # Remove cruft: + rm -rf $PKG/cruft +) || exit 1 # Strip binaries: find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ @@ -184,6 +194,7 @@ rm -f $PKG/usr/doc/$PKGNAM-$VERSION/html/relnotes*.html 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 $TMP/${PKGNAM}-$VERSION-$ARCH-$BUILD.txz -- cgit v1.2.3