mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-16 19:50:19 +01:00
games/higan: Downgrade to version 106.
Signed-off-by: B. Watson <yalhcru@gmail.com> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
parent
58b4dbfd8c
commit
f1bed889b7
8 changed files with 130 additions and 87 deletions
|
@ -7,9 +7,6 @@ code. The emulator does not focus on things that would hinder accuracy.
|
|||
This includes speed and game-specific hacks for compatibility. As a
|
||||
result, the minimum system requirements for higan are very high.
|
||||
|
||||
Note: higan v106 is the last version that will build on Slackware 14.2.
|
||||
I will update to the latest version when 15.0 releases.
|
||||
|
||||
As of v104, higan has top-tier support for the following consoles:
|
||||
|
||||
- Nintendo Super Famicom/SNES, including add-on hardware:
|
||||
|
|
|
@ -1,3 +1,9 @@
|
|||
if [ -x /usr/bin/update-desktop-database ]; then
|
||||
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
|
||||
fi
|
||||
|
||||
if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
|
||||
if [ -x /usr/bin/gtk-update-icon-cache ]; then
|
||||
/usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
|
||||
fi
|
||||
fi
|
||||
|
|
|
@ -1,23 +1,49 @@
|
|||
From 6d0f100d25fecae89a48c76f55371730a51c10fe Mon Sep 17 00:00:00 2001
|
||||
From: Maxime Gauduin <alucryd@archlinux.org>
|
||||
Date: Wed, 18 Mar 2020 17:08:25 +0100
|
||||
Subject: [PATCH] use system flags
|
||||
diff -rupN higan_v106-source.orig/higan/GNUmakefile higan_v106-source/higan/GNUmakefile
|
||||
--- higan_v106-source.orig/higan/GNUmakefile 2017-12-27 23:12:21.263872763 +0100
|
||||
+++ higan_v106-source/higan/GNUmakefile 2017-12-27 23:12:30.243627883 +0100
|
||||
@@ -1,4 +1,4 @@
|
||||
-build := optimize
|
||||
+build := release
|
||||
include ../nall/GNUmakefile
|
||||
|
||||
---
|
||||
nall/GNUmakefile | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
binary := application
|
||||
@@ -26,7 +26,6 @@ else ifneq ($(filter $(platform),linux b
|
||||
flags += -fopenmp
|
||||
link += -fopenmp
|
||||
ifeq ($(binary),application)
|
||||
- flags += -march=native
|
||||
link += -Wl,-export-dynamic
|
||||
link += -lX11 -lXext
|
||||
else ifeq ($(binary),library)
|
||||
diff -rupN higan_v106-source.orig/icarus/GNUmakefile higan_v106-source/icarus/GNUmakefile
|
||||
--- higan_v106-source.orig/icarus/GNUmakefile 2017-12-27 23:12:21.280538976 +0100
|
||||
+++ higan_v106-source/icarus/GNUmakefile 2017-12-27 23:12:30.243627883 +0100
|
||||
@@ -1,4 +1,4 @@
|
||||
-build := optimize
|
||||
+build := release
|
||||
include ../nall/GNUmakefile
|
||||
include ../hiro/GNUmakefile
|
||||
|
||||
diff --git a/nall/GNUmakefile b/nall/GNUmakefile
|
||||
index 67fb3a15..fddec93d 100755
|
||||
--- a/nall/GNUmakefile
|
||||
+++ b/nall/GNUmakefile
|
||||
@@ -127,7 +127,8 @@ endif
|
||||
diff -rupN higan_v106-source.orig/nall/GNUmakefile higan_v106-source/nall/GNUmakefile
|
||||
--- higan_v106-source.orig/nall/GNUmakefile 2017-12-27 23:12:21.283872217 +0100
|
||||
+++ higan_v106-source/nall/GNUmakefile 2017-12-27 23:12:44.326577547 +0100
|
||||
@@ -40,8 +40,8 @@ cflags := -x c -std=c11
|
||||
objcflags := -x objective-c -std=c11
|
||||
cppflags := -x c++ -std=c++14
|
||||
objcppflags := -x objective-c++ -std=c++14
|
||||
-flags :=
|
||||
-link :=
|
||||
+flags := $(CXXFLAGS)
|
||||
+link := $(LDFLAGS)
|
||||
|
||||
# linux settings
|
||||
ifeq ($(platform),linux)
|
||||
- options += -ldl
|
||||
+ flags += ${CXXFLAGS}
|
||||
+ options += ${LDFLAGS} -ldl
|
||||
# compiler detection
|
||||
ifeq ($(compiler),)
|
||||
@@ -120,7 +120,7 @@ ifeq ($(threaded),true)
|
||||
endif
|
||||
|
||||
# bsd settings
|
||||
# paths
|
||||
-prefix := $(HOME)/.local
|
||||
+prefix := /usr
|
||||
|
||||
# function rwildcard(directory, pattern)
|
||||
rwildcard = \
|
||||
|
|
|
@ -1,43 +1,26 @@
|
|||
kFrom c0495ce121ab0c3eeffdf08614e18bd4f0c455f2 Mon Sep 17 00:00:00 2001
|
||||
From: Maxime Gauduin <alucryd@archlinux.org>
|
||||
Date: Wed, 18 Mar 2020 12:19:31 +0100
|
||||
Subject: [PATCH] use more sensible paths
|
||||
|
||||
---
|
||||
higan/target-higan/higan.cpp | 5 ++---
|
||||
icarus/icarus.cpp | 3 +--
|
||||
2 files changed, 3 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/higan/target-higan/higan.cpp b/higan/target-higan/higan.cpp
|
||||
index 1ce9b991..7d1ae122 100644
|
||||
--- a/higan/target-higan/higan.cpp
|
||||
+++ b/higan/target-higan/higan.cpp
|
||||
@@ -43,11 +43,10 @@ auto nall::main(Arguments arguments) -> void {
|
||||
Path::data = document["data"].text();
|
||||
}
|
||||
if(!directory::exists(Path::templates)) {
|
||||
- Path::templates = {Path::userData(), "higan/"};
|
||||
- directory::create(Path::templates);
|
||||
+ Path::templates = {Path::sharedData(), "higan/Templates/"};
|
||||
}
|
||||
if(!directory::exists(Path::data)) {
|
||||
- Path::data = {Path::user(), "higan/"};
|
||||
+ Path::data = {Path::userData(), "higan/Systems/"};
|
||||
directory::create(Path::data);
|
||||
}
|
||||
file::write({Path::settings, "paths.bml"}, string{
|
||||
diff --git a/icarus/icarus.cpp b/icarus/icarus.cpp
|
||||
index 95435f38..a46744e5 100644
|
||||
--- a/icarus/icarus.cpp
|
||||
+++ b/icarus/icarus.cpp
|
||||
@@ -8,8 +8,7 @@ auto locate(string name) -> string {
|
||||
string location = {Path::program(), name};
|
||||
diff -rupN higan_v106-source.orig/higan/target-tomoko/tomoko.cpp higan_v106-source/higan/target-tomoko/tomoko.cpp
|
||||
--- higan_v106-source.orig/higan/target-tomoko/tomoko.cpp 2017-12-27 23:48:31.103245742 +0100
|
||||
+++ higan_v106-source/higan/target-tomoko/tomoko.cpp 2017-12-27 23:49:19.728586352 +0100
|
||||
@@ -11,6 +11,9 @@ auto locate(string name) -> string {
|
||||
location = {Path::config(), "higan/", name};
|
||||
if(inode::exists(location)) return location;
|
||||
|
||||
- directory::create({Path::userData(), "icarus/"});
|
||||
- return {Path::userData(), "icarus/", name};
|
||||
+ return {Path::sharedData(), "icarus/", name};
|
||||
+ location = {Path::shared(), "higan/", name};
|
||||
+ if(inode::exists(location)) return location;
|
||||
+
|
||||
directory::create({Path::local(), "higan/"});
|
||||
return {Path::local(), "higan/", name};
|
||||
}
|
||||
diff -rupN higan_v106-source.orig/icarus/icarus.cpp higan_v106-source/icarus/icarus.cpp
|
||||
--- higan_v106-source.orig/icarus/icarus.cpp 2017-12-27 23:48:31.109912227 +0100
|
||||
+++ higan_v106-source/icarus/icarus.cpp 2017-12-27 23:49:02.672384569 +0100
|
||||
@@ -11,6 +11,9 @@ auto locate(string name) -> string {
|
||||
location = {Path::config(), "icarus/", name};
|
||||
if(inode::exists(location)) return location;
|
||||
|
||||
auto operator+=(string& lhs, const string& rhs) -> string& {
|
||||
|
||||
+ location = {Path::shared(), "icarus/", name};
|
||||
+ if(inode::exists(location)) return location;
|
||||
+
|
||||
directory::create({Path::local(), "icarus/"});
|
||||
return {Path::local(), "icarus/", name};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/bash
|
||||
#!/bin/sh
|
||||
|
||||
# Slackware build script for higan
|
||||
|
||||
|
@ -27,6 +27,15 @@
|
|||
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
# 20211101 bkw: v106 BUILD=3
|
||||
# - revert to v106! someone other than me upgraded this for higan
|
||||
# v110, but it turns out that v110 wouldn't actually play any games
|
||||
# (UI would start up, but no way to map controllers). unless/until I
|
||||
# straighten this out, this will remain at v106, which I've actually
|
||||
# successfully played games with.
|
||||
# - new-style icons.
|
||||
# - better .desktop files.
|
||||
|
||||
# 20200907 bkw: upstream source moved and changed to .tar.gz, get
|
||||
# rid of p7zip dependency. BUILD=2.
|
||||
# 20200529 bkw: add "can't update version" note to README.
|
||||
|
@ -34,7 +43,7 @@
|
|||
# This update would not have happened without assistance and moral support
|
||||
# from Yossi Ne'eman. Thanks!
|
||||
# - Take over maintenance.
|
||||
# - Update for v110.
|
||||
# - Update for v106.
|
||||
# - Use the gtk frontend, not the *broken* qt one.
|
||||
# - Make OpenAL dep optional & autodetected (and OPENAL=no to force-disable).
|
||||
# - Add OSS (default no) and PULSE (default yes) env vars.
|
||||
|
@ -46,13 +55,10 @@
|
|||
# - Add man pages. Note to SBo admins: please don't remove my *.rst man
|
||||
# page sources!
|
||||
|
||||
cd $(dirname $0) ; CWD=$(pwd)
|
||||
|
||||
PRGNAM=higan
|
||||
VERSION=${VERSION:-110}
|
||||
BUILD=${BUILD:-1}
|
||||
VERSION=${VERSION:-106}
|
||||
BUILD=${BUILD:-3}
|
||||
TAG=${TAG:-_SBo}
|
||||
PKGTYPE=${PKGTYPE:-tgz}
|
||||
|
||||
if [ -z "$ARCH" ]; then
|
||||
case "$( uname -m )" in
|
||||
|
@ -62,14 +68,12 @@ if [ -z "$ARCH" ]; then
|
|||
esac
|
||||
fi
|
||||
|
||||
# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
|
||||
# the name of the created package would be, and then exit. This information
|
||||
# could be useful to other scripts.
|
||||
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
|
||||
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
CWD=$(pwd)
|
||||
TMP=${TMP:-/tmp/SBo}
|
||||
PKG=$TMP/package-$PRGNAM
|
||||
OUTPUT=${OUTPUT:-/tmp}
|
||||
|
@ -112,9 +116,7 @@ patch -p1 -i $CWD/higan-paths.diff
|
|||
|
||||
# 20181212 bkw: audio system stuff. Upstream doesn't give us a way to
|
||||
# disable these on the make command line, but hacking this file works:
|
||||
HACKFILE=higan/target-higan/GNUmakefile
|
||||
|
||||
sed 's|/usr/local/lib/qt5/bin/moc|moc-qt5|' -i hiro/GNUmakefile
|
||||
HACKFILE=higan/target-tomoko/GNUmakefile
|
||||
|
||||
# Who actually uses OSS?
|
||||
if [ "${OSS:-no}" = "no" ]; then
|
||||
|
@ -142,13 +144,13 @@ CXXFLAGS="$SLKCFLAGS" \
|
|||
make -C icarus \
|
||||
prefix=/usr \
|
||||
platform=linux \
|
||||
hiro=qt5
|
||||
hiro=gtk
|
||||
|
||||
CXXFLAGS="$SLKCFLAGS" \
|
||||
make -C $PRGNAM \
|
||||
prefix=/usr \
|
||||
platform=linux \
|
||||
hiro=qt5
|
||||
hiro=gtk
|
||||
|
||||
mkdir -p $PKG/usr/games \
|
||||
$PKG/usr/share/applications \
|
||||
|
@ -156,9 +158,20 @@ mkdir -p $PKG/usr/games \
|
|||
$PKG/usr/share/pixmaps
|
||||
|
||||
install -s -m 755 $PRGNAM/out/$PRGNAM icarus/out/icarus $PKG/usr/games/
|
||||
install -m 644 $PRGNAM/target-higan/resource/$PRGNAM.desktop $PKG/usr/share/applications/
|
||||
install -m 644 $PRGNAM/target-higan/resource/$PRGNAM.png $PKG/usr/share/pixmaps/
|
||||
cp -dr $PRGNAM/System/* $PKG/usr/share/$PRGNAM/
|
||||
cp -dr $PRGNAM/systems/* $PKG/usr/share/$PRGNAM/
|
||||
|
||||
for px in 16 32 48 64 128; do
|
||||
size=${px}x${px}
|
||||
dir=$PKG/usr/share/icons/hicolor/$size/apps
|
||||
mkdir -p $dir
|
||||
convert -resize $size $PRGNAM/data/$PRGNAM.png $dir/$PRGNAM.png
|
||||
convert -resize $size icarus/data/icarus.png $dir/icarus.png
|
||||
done
|
||||
|
||||
for i in $PRGNAM icarus; do
|
||||
ln -s ../icons/hicolor/48x48/apps/$i.png $PKG/usr/share/pixmaps/$i.png
|
||||
cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
|
||||
done
|
||||
|
||||
# Man pages by B. Watson. higan.6 is basically the higan-cli.md from the
|
||||
# git repo, reformatted as RST & converted to a man page. icarus.6 was
|
||||
|
@ -168,8 +181,10 @@ for i in $PRGNAM icarus; do
|
|||
gzip -9c < $CWD/$i.6 > $PKG/usr/man/man6/$i.6.gz
|
||||
done
|
||||
|
||||
# Sadly there are no docs in v106. I found a docs/ dir in git, but it's not
|
||||
# in the release 7z archive. Apparently this is because the git archive is
|
||||
# somehow unofficial...?
|
||||
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cp *.md $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
||||
|
||||
mkdir -p $PKG/install
|
||||
|
@ -177,4 +192,4 @@ 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
|
||||
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
|
||||
|
|
8
games/higan/higan.desktop
Normal file
8
games/higan/higan.desktop
Normal file
|
@ -0,0 +1,8 @@
|
|||
[Desktop Entry]
|
||||
Name=Higan
|
||||
Comment=Multi-Console Emulator
|
||||
Exec=/usr/games/higan
|
||||
Icon=higan
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=Game;Emulator;
|
|
@ -1,10 +1,10 @@
|
|||
PRGNAM="higan"
|
||||
VERSION="110"
|
||||
HOMEPAGE="https://byuu.org/emulation/higan/"
|
||||
DOWNLOAD="https://github.com/higan-emu/higan/archive/v110/higan-110.tar.gz"
|
||||
MD5SUM="e2e2073f93b522365579108442af9de4"
|
||||
VERSION="106"
|
||||
HOMEPAGE="https://github.com/higan-emu/higan/"
|
||||
DOWNLOAD="https://github.com/higan-emu/higan/archive/v106/higan-106.tar.gz"
|
||||
MD5SUM="4a68c6b9671089b4a7fde0b234531d61"
|
||||
DOWNLOAD_x86_64=""
|
||||
MD5SUM_x86_64=""
|
||||
REQUIRES=""
|
||||
REQUIRES="gtksourceview"
|
||||
MAINTAINER="B. Watson"
|
||||
EMAIL="yalhcru@gmail.com"
|
||||
|
|
8
games/higan/icarus.desktop
Normal file
8
games/higan/icarus.desktop
Normal file
|
@ -0,0 +1,8 @@
|
|||
[Desktop Entry]
|
||||
Name=Icarus
|
||||
Comment=Higan Database Tool
|
||||
Exec=/usr/games/icarus
|
||||
Icon=icarus
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=Game;Emulator;
|
Loading…
Reference in a new issue