added community/higan

This commit is contained in:
Kevin Mihelich 2016-07-23 17:49:27 +00:00
parent 9d1cb70547
commit fe45d9e744
4 changed files with 119 additions and 0 deletions

54
community/higan/PKGBUILD Normal file
View file

@ -0,0 +1,54 @@
# $Id$
# Maintainer: Maxime Gauduin <alucryd@archlinux.org>
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
# - patch for AArch64
pkgname=higan
pkgver=100
pkgrel=1
pkgdesc='Nintendo multi-system emulator'
arch=('i686' 'x86_64')
url='http://byuu.org/'
license=('GPL3')
depends=('alsa-lib' 'cairo' 'gcc-libs' 'gdk-pixbuf2' 'glib2' 'glibc' 'gtk2'
'gtksourceview2' 'libao' 'libgl' 'libpulse' 'libx11' 'libxext' 'libxv'
'openal' 'pango' 'sdl'
'libudev.so')
makedepends=('mesa')
conflicts=('higan-gtk' 'higan-qt')
replaces=('higan-gtk' 'higan-qt')
install='higan.install'
source=("http://download.byuu.org/higan_v${pkgver}-source.7z"
'higan-flags.patch'
'sjlj-declare-xopen-source.patch')
sha256sums=('375ff95adac3befff7ca6fc75cca692c033ba7eb136d42c2ca4b78b37b03e2de'
'6ee3489a3cf3e8d09beaa5c1f809824593aa08b61dc9a8c9ddc12a09c89ae6cb'
'2c5af5006f0438a7d7bfe62aa0c540b9e6ee526d45dfcafd65bb8598d50d83d7')
prepare() {
cd higan_v${pkgver}-source
patch -Np1 -i ../higan-flags.patch
patch -Np1 -i ../sjlj-declare-xopen-source.patch
}
build() {
cd higan_v${pkgver}-source
make -C icarus
make -C higan
}
package() {
cd higan_v${pkgver}-source
install -dm 755 "${pkgdir}"/usr/{bin,share/{applications,higan,pixmaps}}
install -m 755 icarus/out/icarus "${pkgdir}"/usr/bin/
install -m 755 higan/out/higan "${pkgdir}"/usr/bin/
install -m 644 higan/data/higan.desktop "${pkgdir}"/usr/share/applications/
install -m 644 higan/data/higan.png "${pkgdir}"/usr/share/pixmaps/
cp -dr --no-preserve='ownership' higan/systems/* higan/data/cheats.bml "${pkgdir}"/usr/share/higan/
}
# vim: ts=2 sw=2 et:

View file

@ -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

View file

@ -0,0 +1,12 @@
post_install() {
cat << EOF
higan needs the system files located in /usr/share/higan to be present inside
your ~/Emulation directory, please copy them over before using the emulator.
EOF
}
post_upgrade() {
post_install
}
# vim: ts=2 sw=2 et:

View file

@ -0,0 +1,15 @@
Description: Declare that sjlj.c requires X/Open 7
Things from the X/Open 7 standard are used. This has to
be declared when building with -std=c99.
Author: Tobias Hansen <thansen@debian.org>
--- a/libco/sjlj.c
+++ b/libco/sjlj.c
@@ -12,6 +12,7 @@
*/
#define LIBCO_C
+#define _XOPEN_SOURCE 700
#include "libco.h"
#include <stdlib.h>