Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 10 Apr 2017 13:17:17 +0000 (UTC)
From:      Dmitry Marakasov <amdmi3@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r438163 - in head/emulators/higan: . files
Message-ID:  <201704101317.v3ADHHNW042569@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: amdmi3
Date: Mon Apr 10 13:17:17 2017
New Revision: 438163
URL: https://svnweb.freebsd.org/changeset/ports/438163

Log:
  - Update to 102
  
  PR:		211855
  Submitted by:	cyberbotx@cyberbotx.com (maintainer)

Added:
  head/emulators/higan/files/patch-higan_target-tomoko_GNUmakefile   (contents, props changed)
  head/emulators/higan/files/patch-higan_target-tomoko_presentation_presentation.cpp   (contents, props changed)
  head/emulators/higan/files/patch-higan_target-tomoko_program_medium.cpp   (contents, props changed)
  head/emulators/higan/files/patch-higan_target-tomoko_tomoko.cpp   (contents, props changed)
  head/emulators/higan/files/patch-higan_target-tomoko_tomoko.hpp   (contents, props changed)
  head/emulators/higan/files/patch-higan_target-tomoko_tools_cheat-database.cpp   (contents, props changed)
  head/emulators/higan/files/patch-icarus_core_core.cpp   (contents, props changed)
  head/emulators/higan/files/patch-icarus_icarus.cpp   (contents, props changed)
Deleted:
  head/emulators/higan/files/patch-nall-platform.hpp
  head/emulators/higan/files/patch-ruby__video__glx.cpp
  head/emulators/higan/files/patch-target-ethos-Makefile
  head/emulators/higan/files/patch-target-ethos_general_presentation.cpp
  head/emulators/higan/files/patch-target-ethos_utility_utility.cpp
Modified:
  head/emulators/higan/Makefile
  head/emulators/higan/distinfo
  head/emulators/higan/pkg-plist

Modified: head/emulators/higan/Makefile
==============================================================================
--- head/emulators/higan/Makefile	Mon Apr 10 13:12:50 2017	(r438162)
+++ head/emulators/higan/Makefile	Mon Apr 10 13:17:17 2017	(r438163)
@@ -2,59 +2,49 @@
 # $FreeBSD$
 
 PORTNAME=	higan
-PORTVERSION=	0.94
-PORTREVISION=	5
+PORTVERSION=	102
 CATEGORIES=	emulators
-MASTER_SITES=	http://byuu.org/files/ \
+MASTER_SITES=	http://download.byuu.org/ \
 		http://www.cyberbotx.com/higan/
-DISTNAME=	${PORTNAME}_v${PORTVERSION:S/.//}-source
+DISTNAME=	${PORTNAME}_v${PORTVERSION}-source
 
 MAINTAINER=	cyberbotx@cyberbotx.com
 COMMENT=	Nintendo multi-system emulator
 
-USES=		compiler:c++11-lib gmake pkgconfig tar:xz
+USES=		7z:p7zip compiler:c++14-lang gmake pkgconfig
 USE_LDCONFIG=	yes
+USE_XORG=	x11 xext
+USE_CSTD=	c99
+USE_CXXSTD=	c++14
+USE_GCC=	yes
+MAKEFILE=	GNUmakefile
 
 ONLY_FOR_ARCHS=	i386 amd64
-MAKE_ENV+=	compiler="${CXX}" cflags="-x c -std=c99 ${CFLAGS}" \
-		cppflags="-x c++ -std=c++11 ${CXXFLAGS}"
+MAKE_ENV+=	compiler="${CXX}"
 
 OPTIONS_DEFINE=		DEBUG
-OPTIONS_SINGLE=		PROFILE GUI
-OPTIONS_SINGLE_PROFILE=	ACCURACY BALANCED PERFORMANCE
+OPTIONS_SINGLE=		GUI
 OPTIONS_SINGLE_GUI=	GTK2 QT4
 OPTIONS_MULTI=		VIDEO SOUND INPUT
 OPTIONS_MULTI_VIDEO=	GLX SDL XSHM XV
 OPTIONS_MULTI_SOUND=	AO OPENAL OSS PULSEAUDIO
 OPTIONS_MULTI_INPUT=	INPUT_SDL INPUT_X
-OPTIONS_DEFAULT=	BALANCED GTK2 GLX XSHM XV SDL \
+OPTIONS_DEFAULT=	GTK2 GLX XSHM XV SDL \
 			OSS INPUT_SDL INPUT_X
 
-ACCURACY_DESC=		Use accuracy profile
-BALANCED_DESC=		Use balanced profile
-PERFORMANCE_DESC=	Use performance profile
-GTK2_DESC=		Build with GTK+2 GUI
-QT4_DESC=		Build with QT4 GUI
-GLX_DESC=		Build GLX video driver
-SDL_DESC=		Build SDL video driver
 XSHM_DESC=		Build XShm video driver
 XV_DESC=		Build Xv video driver
-AO_DESC=		Build AO sound driver
-OPENAL_DESC=		Build OpenAL sound driver
-OSS_DESC=		Build OSS sound driver
-PULSEAUDIO_DESC=	Build Pulseaudio sound driver
 INPUT_SDL_DESC=		Build SDL input driver
 INPUT_X_DESC=		Build X input driver
 
-ACCURACY_MAKE_ENV=	profile="accuracy"
-BALANCED_MAKE_ENV=	profile="balanced"
-PERFORMANCE_MAKE_ENV=	profile="performance"
+GTK2_LIB_DEPENDS=	libfontconfig.so:x11-fonts/fontconfig \
+			libfreetype.so:print/freetype2
+GTK2_MAKE_ENV=	hiro="gtk"
+GTK2_USE=	GNOME=cairo,gdkpixbuf2,gtk20,gtksourceview2
+GTK2_USES=	gettext
 
-GTK2_USE=	GNOME=gtk20
-GTK2_MAKE_ENV=	phoenix="gtk"
-
-QT4_USE=	QT4=gui,moc_build
-QT4_MAKE_ENV=	phoenix="qt"
+QT4_MAKE_ENV=	hiro="qt"
+QT4_USE=	QT4=corelib,gui,moc_build
 
 GLX_USE=	GL=gl
 GLX_VARS=	VIDEO_DRIVER+=video.glx
@@ -89,33 +79,27 @@ post-patch:
 		-e 's|%%VIDEO%%|${VIDEO_DRIVER}|' \
 		-e 's|%%AUDIO%%|${AUDIO_DRIVER}|' \
 		-e 's|%%INPUT%%|${INPUT_DRIVER}|' \
-		${WRKSRC}/target-ethos/Makefile
+		${WRKSRC}/higan/target-tomoko/GNUmakefile
 	${REINPLACE_CMD} -e 's|/usr/share/|${PREFIX}/share/|' \
-		${WRKSRC}/nall/string/platform.hpp
+		${WRKSRC}/nall/path.hpp
 
 post-patch-DEBUG-on:
 	${REINPLACE_CMD} -e 's|-O3|-g|g' \
-		${WRKSRC}/ananke/Makefile \
-		${WRKSRC}/Makefile
-	${REINPLACE_CMD} -e 's|:= -s|:= #|g' \
-		${WRKSRC}/Makefile
-
-pre-build-QT4-on:
-	(cd ${WRKSRC}/phoenix/qt && ${MOC} -i -o platform.moc platform.moc.hpp)
+		${WRKSRC}/higan/GNUmakefile \
+		${WRKSRC}/icarus/GNUmakefile
 
 do-build:
-.for d in . ananke
-	(cd ${WRKSRC}/${d} && ${MAKE_CMD} ${MAKE_ENV})
+.for d in higan icarus
+	@${DO_MAKE_BUILD} ${ALL_TARGET} -C${WRKSRC}/${d}
 .endfor
 
 do-install:
-	${INSTALL_LIB} ${WRKSRC}/ananke/libananke.so ${STAGEDIR}${PREFIX}/lib/libananke.so.1
-	${LN} -sf libananke.so.1 ${STAGEDIR}${PREFIX}/lib/libananke.so
-	${INSTALL_PROGRAM} ${WRKSRC}/out/higan ${STAGEDIR}${PREFIX}/bin/
-	${INSTALL_DATA} ${WRKSRC}/data/higan.png ${STAGEDIR}${PREFIX}/share/pixmaps/
-	${INSTALL_DATA} ${WRKSRC}/data/higan.desktop ${STAGEDIR}${PREFIX}/share/applications/
-	${MKDIR} ${STAGEDIR}${DATADIR}/shaders
-	(cd ${WRKSRC}/profile && ${COPYTREE_SHARE} \* ${STAGEDIR}${DATADIR}/)
-	(cd ${WRKSRC}/shaders && ${COPYTREE_SHARE} \*.shader ${STAGEDIR}${DATADIR}/shaders/)
+	${INSTALL_PROGRAM} ${WRKSRC}/higan/out/higan ${STAGEDIR}${PREFIX}/bin/
+	${INSTALL_PROGRAM} ${WRKSRC}/icarus/out/icarus ${STAGEDIR}${PREFIX}/bin/
+	${INSTALL_DATA} ${WRKSRC}/higan/data/higan.png ${STAGEDIR}${PREFIX}/share/pixmaps/
+	${INSTALL_DATA} ${WRKSRC}/higan/data/higan.desktop ${STAGEDIR}${PREFIX}/share/applications/
+	(cd ${WRKSRC}/higan/systems && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}/)
+	${INSTALL_DATA} ${WRKSRC}/higan/data/cheats.bml ${STAGEDIR}${DATADIR}/
+	(cd ${WRKSRC}/icarus/Database && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/share/icarus/Database/)
 
 .include <bsd.port.mk>

Modified: head/emulators/higan/distinfo
==============================================================================
--- head/emulators/higan/distinfo	Mon Apr 10 13:12:50 2017	(r438162)
+++ head/emulators/higan/distinfo	Mon Apr 10 13:17:17 2017	(r438163)
@@ -1,2 +1,3 @@
-SHA256 (higan_v094-source.tar.xz) = 5e149df9d50c1066eb97c0d66665428d75304da782bba5a87078b87fc311151b
-SIZE (higan_v094-source.tar.xz) = 882732
+TIMESTAMP = 1489861177
+SHA256 (higan_v102-source.7z) = 52dadcf2ec5cfab0952e2948cc8acb4883b3996458bce4ecb3995830bb1699f1
+SIZE (higan_v102-source.7z) = 1246258

Added: head/emulators/higan/files/patch-higan_target-tomoko_GNUmakefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/higan/files/patch-higan_target-tomoko_GNUmakefile	Mon Apr 10 13:17:17 2017	(r438163)
@@ -0,0 +1,15 @@
+--- higan/target-tomoko/GNUmakefile.orig	2016-01-14 03:20:56 UTC
++++ higan/target-tomoko/GNUmakefile
+@@ -27,9 +27,9 @@ else ifeq ($(platform),linux)
+   ruby += audio.alsa audio.openal audio.oss audio.pulseaudio audio.pulseaudiosimple audio.ao
+   ruby += input.udev input.sdl input.xlib
+ else ifeq ($(platform),bsd)
+-  ruby += video.glx video.xv video.xshm video.sdl
+-  ruby += audio.openal audio.oss
+-  ruby += input.sdl input.xlib
++  ruby += %%VIDEO%%
++  ruby += %%AUDIO%%
++  ruby += %%INPUT%%
+ endif
+ 
+ # ruby

Added: head/emulators/higan/files/patch-higan_target-tomoko_presentation_presentation.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/higan/files/patch-higan_target-tomoko_presentation_presentation.cpp	Mon Apr 10 13:17:17 2017	(r438163)
@@ -0,0 +1,11 @@
+--- higan/target-tomoko/presentation/presentation.cpp.orig	2017-01-13 17:52:31 UTC
++++ higan/target-tomoko/presentation/presentation.cpp
+@@ -278,7 +278,7 @@ auto Presentation::toggleFullScreen() ->
+ }
+ 
+ auto Presentation::loadShaders() -> void {
+-  auto pathname = locate("Video Shaders/");
++  auto pathname = locateShared("Video Shaders/");
+ 
+   if(settings["Video/Driver"].text() == "OpenGL") {
+     for(auto shader : directory::folders(pathname, "*.shader")) {

Added: head/emulators/higan/files/patch-higan_target-tomoko_program_medium.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/higan/files/patch-higan_target-tomoko_program_medium.cpp	Mon Apr 10 13:17:17 2017	(r438163)
@@ -0,0 +1,11 @@
+--- higan/target-tomoko/program/medium.cpp.orig	2017-01-13 10:43:46 UTC
++++ higan/target-tomoko/program/medium.cpp
+@@ -17,7 +17,7 @@ auto Program::loadMedium() -> void {
+ auto Program::loadMedium(Emulator::Interface& interface, const Emulator::Interface::Medium& medium) -> void {
+   unloadMedium();
+ 
+-  mediumPaths.append(locate({medium.name, ".sys/"}));
++  mediumPaths.append(locateShared({medium.name, ".sys/"}));
+ 
+   Emulator::audio.reset(2, audio->get(Audio::Frequency).get<uint>(44100));
+   inputManager->bind(emulator = &interface);

Added: head/emulators/higan/files/patch-higan_target-tomoko_tomoko.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/higan/files/patch-higan_target-tomoko_tomoko.cpp	Mon Apr 10 13:17:17 2017	(r438163)
@@ -0,0 +1,23 @@
+--- higan/target-tomoko/tomoko.cpp.orig	2016-07-01 08:21:27 UTC
++++ higan/target-tomoko/tomoko.cpp
+@@ -4,6 +4,20 @@ unique_pointer<Audio> audio;
+ unique_pointer<Input> input;
+ Emulator::Interface* emulator = nullptr;
+ 
++auto locateShared(string name) -> string {
++  string location = {Path::program(), name};
++  if(inode::exists(location)) return location;
++
++  location = {Path::shared(), "higan/", name};
++  if(inode::exists(location)) return location;
++
++  location = {Path::config(), "higan/", name};
++  if(inode::exists(location)) return location;
++
++  directory::create({Path::local(), "higan/"});
++  return {Path::local(), "higan/", name};
++}
++
+ auto locate(string name) -> string {
+   string location = {Path::program(), name};
+   if(inode::exists(location)) return location;

Added: head/emulators/higan/files/patch-higan_target-tomoko_tomoko.hpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/higan/files/patch-higan_target-tomoko_tomoko.hpp	Mon Apr 10 13:17:17 2017	(r438163)
@@ -0,0 +1,8 @@
+--- higan/target-tomoko/tomoko.hpp.orig	2017-01-11 11:35:22 UTC
++++ higan/target-tomoko/tomoko.hpp
+@@ -18,4 +18,5 @@ extern Emulator::Interface* emulator;
+ #include "tools/tools.hpp"
+ #include "presentation/presentation.hpp"
+ 
++auto locateShared(string name) -> string;
+ auto locate(string name) -> string;

Added: head/emulators/higan/files/patch-higan_target-tomoko_tools_cheat-database.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/higan/files/patch-higan_target-tomoko_tools_cheat-database.cpp	Mon Apr 10 13:17:17 2017	(r438163)
@@ -0,0 +1,11 @@
+--- higan/target-tomoko/tools/cheat-database.cpp.orig	2016-05-03 22:40:39 UTC
++++ higan/target-tomoko/tools/cheat-database.cpp
+@@ -18,7 +18,7 @@ auto CheatDatabase::findCodes() -> void 
+   if(!emulator) return;
+   auto sha256 = emulator->sha256();
+ 
+-  auto contents = string::read(locate("cheats.bml"));
++  auto contents = string::read(locateShared("cheats.bml"));
+   auto document = BML::unserialize(contents);
+ 
+   for(auto cartridge : document.find("cartridge")) {

Added: head/emulators/higan/files/patch-icarus_core_core.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/higan/files/patch-icarus_core_core.cpp	Mon Apr 10 13:17:17 2017	(r438163)
@@ -0,0 +1,33 @@
+--- icarus/core/core.cpp.orig	2017-01-11 13:27:39 UTC
++++ icarus/core/core.cpp
+@@ -1,17 +1,17 @@
+ Icarus::Icarus() {
+-  database.famicom = BML::unserialize(string::read(locate("Database/Famicom.bml")));
+-  database.superFamicom = BML::unserialize(string::read(locate("Database/Super Famicom.bml")));
+-  database.masterSystem = BML::unserialize(string::read(locate("Database/Master System.bml")));
+-  database.megaDrive = BML::unserialize(string::read(locate("Database/Mega Drive.bml")));
+-  database.pcEngine = BML::unserialize(string::read(locate("Database/PC Engine.bml")));
+-  database.gameBoy = BML::unserialize(string::read(locate("Database/Game Boy.bml")));
+-  database.gameBoyColor = BML::unserialize(string::read(locate("Database/Game Boy Color.bml")));
+-  database.gameBoyAdvance = BML::unserialize(string::read(locate("Database/Game Boy Advance.bml")));
+-  database.gameGear = BML::unserialize(string::read(locate("Database/Game Gear.bml")));
+-  database.wonderSwan = BML::unserialize(string::read(locate("Database/WonderSwan.bml")));
+-  database.wonderSwanColor = BML::unserialize(string::read(locate("Database/WonderSwan Color.bml")));
+-  database.bsMemory = BML::unserialize(string::read(locate("Database/BS Memory.bml")));
+-  database.sufamiTurbo = BML::unserialize(string::read(locate("Database/Sufami Turbo.bml")));
++  database.famicom = BML::unserialize(string::read(locateShared("Database/Famicom.bml")));
++  database.superFamicom = BML::unserialize(string::read(locateShared("Database/Super Famicom.bml")));
++  database.masterSystem = BML::unserialize(string::read(locateShared("Database/Master System.bml")));
++  database.megaDrive = BML::unserialize(string::read(locateShared("Database/Mega Drive.bml")));
++  database.pcEngine = BML::unserialize(string::read(locateShared("Database/PC Engine.bml")));
++  database.gameBoy = BML::unserialize(string::read(locateShared("Database/Game Boy.bml")));
++  database.gameBoyColor = BML::unserialize(string::read(locateShared("Database/Game Boy Color.bml")));
++  database.gameBoyAdvance = BML::unserialize(string::read(locateShared("Database/Game Boy Advance.bml")));
++  database.gameGear = BML::unserialize(string::read(locateShared("Database/Game Gear.bml")));
++  database.wonderSwan = BML::unserialize(string::read(locateShared("Database/WonderSwan.bml")));
++  database.wonderSwanColor = BML::unserialize(string::read(locateShared("Database/WonderSwan Color.bml")));
++  database.bsMemory = BML::unserialize(string::read(locateShared("Database/BS Memory.bml")));
++  database.sufamiTurbo = BML::unserialize(string::read(locateShared("Database/Sufami Turbo.bml")));
+ }
+ 
+ auto Icarus::error() const -> string {

Added: head/emulators/higan/files/patch-icarus_icarus.cpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/higan/files/patch-icarus_icarus.cpp	Mon Apr 10 13:17:17 2017	(r438163)
@@ -0,0 +1,23 @@
+--- icarus/icarus.cpp.orig	2017-01-11 13:07:07 UTC
++++ icarus/icarus.cpp
+@@ -4,6 +4,20 @@ using namespace nall;
+ #include <hiro/hiro.hpp>
+ using namespace hiro;
+ 
++auto locateShared(string name) -> string {
++  string location = {Path::program(), name};
++  if(inode::exists(location)) return location;
++
++  location = {Path::shared(), "icarus/", name}; 
++  if(inode::exists(location)) return location;
++
++  location = {Path::config(), "icarus/", name};
++  if(inode::exists(location)) return location;
++
++  directory::create({Path::local(), "icarus/"});
++  return {Path::local(), "icarus/", name};
++}
++
+ auto locate(string name) -> string {
+   string location = {Path::program(), name};
+   if(inode::exists(location)) return location;

Modified: head/emulators/higan/pkg-plist
==============================================================================
--- head/emulators/higan/pkg-plist	Mon Apr 10 13:12:50 2017	(r438162)
+++ head/emulators/higan/pkg-plist	Mon Apr 10 13:17:17 2017	(r438163)
@@ -1,6 +1,5 @@
 bin/higan
-lib/libananke.so.1
-lib/libananke.so
+bin/icarus
 share/applications/higan.desktop
 %%DATADIR%%/Famicom.sys/manifest.bml
 %%DATADIR%%/Game Boy Advance.sys/manifest.bml
@@ -8,12 +7,14 @@ share/applications/higan.desktop
 %%DATADIR%%/Game Boy Color.sys/manifest.bml
 %%DATADIR%%/Game Boy.sys/boot.rom
 %%DATADIR%%/Game Boy.sys/manifest.bml
+%%DATADIR%%/Game Gear.sys/manifest.bml
+%%DATADIR%%/Master System.sys/manifest.bml
+%%DATADIR%%/Mega Drive.sys/manifest.bml
+%%DATADIR%%/PC Engine.sys/manifest.bml
 %%DATADIR%%/Super Famicom.sys/ipl.rom
 %%DATADIR%%/Super Famicom.sys/manifest.bml
-%%DATADIR%%/shaders/Curvature.shader/curvature.fs
-%%DATADIR%%/shaders/Curvature.shader/manifest.bml
-%%DATADIR%%/shaders/Edge Detection.shader/edge-detection.fs
-%%DATADIR%%/shaders/Edge Detection.shader/manifest.bml
-%%DATADIR%%/shaders/Scanline.shader/manifest.bml
-%%DATADIR%%/shaders/Scanline.shader/scanline.fs
+%%DATADIR%%/WonderSwan Color.sys/manifest.bml
+%%DATADIR%%/WonderSwan.sys/manifest.bml
+%%DATADIR%%/cheats.bml
+share/icarus/Database/Super Famicom.bml
 share/pixmaps/higan.png



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201704101317.v3ADHHNW042569>