commit
c316210f29
@ -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)
|
|
||||||
|
@ -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
|
|
||||||
|
@ -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 { };
|
||||||
|
Loading…
x
Reference in New Issue
Block a user