diff options
Diffstat (limited to 'games/higan')
-rw-r--r-- | games/higan/README | 24 | ||||
-rw-r--r-- | games/higan/higan-flags.patch | 38 | ||||
-rw-r--r-- | games/higan/higan-v094.patch | 57 | ||||
-rw-r--r-- | games/higan/higan.SlackBuild | 66 | ||||
-rw-r--r-- | games/higan/higan.info | 8 |
5 files changed, 62 insertions, 131 deletions
diff --git a/games/higan/README b/games/higan/README index b7482646d1..5f29a6f9ca 100644 --- a/games/higan/README +++ b/games/higan/README @@ -10,29 +10,6 @@ Famicom (SNES), Game Boy, Game Boy Color and Game Boy Advance. It also supports the following subsystems: Super Game Boy, BS-X Satellaview and Sufami Turbo. - -* Options * - -1) higan has 2 interfaces to choose from. The default is QT -and the other is GTK. If you'd like to choose the GTK interface, -then pass INTERFACE=gtk to the slackbuild. - -INTERFACE=qt|gtk (default: qt) - -2) There are 3 modes that higan can be built. There can only be one -mode chosen at build time. The 3 modes are accuracy, balanced (default), -and performance. To choose accuracy mode pass PROFILE=accuracy to -the slackbuild. For performance mode pass PROFILE=performance to the -slackbuild. - -PROFILE=accuracy|balanced|performance (default: balanced) - -3) If you want to have an OpenAL audio driver option, you can build higan -to support it by passing OPENAL=yes to the slackbuild, which would require -the OpenAL package to be installed. By default, this option is disabled. - -OPENAL=yes|no (default: no), requires OpenAL - * Configuration * The default profile folder (where platform system files, cheats and @@ -40,4 +17,3 @@ shaders are located) is /usr/share/higan. If you want a personalized profile, store your files in ~/.config/higan/, then higan will use this folder instead. -Optional dependency: OpenAL diff --git a/games/higan/higan-flags.patch b/games/higan/higan-flags.patch new file mode 100644 index 0000000000..71fd27498c --- /dev/null +++ b/games/higan/higan-flags.patch @@ -0,0 +1,38 @@ +diff -rupN higan_v097-source.orig/higan/GNUmakefile higan_v097-source/higan/GNUmakefile +--- higan_v097-source.orig/higan/GNUmakefile 2016-01-24 09:21:45.822940200 +0100 ++++ higan_v097-source/higan/GNUmakefile 2016-01-24 09:24:03.028722500 +0100 +@@ -36,7 +36,7 @@ ifeq ($(platform),windows) + else ifeq ($(platform),macosx) + flags += -march=native + else ifneq ($(filter $(platform),linux bsd),) +- flags += -march=native -fopenmp ++ flags += -fopenmp + link += -fopenmp + link += -Wl,-export-dynamic + link += -lX11 -lXext +diff -rupN higan_v097-source.orig/nall/GNUmakefile higan_v097-source/nall/GNUmakefile +--- higan_v097-source.orig/nall/GNUmakefile 2016-01-24 09:21:46.021749600 +0100 ++++ higan_v097-source/nall/GNUmakefile 2016-01-24 09:25:06.347100800 +0100 +@@ -40,8 +40,8 @@ cflags := -x c -std=c99 + objcflags := -x objective-c -std=c99 + cppflags := -x c++ -std=c++14 + objcppflags := -x objective-c++ -std=c++14 +-flags := +-link := ++flags := $(CXXFLAGS) ++link := $(LDFLAGS) + + # compiler detection + ifeq ($(compiler),) +@@ -51,9 +51,9 @@ ifeq ($(compiler),) + else ifeq ($(platform),macosx) + compiler := clang++ + else ifeq ($(platform),linux) +- compiler := g++-4.9 ++ compiler := g++ + else ifeq ($(platform),bsd) +- compiler := g++49 ++ compiler := g++ + else + compiler := g++ + endif diff --git a/games/higan/higan-v094.patch b/games/higan/higan-v094.patch deleted file mode 100644 index 2277fee691..0000000000 --- a/games/higan/higan-v094.patch +++ /dev/null @@ -1,57 +0,0 @@ -diff -ruN higan_v094-source/ananke/Makefile higan_v094-source_MOD/ananke/Makefile ---- higan_v094-source/ananke/Makefile 2013-12-19 13:10:40.000000000 +0300 -+++ higan_v094-source_MOD/ananke/Makefile 2014-03-11 12:04:37.875388819 +0300 -@@ -31,9 +31,9 @@ - sudo cp libananke.dylib $(path)/libananke.1.dylib - sudo ln -s $(path)/libananke.1.dylib $(path)/libananke.dylib - else -- if [ ! -d ~/.config/ananke ]; then mkdir ~/.config/ananke; fi -- sudo cp libananke.so $(path)/libananke.so.1 -- sudo ln -s $(path)/libananke.so.1 $(path)/libananke.so -+ mkdir -p $(path) -+ cp libananke.so $(path)/libananke.so.1 -+ ln -s $(path)/libananke.so.1 $(path)/libananke.so - endif - - uninstall: -diff -ruN higan_v094-source/target-ethos/Makefile higan_v094-source_MOD/target-ethos/Makefile ---- higan_v094-source/target-ethos/Makefile 2014-01-13 08:26:29.000000000 +0300 -+++ higan_v094-source_MOD/target-ethos/Makefile 2014-03-11 15:57:18.360490754 +0300 -@@ -24,7 +24,13 @@ - ruby += input.carbon - else ifeq ($(platform),linux) - ruby := video.glx video.xv video.xshm video.sdl -- ruby += audio.alsa audio.openal audio.oss audio.pulseaudio audio.pulseaudiosimple audio.ao -+ ruby += audio.alsa audio.oss audio.ao -+ ifeq ($(with_openal),yes) -+ ruby += audio.openal -+ endif -+ ifeq ($(with_pulseaudio),yes) -+ ruby += audio.pulseaudio audio.pulseaudiosimple -+ endif - ruby += input.udev input.sdl input.x - else ifeq ($(platform),bsd) - ruby := video.glx -@@ -96,14 +102,14 @@ - sudo cp data/cheats.bml /Library/Application\ Support/$(name)/cheats.bml - sudo chmod -R 777 /Library/Application\ Support/$(name) - else -- sudo install -D -m 755 out/$(name) $(DESTDIR)$(prefix)/bin/$(name) -- sudo install -D -m 644 data/$(name).png $(DESTDIR)$(prefix)/share/pixmaps/$(name).png -- sudo install -D -m 644 data/$(name).desktop $(DESTDIR)$(prefix)/share/applications/$(name).desktop -- -- sudo mkdir -p /usr/share/$(name) -- sudo cp -R profile/* /usr/share/$(name) -- sudo cp data/cheats.bml /usr/share/$(name)/cheats.bml -- sudo chmod -R 777 /usr/share/$(name) -+ install -D -m 755 out/$(name) $(DESTDIR)$(prefix)/bin/$(name) -+ install -D -m 644 data/$(name).png $(DESTDIR)$(prefix)/share/pixmaps/$(name).png -+ install -D -m 644 data/$(name).desktop $(DESTDIR)$(prefix)/share/applications/$(name).desktop -+ -+ mkdir -p $(DESTDIR)/usr/share/$(name) -+ cp -R profile/* $(DESTDIR)/usr/share/$(name) -+ cp data/cheats.bml $(DESTDIR)/usr/share/$(name)/cheats.bml -+ chmod -R 777 $(DESTDIR)/usr/share/$(name) - endif - - uninstall: diff --git a/games/higan/higan.SlackBuild b/games/higan/higan.SlackBuild index b147533ab2..a9511ca33c 100644 --- a/games/higan/higan.SlackBuild +++ b/games/higan/higan.SlackBuild @@ -4,6 +4,7 @@ # Based on bsnes SlackBuild by Erik Hanson <erik@slackbuilds.org> # Maintained by Gabriel Magno <gabrielmagno1[at]gmail[dot]com> +# Modified by Johannes Schoepfer <slackbuilds[at]schoepfer[dot]info> # Copyright 2013 Gabriel Magno, Belo Horizonte, MG, Brazil # All rights reserved. @@ -26,13 +27,13 @@ # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. PRGNAM=higan -VERSION=${VERSION:-094} +VERSION=${VERSION:-101} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then case "$( uname -m )" in - i?86) ARCH=i486 ;; + i?86) ARCH=i586 ;; arm*) ARCH=arm ;; *) ARCH=$( uname -m ) ;; esac @@ -43,8 +44,8 @@ TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} -if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O2 -march=i686 -mtune=i686" @@ -63,7 +64,7 @@ rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP rm -rf ${PRGNAM}_v${VERSION}-source -tar xvf $CWD/${PRGNAM}_v${VERSION}-source.tar.xz +7z x $CWD/${PRGNAM}_v${VERSION}-source.7z cd ${PRGNAM}_v${VERSION}-source find . -type d -exec chmod -R 0755 {} \; chown -R root:root . @@ -73,58 +74,31 @@ 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 {} \; -# Apply the patch to allow proper install on Slackware as root -patch -p1 -i $CWD/higan-v094.patch - -# Fix building with QT >= 4.8.0. -moc -i -Iphoenix/qt/ -o phoenix/qt/platform.moc phoenix/qt/platform.moc.hpp - -# Choose whether a qt or gtk interface is built. -INTERFACE=${INTERFACE:-qt} - -# Determine which mode to build higan. -# Possible values for PROFILE: accuracy, balanced, and performance. -PROFILE=${PROFILE:-balanced} - -# Options to build with additional audio driver support -OPENAL=${OPENAL:-no} +# Thanks to the Arch folks +patch -p1 -i $CWD/higan-flags.patch CXXFLAGS="$SLKCFLAGS" \ -make \ - compiler=g++ \ - cppflags="-std=c++11" \ +make -C icarus \ prefix=/usr \ platform=linux \ - with_openal="$OPENAL" \ - with_pulseaudio="yes" \ - phoenix="$INTERFACE" \ - profile="$PROFILE" + hiro=qt \ -make install DESTDIR=$PKG prefix=/usr platform=linux profile=$PROFILE - -# Compile ananke (tool to import ROM game files into the higan library). -make -C ananke \ - compiler=g++ \ - cppflags="-std=c++11" \ +CXXFLAGS="$SLKCFLAGS" \ +make -C higan \ + prefix=/usr \ platform=linux \ - phoenix="$INTERFACE" \ - profile="$PROFILE" -make -C ananke install path=$PKG/usr/lib${LIBDIRSUFFIX} platform=linux + hiro=qt -# Copy shaders -mkdir $PKG/usr/share/higan/Video\ Shaders -cp -r shaders/*.shader $PKG/usr/share/higan/Video\ Shaders -chmod -R 777 $PKG/usr/share/higan/Video\ Shaders +install -dm 755 $PKG/usr/{bin,share/{applications,higan,pixmaps}} +install -m 755 icarus/out/icarus $PKG/usr/bin/ +install -m 755 higan/out/higan $PKG/usr/bin/ +install -m 644 higan/data/higan.desktop $PKG/usr/share/applications/ +install -m 644 higan/data/higan.png $PKG/usr/share/pixmaps/ +cp -dr higan/systems/* higan/data/cheats.bml $PKG/usr/share/higan/ 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 -# Fix broken link. -cd $PKG/usr/lib${LIBDIRSUFFIX} - rm libananke.so - ln -s libananke.so.1 libananke.so -cd - - mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild diff --git a/games/higan/higan.info b/games/higan/higan.info index 461debc1b9..717fe9d120 100644 --- a/games/higan/higan.info +++ b/games/higan/higan.info @@ -1,10 +1,10 @@ PRGNAM="higan" -VERSION="094" +VERSION="101" HOMEPAGE="http://byuu.net/higan/" -DOWNLOAD="http://files.byuu.org/download/higan_v094-source.tar.xz" -MD5SUM="a0e8730f64f0ba666b4282b8145b8c31" +DOWNLOAD="http://helmet.kafuka.org/higan_v101-source.7z" +MD5SUM="7c0f00b05c5589ea01b5c2b18c452e0f" DOWNLOAD_x86_64="" MD5SUM_x86_64="" -REQUIRES="" +REQUIRES="OpenAL p7zip" MAINTAINER="Gabriel Magno" EMAIL="gabrielmagno1@gmail.com" |