Bug 187650 - [MAINTAINER] emulators/higan: update to 0.94
Summary: [MAINTAINER] emulators/higan: update to 0.94
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Pawel Pekala
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-03-17 03:10 UTC by Naram Qashat
Modified: 2014-03-24 20:00 UTC (History)
0 users

See Also:


Attachments
higan-0.94.patch (15.21 KB, patch)
2014-03-17 03:10 UTC, Naram Qashat
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Naram Qashat 2014-03-17 03:10:00 UTC
- Update to 0.94
- Use OPTIONS helpers
- Add XShm video driver option
- Support staging
- Update USES and MASTER_SITES

Generated with FreeBSD Port Tools 1.00.2014.03.11 (mode: update, diff: SVN)
Comment 1 Pawel Pekala freebsd_committer 2014-03-24 18:06:34 UTC
Responsible Changed
From-To: freebsd-ports-bugs->pawel

I'll take it.
Comment 2 dfilter service freebsd_committer 2014-03-24 19:57:36 UTC
Author: pawel
Date: Mon Mar 24 19:57:30 2014
New Revision: 349057
URL: http://svnweb.freebsd.org/changeset/ports/349057
QAT: https://qat.redports.org/buildarchive/r349057/

Log:
  - Update to 0.94
  - Use OPTIONS helpers
  - Add XShm video driver option
  - Support staging
  - Update USES and MASTER_SITES
  
  PR:		ports/187650
  Submitted by:	maintainer

Added:
  head/emulators/higan/files/patch-nall-platform.hpp   (contents, props changed)
  head/emulators/higan/files/patch-shaders   (contents, props changed)
Deleted:
  head/emulators/higan/files/patch-Makefile
  head/emulators/higan/files/patch-nall-file.hpp
  head/emulators/higan/files/patch-target-ethos-AddSharePath
Modified:
  head/emulators/higan/Makefile
  head/emulators/higan/distinfo
  head/emulators/higan/files/patch-target-ethos-Makefile
  head/emulators/higan/pkg-plist

Modified: head/emulators/higan/Makefile
==============================================================================
--- head/emulators/higan/Makefile	Mon Mar 24 19:51:54 2014	(r349056)
+++ head/emulators/higan/Makefile	Mon Mar 24 19:57:30 2014	(r349057)
@@ -2,42 +2,42 @@
 # $FreeBSD$
 
 PORTNAME=	higan
-PORTVERSION=	0.92
-PORTREVISION=	3
+PORTVERSION=	0.94
 CATEGORIES=	emulators
-MASTER_SITES=	GOOGLE_CODE
+MASTER_SITES=	http://byuu.org/files/ \
+		http://www.cyberbotx.com/higan/
 DISTNAME=	${PORTNAME}_v${PORTVERSION:S/.//}-source
 
 MAINTAINER=	cyberbotx@cyberbotx.com
 COMMENT=	Nintendo multi-system emulator
 
-USES=		pkgconfig
-USE_XZ=		yes
-USE_GMAKE=	yes
-USE_GCC=	yes
+USES=		compiler:c++11-lib gmake pkgconfig tar:xz
 USE_LDCONFIG=	yes
 
 ONLY_FOR_ARCHS=	i386 amd64
-MAKE_ENV+=	c="${CC} -std=gnu99" cpp="${CXX} -std=gnu++0x"
+#MAKE_ENV+=	c="${CC} -std=gnu99" cpp="${CXX} -std=gnu++0x"
+MAKE_ENV+=	compiler="${CXX}" cflags="-x c -std=c99 ${CFLAGS}" \
+		cppflags="-x c++ -std=c++11 ${CXXFLAGS}"
 
 OPTIONS_DEFINE=		DEBUG
 OPTIONS_SINGLE=		PROFILE GUI
 OPTIONS_SINGLE_PROFILE=	ACCURACY BALANCED PERFORMANCE
 OPTIONS_SINGLE_GUI=	GTK2 QT4
 OPTIONS_MULTI=		VIDEO SOUND INPUT
-OPTIONS_MULTI_VIDEO=	GLX SDL XV
+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 XV SDL \
+OPTIONS_DEFAULT=	BALANCED GTK2 GLX XSHM XV SDL \
 			OSS INPUT_SDL INPUT_X
 
 ACCURACY_DESC=		Use accuracy profile
-BALACNED_DESC=		Use balanced 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
@@ -46,45 +46,50 @@ PULSEAUDIO_DESC=	Build Pulseaudio sound 
 INPUT_SDL_DESC=		Build SDL input driver
 INPUT_X_DESC=		Build X input driver
 
-NO_STAGE=	yes
-.include <bsd.port.options.mk>
+ACCURACY_MAKE_ENV=	profile="accuracy"
+BALANCED_MAKE_ENV=	profile="balanced"
+PERFORMANCE_MAKE_ENV=	profile="performance"
+
+GTK2_USE=	GNOME=gtk20
+GTK2_MAKE_ENV=	phoenix="gtk"
+
+QT4_USE=	QT4=gui,moc_build
+QT4_MAKE_ENV=	phoenix="qt"
+
+GLX_USE=	GL=gl
+SDL_USE=	XORG=xv SDL=sdl
+XSHM_USE=	XORG=xext
+XV_USE=		XORG=xv
+
+AO_LIB_DEPENDS=	libao.so:${PORTSDIR}/audio/libao
+OPENAL_USES=	openal:al
+PULSEAUDIO_LIB_DEPENDS=	libpulse.so:${PORTSDIR}/audio/pulseaudio
 
-.if ${PORT_OPTIONS:MACCURACY}
-MAKE_ENV+=	profile="accuracy"
-.elif ${PORT_OPTIONS:MBALANCED}
-MAKE_ENV+=	profile="balanced"
-.else
-MAKE_ENV+=	profile="performance"
-.endif
+INPUT_SDL_USE=	SDL=sdl
+
+.include <bsd.port.options.mk>
 
-.if ${PORT_OPTIONS:MGTK2}
-USE_GNOME+=	gtk20
-MAKE_ENV+=	phoenix="gtk"
+.if ${PORT_OPTIONS:MGLX}
+VIDEO_DRIVER+=	video.glx
 .endif
 
-.if ${PORT_OPTIONS:MQT4}
-USE_QT4+=	gui moc_build
-MAKE_ENV+=	phoenix="qt"
+.if ${PORT_OPTIONS:MSDL}
+VIDEO_DRIVER+=	video.sdl
 .endif
 
-.if ${PORT_OPTIONS:MGLX}
-USE_GL+=	gl
-VIDEO_DRIVER+=	video.glx
+.if ${PORT_OPTIONS:MXSHM}
+VIDEO_DRIVER+=	video.xshm
 .endif
 
 .if ${PORT_OPTIONS:MXV}
-USE_XORG+=	xv
 VIDEO_DRIVER+=	video.xv
 .endif
 
-.if ${PORT_OPTIONS:MSDL}
-USE_XORG+=	xv
-USE_SDL+=	sdl
-VIDEO_DRIVER+=	video.sdl
+.if ${PORT_OPTIONS:MAO}
+AUDIO_DRIVER+=	audio.ao
 .endif
 
 .if ${PORT_OPTIONS:MOPENAL}
-USES+=		openal:al
 AUDIO_DRIVER+=	audio.openal
 .endif
 
@@ -93,22 +98,15 @@ AUDIO_DRIVER+=	audio.oss
 .endif
 
 .if ${PORT_OPTIONS:MPULSEAUDIO}
-LIB_DEPENDS+=	pulse:${PORTSDIR}/audio/pulseaudio
 AUDIO_DRIVER+=	audio.pulseaudio
 .endif
 
-.if ${PORT_OPTIONS:MAO}
-LIB_DEPENDS+=	ao:${PORTSDIR}/audio/libao
-AUDIO_DRIVER+=	audio.ao
+.if ${PORT_OPTIONS:MINPUT_SDL}
+INPUT_DRIVER+=	input.sdl
 .endif
 
 .if ${PORT_OPTIONS:MINPUT_X}
-INPUT_DRIVER+=	input.x
-.endif
-
-.if ${PORT_OPTIONS:MINPUT_SDL}
-USE_SDL+=	sdl
-INPUT_DRIVER+=	input.sdl
+INPUT_DRIVER+=	input.xlib
 .endif
 
 post-patch:
@@ -116,32 +114,34 @@ post-patch:
 		-e 's|%%VIDEO%%|${VIDEO_DRIVER}|' \
 		-e 's|%%AUDIO%%|${AUDIO_DRIVER}|' \
 		-e 's|%%INPUT%%|${INPUT_DRIVER}|' \
-		${WRKSRC}/higan/target-ethos/Makefile
+		${WRKSRC}/target-ethos/Makefile
+	${REINPLACE_CMD} -e 's|/usr/share/|${PREFIX}/|' \
+		${WRKSRC}/nall/string/platform.hpp
 .if ${PORT_OPTIONS:MDEBUG}
 	${REINPLACE_CMD} -e 's|-O3|-g|g' \
 		${WRKSRC}/ananke/Makefile \
-		${WRKSRC}/higan/Makefile
+		${WRKSRC}/Makefile
 	${REINPLACE_CMD} -e 's|:= -s|:= #|g' \
-		${WRKSRC}/higan/Makefile
+		${WRKSRC}/Makefile
 .endif
-	${RM} ${WRKSRC}/shaders/Sepia.Direct3D.shader
+#	${RM} ${WRKSRC}/shaders/Sepia.Direct3D.shader
 
 do-build:
-.for d in higan ananke
 .if ${PORT_OPTIONS:MQT4}
-	cd ${WRKSRC}/${d}/phoenix/qt && ${MOC} -i -o platform.moc platform.moc.hpp
+	(cd ${WRKSRC}/phoenix/qt && ${MOC} -i -o platform.moc platform.moc.hpp)
 .endif
-	cd ${WRKSRC}/${d} && ${GMAKE} ${MAKE_ENV}
+.for d in . ananke
+	(cd ${WRKSRC}/${d} && ${GMAKE} ${MAKE_ENV})
 .endfor
 
 do-install:
-	${INSTALL_LIB} ${WRKSRC}/ananke/libananke.so ${PREFIX}/lib/libananke.so.1
-	${LN} -sf ${PREFIX}/lib/libananke.so.1 ${PREFIX}/lib/libananke.so
-	${INSTALL_PROGRAM} ${WRKSRC}/higan/out/higan ${PREFIX}/bin/
-	${INSTALL_DATA} ${WRKSRC}/higan/data/higan.png ${PREFIX}/share/pixmaps/
-	${INSTALL_DATA} ${WRKSRC}/higan/data/higan.desktop ${PREFIX}/share/applications/
-	${MKDIR} ${DATADIR}/Video\ Shaders
-	(cd ${WRKSRC}/higan/profile && ${COPYTREE_SHARE} \* ${DATADIR}/)
-	${INSTALL_DATA} ${WRKSRC}/shaders/* ${DATADIR}/Video\ Shaders/
+	${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/)
 
 .include <bsd.port.mk>

Modified: head/emulators/higan/distinfo
==============================================================================
--- head/emulators/higan/distinfo	Mon Mar 24 19:51:54 2014	(r349056)
+++ head/emulators/higan/distinfo	Mon Mar 24 19:57:30 2014	(r349057)
@@ -1,2 +1,2 @@
-SHA256 (higan_v092-source.tar.xz) = b73a740c6a8a82fe42a3f166df16806a6fbe8c140c82d7f6089ed984d7491168
-SIZE (higan_v092-source.tar.xz) = 790136
+SHA256 (higan_v094-source.tar.xz) = 5e149df9d50c1066eb97c0d66665428d75304da782bba5a87078b87fc311151b
+SIZE (higan_v094-source.tar.xz) = 882732

Added: head/emulators/higan/files/patch-nall-platform.hpp
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/higan/files/patch-nall-platform.hpp	Mon Mar 24 19:57:30 2014	(r349057)
@@ -0,0 +1,11 @@
+--- ./nall/platform.hpp.orig	2014-03-16 21:33:25.000000000 -0400
++++ ./nall/platform.hpp	2014-03-16 21:45:07.000000000 -0400
+@@ -41,7 +41,7 @@
+   #undef interface
+   #define dllexport __declspec(dllexport)
+ #else
+-  #include <endian.h>
++  #include <sys/endian.h>
+   #include <unistd.h>
+   #include <pwd.h>
+   #define dllexport

Added: head/emulators/higan/files/patch-shaders
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/higan/files/patch-shaders	Mon Mar 24 19:57:30 2014	(r349057)
@@ -0,0 +1,22 @@
+--- ./target-ethos/general/presentation.cpp.orig	2013-12-06 15:19:40.000000000 -0500
++++ ./target-ethos/general/presentation.cpp	2014-03-16 22:40:31.000000000 -0400
+@@ -235,7 +235,7 @@
+ void Presentation::loadShaders() {
+   //only the OpenGL driver has video shader support
+   if(config->video.driver == "OpenGL") {
+-    string pathname = program->path("Video Shaders/");
++    string pathname = program->path("shaders/");
+     lstring shaders = directory::folders(pathname, "*.shader");
+     for(auto& name : shaders) {
+       auto shader = new RadioItem;
+--- ./target-ethos/utility/utility.cpp.orig	2013-12-21 02:00:03.000000000 -0500
++++ ./target-ethos/utility/utility.cpp	2014-03-16 22:41:03.000000000 -0400
+@@ -203,7 +203,7 @@
+     video.set(Video::Filter, Video::FilterLinear);
+   } else if(config->video.shader == "Display Emulation") {
+     if(program->active) {
+-      string pathname = program->path("Video Shaders/");
++      string pathname = program->path("shaders/");
+       pathname.append("Display Emulation/");
+       pathname.append(presentation->systemName, ".shader/");
+       if(directory::exists(pathname)) {

Modified: head/emulators/higan/files/patch-target-ethos-Makefile
==============================================================================
--- head/emulators/higan/files/patch-target-ethos-Makefile	Mon Mar 24 19:51:54 2014	(r349056)
+++ head/emulators/higan/files/patch-target-ethos-Makefile	Mon Mar 24 19:57:30 2014	(r349057)
@@ -1,15 +1,15 @@
---- higan/target-ethos/Makefile.orig	2013-01-12 16:59:47.000000000 -0500
-+++ higan/target-ethos/Makefile	2013-02-21 14:00:38.000000000 -0500
-@@ -16,9 +16,9 @@
- 
- # platform
- ifeq ($(platform),x)
--  ruby := video.glx video.xv video.sdl
--  ruby += audio.alsa audio.openal audio.oss audio.pulseaudio audio.pulseaudiosimple audio.ao
--  ruby += input.sdl input.x
+--- ./target-ethos/Makefile.orig	2014-01-13 00:26:29.000000000 -0500
++++ ./target-ethos/Makefile	2014-03-16 21:57:02.000000000 -0400
+@@ -27,9 +27,9 @@
+   ruby += audio.alsa audio.openal audio.oss audio.pulseaudio audio.pulseaudiosimple audio.ao
+   ruby += input.udev input.sdl input.x
+ else ifeq ($(platform),bsd)
+-  ruby := video.glx
+-  ruby += audio.openal audio.oss
+-  ruby += input.x
 +  ruby := %%VIDEO%%
 +  ruby += %%AUDIO%%
 +  ruby += %%INPUT%%
- else ifeq ($(platform),osx)
-   ruby :=
-   ruby += audio.openal
+ endif
+ 
+ # phoenix

Modified: head/emulators/higan/pkg-plist
==============================================================================
--- head/emulators/higan/pkg-plist	Mon Mar 24 19:51:54 2014	(r349056)
+++ head/emulators/higan/pkg-plist	Mon Mar 24 19:57:30 2014	(r349057)
@@ -10,13 +10,18 @@ share/applications/higan.desktop
 %%DATADIR%%/Game Boy.sys/manifest.bml
 %%DATADIR%%/Super Famicom.sys/ipl.rom
 %%DATADIR%%/Super Famicom.sys/manifest.bml
-%%DATADIR%%/Video Shaders/Curvature.OpenGL.shader
-%%DATADIR%%/Video Shaders/HQ2x.OpenGL.shader
-%%DATADIR%%/Video Shaders/Pixellate.OpenGL.shader
-%%DATADIR%%/Video Shaders/Scale2x.OpenGL.shader
+%%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
 share/pixmaps/higan.png
 @dirrmtry share/pixmaps
-@dirrm %%DATADIR%%/Video Shaders
+@dirrm %%DATADIR%%/shaders/Scanline.shader
+@dirrm %%DATADIR%%/shaders/Edge Detection.shader
+@dirrm %%DATADIR%%/shaders/Curvature.shader
+@dirrm %%DATADIR%%/shaders
 @dirrm %%DATADIR%%/Super Famicom.sys
 @dirrm %%DATADIR%%/Game Boy.sys
 @dirrm %%DATADIR%%/Game Boy Color.sys
_______________________________________________
svn-ports-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-ports-all
To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
Comment 3 Pawel Pekala freebsd_committer 2014-03-24 19:57:52 UTC
State Changed
From-To: open->closed

Committed. Thanks!