aboutsummaryrefslogtreecommitdiffstats
path: root/emulators/bsnes
diff options
context:
space:
mode:
authoramdmi3 <amdmi3@FreeBSD.org>2009-07-29 02:04:33 +0800
committeramdmi3 <amdmi3@FreeBSD.org>2009-07-29 02:04:33 +0800
commit7bdf886b76e6ef7b3384314ef544c4f7875baa9d (patch)
treeb433165e51b9507bf568a42b9f72ee61a24e176e /emulators/bsnes
parent3ad541e2c95e7e1a577f49a704a6fa704b3cd5f5 (diff)
downloadfreebsd-ports-gnome-7bdf886b76e6ef7b3384314ef544c4f7875baa9d.tar.gz
freebsd-ports-gnome-7bdf886b76e6ef7b3384314ef544c4f7875baa9d.tar.zst
freebsd-ports-gnome-7bdf886b76e6ef7b3384314ef544c4f7875baa9d.zip
bsnes is an emulator that began development on 2004-10-14.
The purpose of this emulator is a bit different from others: it focuses on accuracy, debugging functionality, and clean code. The emulator does not focus on things that would hinder accuracy. This includes speed and game-specific hacks for compatibility. As a result, the minimum system requirements for bsnes are very high. The emulator itself was not derived from any existing emulator source code, such as SNES9x. It was written from scratch by myself. Any similarities to other emulators are merely coincidental. WWW: http://byuu.org/bsnes/ PR: 135592 Submitted by: Emmanuel Vadot <elbarto@arcadebsd.org>
Diffstat (limited to 'emulators/bsnes')
-rw-r--r--emulators/bsnes/Makefile108
-rw-r--r--emulators/bsnes/distinfo3
-rw-r--r--emulators/bsnes/files/patch-Makefile29
-rw-r--r--emulators/bsnes/files/patch-Makefile-libnall26
-rw-r--r--emulators/bsnes/files/patch-Makefile-qt-libnall13
-rw-r--r--emulators/bsnes/pkg-descr13
6 files changed, 192 insertions, 0 deletions
diff --git a/emulators/bsnes/Makefile b/emulators/bsnes/Makefile
new file mode 100644
index 000000000000..51d7fc557de0
--- /dev/null
+++ b/emulators/bsnes/Makefile
@@ -0,0 +1,108 @@
+# New ports collection makefile for: bsnes
+# Date created: 2009-06-13
+# Whom: elbarto
+#
+# $FreeBSD$
+
+PORTNAME= bsnes
+PORTVERSION= 0.48
+CATEGORIES= emulators
+MASTER_SITES= http://byuusan.kuro-hitsuji.net/ \
+ ftp://ftp.arcadebsd.org/pub/ArcadeBSD/ports/distfiles/
+DISTNAME= ${PORTNAME}_v${PORTVERSION:S/.//}
+
+MAINTAINER= elbarto@ArcadeBSD.org
+COMMENT= Super Nintendo/Super Famicom emulator
+
+USE_BZIP2= yes
+USE_GMAKE= yes
+USE_XORG= videoproto xv x11
+USE_QT_VER= 4
+QT_COMPONENTS= qmake_build uic_build moc_build rcc_build gui
+
+ONLY_FOR_ARCHS= i386 amd64
+WRKSRC= ${WRKDIR}/src/
+MAKE_ENV+= enable_gzip=true
+
+OPTIONS= VIDEO_GLX "Build GLX Video Driver" on \
+ VIDEO_XV "Build Xv Video Driver" off \
+ VIDEO_SDL "Build SDL Video Driver" on \
+ VIDEO_QT "Build QtImage Video Driver" off \
+ SOUND_OPENAL "Build OpenAL Sound Driver" off \
+ SOUND_OSS "Build OSS Sound Driver" on \
+ SOUND_PULSE "Build Pulseaudio Sound Driver" off \
+ SOUND_AO "Build AO Sound Driver" off \
+ INPUT_X "Build X Input Driver" on \
+ INPUT_SDL "Build SDL Input Driver" on
+
+.include <bsd.port.pre.mk>
+
+.if defined(WITH_VIDEO_GLX)
+USE_GL+= gl
+VIDEO_DRIVER+= video.glx
+.endif
+
+.if defined(WITH_VIDEO_XV)
+VIDEO_DRIVER+= video.xv
+.endif
+
+.if defined(WITH_VIDEO_SDL)
+USE_SDL+= sdl
+VIDEO_DRIVER+= video.sdl
+.endif
+
+.if defined(WITH_VIDEO_QT)
+VIDEO_DRIVER+= video.qtimage
+.endif
+
+.if defined(WITH_SOUND_OPENAL)
+LIB_DEPENDS+= openal.0:${PORTSDIR}/audio/openal
+AUDIO_DRIVER+= audio.openal
+.endif
+
+.if defined(WITH_SOUND_OSS)
+AUDIO_DRIVER+= audio.oss
+.endif
+
+.if defined(WITH_SOUND_PULSE)
+LIB_DEPENDS+= pulse.0:${PORTSDIR}/audio/pulseaudio
+AUDIO_DRIVER+= audio.pulseaudio
+.endif
+
+.if defined(WITH_SOUND_AO)
+LIB_DEPENDS+= ao.3:${PORTSDIR}/audio/libao
+AUDIO_DRIVER+= audio.ao
+.endif
+
+.if defined(WITH_INPUT_X)
+INPUT_DRIVER+= input.x
+.endif
+
+.if defined(WITH_INPUT_SDL)
+USE_SDL+= sdl
+INPUT_DRIVER+= input.sdl
+.endif
+
+.if !defined(VIDEO_DRIVER)
+IGNORE= you have to choose at least a video driver first
+.endif
+
+.if !defined(AUDIO_DRIVER)
+IGNORE= you have to choose at least a audio driver first
+.endif
+
+.if !defined(INPUT_DRIVER)
+IGNORE= you have to choose at least an input driver first
+.endif
+
+PLIST_FILES= bin/bsnes
+
+post-patch:
+ ${REINPLACE_CMD} -e 's|VIDEO|${VIDEO_DRIVER}|' ${WRKSRC}/Makefile
+ ${REINPLACE_CMD} -e 's|AUDIO|${AUDIO_DRIVER}|' ${WRKSRC}/Makefile
+ ${REINPLACE_CMD} -e 's|INPUT|${INPUT_DRIVER}|' ${WRKSRC}/Makefile
+
+do-install:
+ ${INSTALL_PROGRAM} ${WRKSRC}/../${PORTNAME} ${PREFIX}/bin/
+
+.include <bsd.port.post.mk>
diff --git a/emulators/bsnes/distinfo b/emulators/bsnes/distinfo
new file mode 100644
index 000000000000..4cb67d8cd3d3
--- /dev/null
+++ b/emulators/bsnes/distinfo
@@ -0,0 +1,3 @@
+MD5 (bsnes_v048.tar.bz2) = a2951fef4ad999c32e8d5f21d86399e5
+SHA256 (bsnes_v048.tar.bz2) = 3d017d5fd678cae2afca3889c673bdfba05e40aaefea5ea5030893e5a74903c1
+SIZE (bsnes_v048.tar.bz2) = 545699
diff --git a/emulators/bsnes/files/patch-Makefile b/emulators/bsnes/files/patch-Makefile
new file mode 100644
index 000000000000..82021d0604f2
--- /dev/null
+++ b/emulators/bsnes/files/patch-Makefile
@@ -0,0 +1,29 @@
+--- Makefile.orig 2009-06-07 01:56:29.000000000 +0000
++++ Makefile 2009-07-03 10:10:19.032836854 +0000
+@@ -6,8 +6,8 @@
+ ### compiler ###
+ ################
+
+-c := $(compiler)
+-cpp := $(subst cc,++,$(compiler))
++c := ${CC}
++cpp := ${CXX}
+ flags := -O3 -fomit-frame-pointer -Ilib
+ link :=
+
+@@ -36,6 +36,15 @@
+ ruby += input.carbon
+
+ link += $(if $(findstring audio.openal,$(ruby)),-framework OpenAL)
++else ifeq ($(platform),bsd)
++ link += -s
++ flags += -I${LOCALBASE}/include
++
++ ruby := VIDEO
++ ruby += AUDIO
++ ruby += INPUT
++
++ link += $(if $(findstring audio.openal,$(ruby)),-lopenal)
+ else ifeq ($(platform),win)
+ link += -mwindows
+ # link += -mconsole
diff --git a/emulators/bsnes/files/patch-Makefile-libnall b/emulators/bsnes/files/patch-Makefile-libnall
new file mode 100644
index 000000000000..fea6fdb99d43
--- /dev/null
+++ b/emulators/bsnes/files/patch-Makefile-libnall
@@ -0,0 +1,26 @@
+--- lib/nall/Makefile.orig 2009-06-05 08:23:39.000000000 +0000
++++ lib/nall/Makefile 2009-07-03 10:19:25.113813347 +0000
+@@ -22,6 +22,9 @@
+ else ifneq ($(findstring Darwin,$(uname)),)
+ platform := osx
+ delete = rm -f $1
++ else ifneq ($(findstring FreeBSD,$(uname)),)
++ platform := bsd
++ delete = rm -f $1
+ else
+ platform := x
+ delete = rm -f $1
+@@ -29,11 +32,11 @@
+ endif
+
+ ifeq ($(compiler),)
+- compiler := gcc
++ compiler := ${CC}
+ endif
+
+ ifeq ($(prefix),)
+- prefix := /usr/local
++ prefix := ${PREFIX}
+ endif
+
+ #####
diff --git a/emulators/bsnes/files/patch-Makefile-qt-libnall b/emulators/bsnes/files/patch-Makefile-qt-libnall
new file mode 100644
index 000000000000..5a2974268d43
--- /dev/null
+++ b/emulators/bsnes/files/patch-Makefile-qt-libnall
@@ -0,0 +1,13 @@
+--- lib/nall/Makefile-qt.orig 2009-06-15 00:10:35.000000000 +0200
++++ lib/nall/Makefile-qt 2009-06-15 00:12:05.000000000 +0200
+@@ -30,6 +30,10 @@
+ qtlib += -framework Cocoa
+ qtlib += -framework AppKit
+ qtlib += -framework ApplicationServices
++else ifeq ($(platform),bsd)
++ qtinc := `pkg-config --cflags QtCore QtGui`
++ qtlib := `pkg-config --libs QtCore QtGui`
++ moc := moc-qt4
+ else ifeq ($(platform),win)
+ ifeq ($(qtpath),)
+ # find Qt install directory from PATH environment variable
diff --git a/emulators/bsnes/pkg-descr b/emulators/bsnes/pkg-descr
new file mode 100644
index 000000000000..184d5207a57c
--- /dev/null
+++ b/emulators/bsnes/pkg-descr
@@ -0,0 +1,13 @@
+bsnes is an emulator that began development on 2004-10-14.
+The purpose of this emulator is a bit different from others:
+it focuses on accuracy, debugging functionality, and clean code.
+
+The emulator does not focus on things that would hinder accuracy.
+This includes speed and game-specific hacks for compatibility.
+As a result, the minimum system requirements for bsnes are very high.
+
+The emulator itself was not derived from any existing emulator source code,
+such as SNES9x. It was written from scratch by myself.
+Any similarities to other emulators are merely coincidental.
+
+WWW: http://byuu.org/bsnes/