Merge pull request #14736 from AndersonTorres/higan

higan: 096 -> 098
This commit is contained in:
Arseniy Seroka 2016-04-17 00:26:12 +03:00
commit c316210f29
3 changed files with 39 additions and 44 deletions

View File

@ -1,26 +1,23 @@
diff -rupN higan_v095-source.orig/GNUmakefile higan_v095-source/GNUmakefile diff -rupN higan_v097-source.old/higan/GNUmakefile higan_v097-source/higan/GNUmakefile
--- higan_v095-source.orig/GNUmakefile 2015-11-04 10:28:26.173428178 +0100 --- higan_v097-source.old/higan/GNUmakefile 2016-01-24 09:21:45.822940200 +0100
+++ higan_v095-source/GNUmakefile 2015-11-04 10:28:31.752231593 +0100 +++ higan_v097-source/higan/GNUmakefile 2016-01-24 09:24:03.028722500 +0100
@@ -12,7 +12,8 @@ target := tomoko @@ -36,7 +36,7 @@ ifeq ($(platform),windows)
# console := true else ifeq ($(platform),macosx)
flags += -march=native
# compiler else ifneq ($(filter $(platform),linux bsd),)
-flags += -I. -O3 - flags += -march=native -fopenmp
+flags += -I. $(CXXFLAGS) + flags += -fopenmp
+link += $(LDFLAGS) link += -fopenmp
objects := libco link += -Wl,-export-dynamic
link += -lX11 -lXext
# profile-guided optimization mode diff -rupN higan_v097-source.old/nall/GNUmakefile higan_v097-source/nall/GNUmakefile
diff -rupN higan_v095-source.orig/icarus/GNUmakefile higan_v095-source/icarus/GNUmakefile --- higan_v097-source.old/nall/GNUmakefile 2016-01-24 09:21:46.021749600 +0100
--- higan_v095-source.orig/icarus/GNUmakefile 2015-11-04 10:28:26.186486119 +0100 +++ higan_v097-source/nall/GNUmakefile 2016-01-24 09:25:06.347100800 +0100
+++ higan_v095-source/icarus/GNUmakefile 2015-11-04 10:28:48.755059317 +0100 @@ -40,8 +40,8 @@ cflags := -x c -std=c99
@@ -1,8 +1,8 @@ objcflags := -x objective-c -std=c99
include ../nall/GNUmakefile cppflags := -x c++ -std=c++14
include ../hiro/GNUmakefile objcppflags := -x objective-c++ -std=c++14
-flags :=
-flags += -I.. -O3 -link :=
-link += +flags := $(CXXFLAGS)
+flags += -I.. $(CXXFLAGS) +link := $(LDFLAGS)
+link += $(LDFLAGS)
objects := obj/hiro.o obj/icarus.o
objects += $(if $(call streq,$(platform),windows),obj/resource.o)

View File

@ -5,18 +5,18 @@
, mesa, SDL , mesa, SDL
, libao, openal, libpulseaudio , libao, openal, libpulseaudio
, gtk, gtksourceview , gtk, gtksourceview
, profile ? "balanced" # Options: accuracy, balanced, performance
}: }:
with stdenv.lib; with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "higan-${meta.version}"; name = "higan-${version}";
sourceName = "higan_v${meta.version}-source"; version = "098";
sourceName = "higan_v${version}-source";
src = fetchurl { src = fetchurl {
urls = [ "http://download.byuu.org/${sourceName}.7z" ]; urls = [ "http://download.byuu.org/${sourceName}.7z" ];
sha256 = "0yc5gwg6dq9iwi2qk3g66wn8j2l55nhdb0311jzmdsh86zcrpvqh"; sha256 = "0qphvjfv17dbmzgb4pny2q6ln0lsgzyhalq6qyqxc3qwm4fzdjv1";
curlOpts = "--user-agent 'Mozilla/5.0'"; # the good old user-agent trick... curlOpts = "--user-agent 'Mozilla/5.0'"; # the good old user-agent trick...
}; };
@ -31,18 +31,17 @@ stdenv.mkDerivation rec {
''; '';
buildPhase = '' buildPhase = ''
make compiler=c++ profile=${profile} -C icarus make compiler=c++ -C icarus
make compiler=c++ profile=${profile} make compiler=c++ -C higan
''; '';
installPhase = '' installPhase = ''
install -dm 755 $out/bin $out/share/applications $out/share/higan $out/share/pixmaps install -dm 755 $out/bin $out/share/applications $out/share/higan $out/share/pixmaps
install -m 755 icarus/icarus $out/bin/ install -m 755 icarus/out/icarus $out/bin/
install -m 755 out/tomoko $out/bin/ install -m 755 higan/out/higan $out/bin/
(cd $out/bin; ln -Ts tomoko higan) #backwards compatibility install -m 644 higan/data/higan.desktop $out/share/applications/
install -m 644 data/higan.desktop $out/share/applications/ install -m 644 higan/data/higan.png $out/share/pixmaps/
install -m 644 data/higan.png $out/share/pixmaps/ cp --recursive --no-dereference --preserve='links' --no-preserve='ownership' higan/data/cheats.bml higan/profile/* $out/share/higan/
cp -dr --no-preserve='ownership' profile/* data/cheats.bml $out/share/higan/
''; '';
fixupPhase = '' fixupPhase = ''
@ -54,21 +53,22 @@ stdenv.mkDerivation rec {
cat <<EOF > $out/bin/higan-init.sh cat <<EOF > $out/bin/higan-init.sh
#!${stdenv.shell} #!${stdenv.shell}
cp --update --recursive $out/share/higan \$HOME/.config cp --update $out/share/higan/cheats.bml \$HOME/.config/
chmod --recursive u+w \$HOME/.config/higan cp --recursive --update $out/share/higan/*.sys \$HOME/.local/share/higan/
EOF EOF
chmod +x $out/bin/higan-init.sh chmod +x $out/bin/higan-init.sh
''; '';
meta = { meta = {
version = "096";
description = "An open-source, cycle-accurate Nintendo multi-system emulator"; description = "An open-source, cycle-accurate Nintendo multi-system emulator";
longDescription = '' longDescription = ''
Higan (formerly bsnes) is a Nintendo multi-system emulator. Higan (formerly bsnes) is a Nintendo multi-system emulator.
It currently supports the following systems: It currently supports the following systems:
Famicom; Super Famicom; Famicom; Super Famicom;
Game Boy; Game Boy Color; Game Boy Advance Game Boy; Game Boy Color; Game Boy Advance
WonderSwan; WonderSwan Color
higan also supports the following subsystems: higan also supports the following subsystems:
Super Game Boy; BS-X Satellaview; Sufami Turbo Super Game Boy; BS-X Satellaview; Sufami Turbo
''; '';
@ -82,5 +82,4 @@ stdenv.mkDerivation rec {
# #
# TODO: # TODO:
# - fix the BML and BIOS paths - maybe submitting # - fix the BML and BIOS paths - maybe submitting
# a custom patch to Higan project would not be a bad idea... # a custom patch to upstream would not be a bad idea...
# - Qt support

View File

@ -16560,7 +16560,6 @@ in
higan = callPackage ../misc/emulators/higan { higan = callPackage ../misc/emulators/higan {
inherit (gnome) gtksourceview; inherit (gnome) gtksourceview;
profile = config.higan.profile or "balanced";
}; };
misc = callPackage ../misc/misc.nix { }; misc = callPackage ../misc/misc.nix { };