summaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
authorDmitry Marakasov <amdmi3@FreeBSD.org>2009-07-28 18:04:33 +0000
committerDmitry Marakasov <amdmi3@FreeBSD.org>2009-07-28 18:04:33 +0000
commitafa232e9353a8cf6782bdb59a220b7eb69260beb (patch)
tree0c2e1cb735a81f022b0e0df28adc40ed731df735 /emulators
parentAuthCAS aims at providing a Perl API to Yale's Central Authentication (diff)
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>
Notes
Notes: svn path=/head/; revision=238545
Diffstat (limited to 'emulators')
-rw-r--r--emulators/Makefile1
-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
7 files changed, 193 insertions, 0 deletions
diff --git a/emulators/Makefile b/emulators/Makefile
index 3f6d8bc0de24..17389c878b89 100644
--- a/emulators/Makefile
+++ b/emulators/Makefile
@@ -13,6 +13,7 @@
SUBDIR += basiliskII
SUBDIR += bfe
SUBDIR += bochs
+ SUBDIR += bsnes
SUBDIR += bsvc
SUBDIR += catapult
SUBDIR += cinc
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/