games/higan: Updated for version 093.

Signed-off-by: Robby Workman <rworkman@slackbuilds.org>
This commit is contained in:
Gabriel Magno 2013-10-29 14:12:54 -05:00 committed by Robby Workman
parent 0a99e23ab3
commit 8986155c61
7 changed files with 130 additions and 100 deletions

View file

@ -6,11 +6,12 @@ This includes speed and game-specific hacks for compatibility. As a
result, the minimum system requirements for higan are very high. result, the minimum system requirements for higan are very high.
It currently supports the following systems: Famicom (NES), Super It currently supports the following systems: Famicom (NES), Super
Famicom (SNES), Game Boy, Game Boy Color, Game Boy Advance and Famicom (SNES), Game Boy, Game Boy Color and Game Boy Advance.
Nintendo DS. It also supports the following subsystems: Super Game It also supports the following subsystems: Super Game Boy,
Boy, BS-X Satellaview and Sufami Turbo. BS-X Satellaview and Sufami Turbo.
*Options*
Options:
1) higan has 2 interfaces to choose from. The default is QT 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, and the other is GTK. If you'd like to choose the GTK interface,
then pass INTERFACE=gtk to the slackbuild. then pass INTERFACE=gtk to the slackbuild.
@ -21,7 +22,19 @@ and performance. To choose accuracy mode pass PROFILE=accuracy to
the slackbuild. For performance mode pass PROFILE=performance to the the slackbuild. For performance mode pass PROFILE=performance to the
slackbuild. slackbuild.
Configuration: *Configuration*
Once installed, you will need to copy /usr/share/higan/profile/*
into ~/.config/higan/ before running. If you want to use shaders, The default profile folder (where platform system files, cheats and
select OpenGL as the video driver. 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.
Since the ananke library is also built, you can import your regular
ROM game files into higan's library using the option "Import Game" in
the Library menu. When you import a rom file it will be converted into
higan's format and saved in the Game Library Path specified in the
Advanced Settings options (Settings -> Configuration -> Advanced).
After that you can load your game through the correspondent system
option in the Library menu.
If you want to use shaders, select OpenGL as the video driver.

View file

@ -1,4 +1,3 @@
if [ -x /usr/bin/update-desktop-database ]; then if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1 /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi fi

View file

@ -1,50 +0,0 @@
diff -Nur higan_v092-source.orig/ananke/Makefile higan_v092-source/ananke/Makefile
--- higan_v092-source.orig/ananke/Makefile 2013-01-12 17:18:14.000000000 -0600
+++ higan_v092-source/ananke/Makefile 2013-06-03 15:46:20.887735981 -0500
@@ -26,7 +26,6 @@
install: uninstall
ifeq ($(platform),x)
- 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
endif
diff -Nur higan_v092-source.orig/higan/target-ethos/Makefile higan_v092-source/higan/target-ethos/Makefile
--- higan_v092-source.orig/higan/target-ethos/Makefile 2013-01-12 15:59:47.000000000 -0600
+++ higan_v092-source/higan/target-ethos/Makefile 2013-06-03 15:46:38.235227179 -0500
@@ -17,7 +17,7 @@
# platform
ifeq ($(platform),x)
ruby := video.glx video.xv video.sdl
- ruby += audio.alsa audio.openal audio.oss audio.pulseaudio audio.pulseaudiosimple audio.ao
+ ruby += audio.alsa audio.openal audio.oss audio.ao
ruby += input.sdl input.x
else ifeq ($(platform),osx)
ruby :=
@@ -80,18 +80,14 @@
sourcery $(ui)/resource/resource.bml $(ui)/resource/resource.cpp $(ui)/resource/resource.hpp
install:
-ifeq ($(USER),root)
- @echo Please do not run make install as root.
- @echo The installer needs to know your home directory to install important files.
-else ifeq ($(platform),x)
- 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
-
- mkdir -p ~/.config/$(name)
- cp -R profile/* ~/.config/$(name)
- cp data/cheats.bml ~/.config/$(name)/cheats.bml
- chmod -R 777 ~/.config/$(name)
+ifeq ($(platform),x)
+ 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
+ install -d -m 755 $(DESTDIR)$(prefix)/share/$(name)/profile
+ cp -R profile/* $(DESTDIR)$(prefix)/share/$(name)/profile
+ install -m 644 data/cheats.bml $(DESTDIR)$(prefix)/share/$(name)/profile/cheats.bml
+ chmod -R 644 $(DESTDIR)$(prefix)/share/$(name)/profile/*/*
endif
uninstall:

View file

@ -0,0 +1,51 @@
diff -ruN higan_v093-source/ananke/Makefile higan_v093-source_MOD/ananke/Makefile
--- higan_v093-source/ananke/Makefile 2013-08-02 17:36:56.000000000 -0300
+++ higan_v093-source_MOD/ananke/Makefile 2013-09-24 09:42:36.399970000 -0300
@@ -25,9 +25,9 @@
install: uninstall
ifeq ($(platform),x)
- 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
else ifeq ($(platform),osx)
if [ ! -d ~/Library/Application\ Support/ananke ]; then mkdir ~/Library/Application\ Support/ananke; fi
sudo cp libananke.dylib $(path)/libananke.1.dylib
diff -ruN higan_v093-source/target-ethos/Makefile higan_v093-source_MOD/target-ethos/Makefile
--- higan_v093-source/target-ethos/Makefile 2013-08-16 20:39:20.000000000 -0300
+++ higan_v093-source_MOD/target-ethos/Makefile 2013-09-24 09:53:39.367766000 -0300
@@ -16,7 +16,7 @@
# platform
ifeq ($(platform),x)
ruby := video.glx video.xv video.sdl
- ruby += audio.alsa audio.openal audio.oss audio.pulseaudio audio.pulseaudiosimple audio.ao
+ ruby += audio.alsa audio.openal audio.oss audio.ao
ruby += input.sdl input.x
else ifeq ($(platform),osx)
ruby := video.cgl
@@ -86,14 +86,14 @@
install:
ifeq ($(platform),x)
- 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)
else ifeq ($(platform),osx)
sudo mkdir -p /Library/Application\ Support/$(name)
sudo cp -R profile/* /Library/Application\ Support/$(name)

View file

@ -5,8 +5,28 @@
# Based on bsnes SlackBuild by Erik Hanson <erik@slackbuilds.org> # Based on bsnes SlackBuild by Erik Hanson <erik@slackbuilds.org>
# Maintained by Gabriel Magno <gabrielmagno1[at]gmail[dot]com> # Maintained by Gabriel Magno <gabrielmagno1[at]gmail[dot]com>
# Copyright 2013 Gabriel Magno, Belo Horizonte, MG, Brazil
# All rights reserved.
#
# 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=higan PRGNAM=higan
VERSION=${VERSION:-092} VERSION=${VERSION:-093}
BUILD=${BUILD:-1} BUILD=${BUILD:-1}
TAG=${TAG:-_SBo} TAG=${TAG:-_SBo}
@ -53,46 +73,43 @@ find . \
\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
-exec chmod 644 {} \; -exec chmod 644 {} \;
# apply the patch to allow proper install on slackware as root (from hackedhead) # Apply the patch to allow proper install on Slackware as root
# tweaked a bit by rworkman to fix ananke issues too patch -p1 -i $CWD/higan-v093.patch
patch -p1 -i $CWD/higan-v092.patch
cd $PRGNAM # Fix building with QT >= 4.8.0.
moc -i -Iphoenix/qt/ -o phoenix/qt/platform.moc phoenix/qt/platform.moc.hpp 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}
CXXFLAGS="$SLKCFLAGS" \
make \
platform=x \
compiler=gcc \
prefix=/usr \
phoenix="$INTERFACE" \
profile="$PROFILE"
make install profile=$PROFILE DESTDIR=$PKG prefix=/usr # Choose whether a qt or gtk interface is built.
cd .. INTERFACE=${INTERFACE:-qt}
# Compile ananke. # Determine which mode to build higan.
cd ananke # Possible values for PROFILE: accuracy, balanced, and performance.
# Fix building with QT >= 4.8.0. PROFILE=${PROFILE:-balanced}
moc -i -Iphoenix/qt/ -o phoenix/qt/platform.moc phoenix/qt/platform.moc.hpp
make \ CXXFLAGS="$SLKCFLAGS" \
compiler=gcc \ make \
platform=x \ compiler=g++ \
phoenix="$INTERFACE" cppflags="-std=gnu++11" \
prefix=/usr \
platform=x \
phoenix="$INTERFACE" \
profile="$PROFILE"
make install DESTDIR=$PKG prefix=/usr make install DESTDIR=$PKG prefix=/usr platform=x profile=$PROFILE
cd ..
# Compile ananke (tool to import ROM game files into the higan library).
make -C ananke \
compiler=g++ \
cppflags="-std=gnu++11" \
platform=x \
phoenix="$INTERFACE" \
profile="$PROFILE"
make -C ananke install path=$PKG/usr/lib${LIBDIRSUFFIX} platform=x
# Copy shaders # Copy shaders
cp -r shaders "$PKG/usr/share/higan/profile/Video 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
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ find $PKG | xargs 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

View file

@ -1,8 +1,8 @@
PRGNAM="higan" PRGNAM="higan"
VERSION="092" VERSION="093"
HOMEPAGE="http://byuu.org/higan/" HOMEPAGE="http://byuu.org/higan/"
DOWNLOAD="http://higan.googlecode.com/files/higan_v092-source.tar.xz" DOWNLOAD="http://byuu.org/higan/release/higan_v093-source.tar.xz"
MD5SUM="ef6a6a9bc6861d26da01c2e03e6dfe9e" MD5SUM="051e794c2f86c185fd51106181a09c58"
DOWNLOAD_x86_64="" DOWNLOAD_x86_64=""
MD5SUM_x86_64="" MD5SUM_x86_64=""
REQUIRES="OpenAL" REQUIRES="OpenAL"

View file

@ -10,10 +10,10 @@ higan: higan (Nintendo multi-system emulator)
higan: higan:
higan: higan is an emulator that focuses on accuracy, debug functionality, higan: higan is an emulator that focuses on accuracy, debug functionality,
higan: and clean code, not on things that would hinder accuracy, like speed higan: and clean code, not on things that would hinder accuracy, like speed
higan: and game-specific hacks for compatibility. It supports the systems higan: and game-specific hacks for compatibility. It supports the systems
higan: Famicom (NES), Super Famicom (SNES), Game Boy, Game Boy Color, higan: Famicom (NES), Super Famicom (SNES), Game Boy, Game Boy Color, and
higan: Game Boy Advance, and Nintendo DS. It also supports the subsystems higan: Game Boy Advance. It also supports the subsystems Super Game Boy,
higan: Super Game Boy, BS-X Satellaview, and Sufami Turbo. higan: BS-X Satellaview and Sufami Turbo.
higan: higan:
higan: Homepage: http://byuu.org/higan/ higan: Homepage: http://byuu.org/higan/
higan: higan: