summaryrefslogtreecommitdiff
path: root/games/RetroArch
diff options
context:
space:
mode:
Diffstat (limited to 'games/RetroArch')
-rw-r--r--games/RetroArch/README21
-rw-r--r--games/RetroArch/RetroArch.SlackBuild73
-rw-r--r--games/RetroArch/RetroArch.info6
-rw-r--r--games/RetroArch/disable_core_update.patch.gzbin0 -> 816 bytes
-rw-r--r--games/RetroArch/python3.diff.gzbin0 -> 824 bytes
5 files changed, 77 insertions, 23 deletions
diff --git a/games/RetroArch/README b/games/RetroArch/README
index 22f8776489..6e31951a9c 100644
--- a/games/RetroArch/README
+++ b/games/RetroArch/README
@@ -17,17 +17,34 @@ anyone to use.
RetroArch will require at least one of the libretro cores to play any games.
+Cores alternatively can be downloaded with the online updater from the
+libretro buildbot instead of being compiled with slackbuilds. This will
+require the core directory to be writable and is incompatible with the
+libretro slackbuilds. The buildbot can be used with:
+ BUILDBOT=1 ./RetroArch.SlackBuild
+
To build debugging symbols for RetroArch use:
DEBUG=1 ./RetroArch.SlackBuild
Some optional dependencies include:
-ffmpeg jack-audio-connection-kit libxkbcommon python3 SDL2 wayland
+ffmpeg jack-audio-connection-kit libxkbcommon miniupnpc nvidia-cg-toolkit
+python3 SDL2 wayland
+
+Python3 support for shaders will need to be enabled with:
+ PYTHON=1 ./RetroArch.SlackBuild
Note: Wayland support requires mesa to be rebuilt with Wayland support,
using the following configure parameters.
--with-egl-platforms=x11,drm,wayland
-RetroArch optionally supports using Vulkan instead of opengl, but
+Retroarch optionally supports using OpenGL ES 2 and OpenGL ES 3 instead of
+OpenGL which will require video card and driver support. This can be done
+by building RetroArch with:
+ GLES=1 ./RetroArch.SlackBuild
+or
+ GLES3=1 ./RetroArch.SlackBuild
+
+RetroArch optionally supports using Vulkan instead of OpenGL, but
Slackware does not yet provide any Vulkan support, so providing the
correct build environment is up to you.
diff --git a/games/RetroArch/RetroArch.SlackBuild b/games/RetroArch/RetroArch.SlackBuild
index 94dfa64c86..fcc119c049 100644
--- a/games/RetroArch/RetroArch.SlackBuild
+++ b/games/RetroArch/RetroArch.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for RetroArch
-# Copyright 2016 Hunter Sezen California, USA
+# Copyright 2016-2017 Hunter Sezen California, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,7 +23,7 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=RetroArch
-VERSION=${VERSION:-1.3.6}
+VERSION=${VERSION:-1.4.1}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -65,7 +65,7 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.gz || tar xvf $CWD/v$VERSION.tar.gz
+tar xvf $CWD/$PRGNAM-$VERSION.tar.xz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
@@ -74,34 +74,70 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Needed for python3 in the 14.1 SBo branch.
-if ! pkg-config --exists python3 && pkg-config --exists python-3.5; then
- sed -i 's/python3/python-3.5/' qb/config.libs.sh
+if [ "$PYTHON" = "1" ]; then
+ python="--enable-python"
+ # Needed for python3 in the 14.1 SBo branch.
+ if ! pkg-config --exists python3 && pkg-config --exists python-3.5; then
+ sed -i 's/python3/python-3.5/' qb/config.libs.sh
+ fi
+fi
+
+if [ "$GLES" = "1" ]; then
+ gles="--enable-opengles"
+elif [ "$GLES3" = "1" ]; then
+ gles="--enable-opengles --enable-opengles3"
+fi
+
+if [ "$BUILDBOT" != "1" ]; then
+ update_cores="--disable-update_cores"
+ SED_CORE="s|# libretro_directory =|libretro_directory = /usr/lib${LIBDIRSUFFIX}/libretro|"
+ SED_INFO="s|# libretro_info_path =|libretro_info_path = /usr/lib${LIBDIRSUFFIX}/libretro/info|"
+
+ # Disable downloading cores with the online updater
+ # https://github.com/libretro/RetroArch/issues/3237
+ zcat $CWD/disable_core_update.patch.gz | patch -p1
fi
# Set the config file default directories to be consistent with the installation.
-sed -e "s|# libretro_directory =|libretro_directory = /usr/lib${LIBDIRSUFFIX}/libretro|" \
- -e "s|# libretro_info_path =|libretro_info_path = /usr/lib${LIBDIRSUFFIX}/libretro/info|" \
- -e "s|# audio_filter_dir =|audio_filter_dir = /usr/lib${LIBDIRSUFFIX}/retroarch/filters/audio|" \
+sed -e "s|# audio_filter_dir =|audio_filter_dir = /usr/lib${LIBDIRSUFFIX}/retroarch/filters/audio|" \
-e "s|# video_filter_dir =|video_filter_dir = /usr/lib${LIBDIRSUFFIX}/retroarch/filters/video|" \
+ -e "$SED_CORE;$SED_INFO" \
-i retroarch.cfg
+# Fix ./configure --enable-python
+# https://github.com/libretro/RetroArch/commit/a06380e9cab1e5a59c70826fb2735566221e4149
+zcat $CWD/python3.diff.gz | patch -p1
+
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure --prefix=/usr \
- --with-man_dir=/usr/man
+ --with-bin_dir=/usr/games \
+ --with-man_dir=/usr/man \
+ --with-assets_dir=/usr/share/games \
+ --disable-dbus \
+ --disable-update_assets \
+ $gles $python $update_cores
make GL_DEBUG=$DEBUG VULKAN_DEBUG=$DEBUG
-make -C audio/audio_filters
-make -C gfx/video_filters
make install DESTDIR=$PKG
-install -dm0755 $PKG/usr/lib${LIBDIRSUFFIX}/retroarch/filters/audio
-install -dm0755 $PKG/usr/lib${LIBDIRSUFFIX}/retroarch/filters/video
-install -m0644 audio/audio_filters/*.dsp $PKG/usr/lib${LIBDIRSUFFIX}/retroarch/filters/audio
-install -m0644 audio/audio_filters/*.so $PKG/usr/lib${LIBDIRSUFFIX}/retroarch/filters/audio
-install -m0644 gfx/video_filters/*.filt $PKG/usr/lib${LIBDIRSUFFIX}/retroarch/filters/video
-install -m0644 gfx/video_filters/*.so $PKG/usr/lib${LIBDIRSUFFIX}/retroarch/filters/video
+for filter in audio video; do
+ case "$filter" in
+ audio )
+ EXT='dsp'
+ DIR="libretro-common/$filter/dsp_filters"
+ ;;
+ video )
+ EXT='filt'
+ DIR="gfx/${filter}_filters"
+ ;;
+ esac
+ make -C "$DIR"
+ install -dm0755 $PKG/usr/lib${LIBDIRSUFFIX}/retroarch/filters/$filter
+ for ext in "$EXT" so; do
+ install -m0644 $DIR/*.$ext $PKG/usr/lib${LIBDIRSUFFIX}/retroarch/filters/$filter
+ done
+done
mv $PKG/etc/retroarch.cfg $PKG/etc/retroarch.cfg.new
@@ -115,6 +151,7 @@ for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; r
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a CONTRIBUTING.md COPYING README* $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a media/assets/COPYING $PKG/usr/doc/$PRGNAM-$VERSION/COPYING.assets
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
diff --git a/games/RetroArch/RetroArch.info b/games/RetroArch/RetroArch.info
index f4050b49c0..5310dfe299 100644
--- a/games/RetroArch/RetroArch.info
+++ b/games/RetroArch/RetroArch.info
@@ -1,8 +1,8 @@
PRGNAM="RetroArch"
-VERSION="1.3.6"
+VERSION="1.4.1"
HOMEPAGE="http://www.libretro.com/"
-DOWNLOAD="https://github.com/libretro/RetroArch/archive/v1.3.6.tar.gz"
-MD5SUM="b2e8518382dcff857b91c154fb6ac279"
+DOWNLOAD="http://ks392457.kimsufi.com/orbea/stuff/slackbuilds/src/RetroArch-1.4.1.tar.xz"
+MD5SUM="c479201bcc9092cc339f5024897d5eb5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
diff --git a/games/RetroArch/disable_core_update.patch.gz b/games/RetroArch/disable_core_update.patch.gz
new file mode 100644
index 0000000000..52298d06db
--- /dev/null
+++ b/games/RetroArch/disable_core_update.patch.gz
Binary files differ
diff --git a/games/RetroArch/python3.diff.gz b/games/RetroArch/python3.diff.gz
new file mode 100644
index 0000000000..403a751caf
--- /dev/null
+++ b/games/RetroArch/python3.diff.gz
Binary files differ