aboutsummaryrefslogtreecommitdiff
path: root/emulators/sdlmame-devel
diff options
context:
space:
mode:
authorAlejandro Pulver <alepulver@FreeBSD.org>2007-02-25 15:17:51 +0000
committerAlejandro Pulver <alepulver@FreeBSD.org>2007-02-25 15:17:51 +0000
commit484a4a943999ea6fc0739c18e67c5165e8fc2d5c (patch)
treeef911fadfdb31d0f2e8db875e38b16bcb67bdba2 /emulators/sdlmame-devel
parent2ec869f83b60537b99500f1fc3d0618fe5d39116 (diff)
downloadports-484a4a943999ea6fc0739c18e67c5165e8fc2d5c.tar.gz
ports-484a4a943999ea6fc0739c18e67c5165e8fc2d5c.zip
Notes
Diffstat (limited to 'emulators/sdlmame-devel')
-rw-r--r--emulators/sdlmame-devel/Makefile45
-rw-r--r--emulators/sdlmame-devel/distinfo3
-rw-r--r--emulators/sdlmame-devel/files/patch-makefile141
-rw-r--r--emulators/sdlmame-devel/files/pkg-message.in13
-rw-r--r--emulators/sdlmame-devel/files/sdlmame.in19
-rw-r--r--emulators/sdlmame-devel/pkg-descr17
-rw-r--r--emulators/sdlmame-devel/pkg-plist25
7 files changed, 263 insertions, 0 deletions
diff --git a/emulators/sdlmame-devel/Makefile b/emulators/sdlmame-devel/Makefile
new file mode 100644
index 000000000000..025557cdac03
--- /dev/null
+++ b/emulators/sdlmame-devel/Makefile
@@ -0,0 +1,45 @@
+# New ports collection makefile for: sdlmame
+# Date created: 2007-01-10
+# Whom: alepulver
+#
+# $FreeBSD$
+#
+
+PORTNAME= sdlmame
+PORTVERSION= 0.112u2
+CATEGORIES= emulators
+MASTER_SITES= http://rbelmont.mameworld.info/
+DISTNAME= ${PORTNAME}${PORTVERSION:S/.//}
+
+MAINTAINER= alepulver@FreeBSD.org
+COMMENT= SDL port of the popular MAME (Multi Arcade Machine Emulator)
+
+USE_ZIP= yes
+USE_GL= yes
+USE_GMAKE= yes
+USE_SDL= sdl
+MAKEFILE= makefile
+
+SUB_FILES= ${PORTNAME} pkg-message
+
+do-install:
+ ${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME} ${PREFIX}/bin
+ ${MKDIR} ${PREFIX}/libexec/${PORTNAME}
+.for f in mame file2str romcmp chdman jedutil
+ ${INSTALL_PROGRAM} ${WRKSRC}/${f} ${PREFIX}/libexec/${PORTNAME}
+.endfor
+ ${MKDIR} ${DATADIR}
+ ${INSTALL_DATA} ${WRKSRC}/ui.bdf ${DATADIR}
+ cd ${DATADIR} && ${MKDIR} artwork cfg comments diff ini nvram roms
+.if !defined(NOPORTDOCS)
+ ${MKDIR} ${DOCSDIR}
+ ${INSTALL_DATA} ${WRKSRC}/*.txt ${DOCSDIR}
+ ${CP} -R ${WRKSRC}/docs ${DOCSDIR}
+.endif
+
+post-install:
+ @${ECHO_CMD}
+ @${CAT} ${PKGMESSAGE}
+ @${ECHO_CMD}
+
+.include <bsd.port.mk>
diff --git a/emulators/sdlmame-devel/distinfo b/emulators/sdlmame-devel/distinfo
new file mode 100644
index 000000000000..c0c60c9b5540
--- /dev/null
+++ b/emulators/sdlmame-devel/distinfo
@@ -0,0 +1,3 @@
+MD5 (sdlmame0112u2.zip) = 3505ed75d9034621ae3774d1d61edc5e
+SHA256 (sdlmame0112u2.zip) = 7796f76494dbf5c6d5628a22b653f7ea8730781cc1f414e4d8e2b4732d9e787a
+SIZE (sdlmame0112u2.zip) = 15437796
diff --git a/emulators/sdlmame-devel/files/patch-makefile b/emulators/sdlmame-devel/files/patch-makefile
new file mode 100644
index 000000000000..83d38ebdce15
--- /dev/null
+++ b/emulators/sdlmame-devel/files/patch-makefile
@@ -0,0 +1,141 @@
+--- ./makefile.orig Sun Feb 18 22:23:18 2007
++++ ./makefile Fri Feb 23 01:26:35 2007
+@@ -50,7 +50,7 @@
+ #
+ # NOTE: this makefile now works for MinGW/win32 builds as well!
+ #
+-SUBARCH = linux
++SUBARCH = freebsd
+
+
+ #-------------------------------------------------
+@@ -61,11 +61,13 @@
+ # uncomment next line to include the debugger
+ #DEBUG = 1
+
++ifeq ($(ARCH),i386)
+ # uncomment next line to use DRC MIPS3 engine
+ X86_MIPS3_DRC = 1
+
+ # uncomment next line to use DRC PowerPC engine
+ X86_PPC_DRC = 1
++endif
+
+ #-------------------------------------------------
+ # specify build options; see each option below
+@@ -172,8 +174,8 @@
+
+ # compiler, linker and utilities
+ AR = @ar
+-CC = @gcc
+-LD = @gcc
++CC := @$(CC)
++LD = @$(CC)
+ MD = -mkdir
+ RM = @rm -f
+
+@@ -189,53 +191,12 @@
+ endif
+
+ # by default, don't compile for a specific target CPU
+-NAME = $(PREFIX)$(TARGET)
+-ARCH =
+-
+-# architecture-specific builds get extra options
+-ifdef ATHLON
+-NAME = $(PREFIX)$(TARGET)at
+-ARCH = -march=athlon
+-endif
+-
+-ifdef I686
+-NAME = $(PREFIX)$(TARGET)pp
+-ARCH = -march=pentiumpro
+-endif
+-
+-ifdef P4
+-NAME = $(PREFIX)$(TARGET)p4
+-ARCH = -march=pentium4
+-endif
+-
+-ifdef AMD64
+-NAME = $(PREFIX)$(TARGET)64
+-ARCH = -march=athlon64
+-endif
+-
+-ifdef PM
+-NAME = $(PREFIX)$(TARGET)pm
+-ARCH = -march=pentium3 -msse2
+-endif
+-
+-ifdef G4
+-NAME = $(PREFIX)$(TARGET)g4
+-ARCH = -mcpu=G4
+-endif
+-
+-ifdef G5
+-NAME = $(PREFIX)$(TARGET)g5
+-ARCH = -mcpu=G5
+-endif
+-
+-ifdef CELL
+-NAME = $(PREFIX)$(TARGET)cbe
++NAME = $(TARGET)
+ ARCH =
+-endif
+
+ # debug builds just get the 'd' suffix and nothing more
+ ifdef DEBUG
+-NAME = $(PREFIX)$(TARGET)d
++NAME = $(TARGET)d
+ endif
+
+ EMULATOR = $(NAME)$(EXE)
+@@ -273,7 +234,7 @@
+ # compile and linking flags
+ #-------------------------------------------------
+
+-CFLAGS = \
++CFLAGS += \
+ $(OPT_FLAGS) \
+ -std=gnu89 \
+ -I$(SRC)/$(TARGET) \
+@@ -284,6 +245,7 @@
+ -I$(SRC)/lib/util \
+ -I$(SRC)/osd \
+ -I$(SRC)/osd/$(MAMEOS) \
++ -I$(LOCALBASE)/include -I$(X11BASE)/include
+
+ ifdef MESS
+ CFLAGS += \
+@@ -302,7 +264,7 @@
+ endif # PPC
+ endif # SYMBOLS
+
+-CFLAGS += $(ARCH) \
++CFLAGS += \
+ -Wall \
+ -Wpointer-arith \
+ -Wbad-function-cast \
+@@ -314,7 +276,7 @@
+ -Wdeclaration-after-statement
+
+ ifneq ($(OPTIMIZE),0)
+-CFLAGS += -DNDEBUG $(ARCH) -fno-strict-aliasing
++CFLAGS += -DNDEBUG -fno-strict-aliasing
+ endif
+
+ CFLAGS += -O$(OPTIMIZE)
+@@ -322,11 +284,9 @@
+ # extra options needed *only* for the osd files
+ CFLAGSOSDEPEND = $(CFLAGS)
+
+-LDFLAGS = -WO
++LDFLAGS += -WO -L$(LOCALBASE)/lib -L$(X11BASE)/lib
+
+-ifdef SYMBOLS
+-LDFLAGS =
+-else
++ifndef SYMBOLS
+ LDFLAGS += -s
+ endif
+
diff --git a/emulators/sdlmame-devel/files/pkg-message.in b/emulators/sdlmame-devel/files/pkg-message.in
new file mode 100644
index 000000000000..3290fa533a30
--- /dev/null
+++ b/emulators/sdlmame-devel/files/pkg-message.in
@@ -0,0 +1,13 @@
+==============================================================================
+
+SDLMAME has been installed.
+
+The MAME tools are installed in "%%PREFIX%%/libexec/sdlmame"
+to avoid conflicting with other MAME ports.
+
+A wrapper script "sdlmame" has been installed. It creates a "~/.sdlmame"
+directory mirroring the directory tree under "%%DATADIR%%"
+when you run it for the first time, and starts the program from there. So
+place all MAME files (e.g. ROMs, cheats, etc.) in "~/.sdlmame".
+
+==============================================================================
diff --git a/emulators/sdlmame-devel/files/sdlmame.in b/emulators/sdlmame-devel/files/sdlmame.in
new file mode 100644
index 000000000000..9a7c7215f76a
--- /dev/null
+++ b/emulators/sdlmame-devel/files/sdlmame.in
@@ -0,0 +1,19 @@
+#!/bin/sh
+#
+# The executable needs to be run from its data directory, and needs to store
+# configuration in it. We therefore mirror the data directory hierarchy in
+# ~/.cube, and create symlinks to the data files.
+#
+
+if [ -d ~/.sdlmame ]
+then
+ echo "Using existing ~/.sdlmame directory."
+else
+ echo "Creating ~/.sdlmame directory."
+ cd %%DATADIR%% || exit 1
+ find * -type d -exec mkdir -p ~/.sdlmame/{} \;
+ find * -type f -exec ln -s %%DATADIR%%/{} ~/.sdlmame/{} \; 2>/dev/null
+fi
+
+cd ~/.sdlmame || exit 1
+exec %%PREFIX%%/libexec/sdlmame/mame "$@"
diff --git a/emulators/sdlmame-devel/pkg-descr b/emulators/sdlmame-devel/pkg-descr
new file mode 100644
index 000000000000..b297a4b68fa9
--- /dev/null
+++ b/emulators/sdlmame-devel/pkg-descr
@@ -0,0 +1,17 @@
+SDLMAME is a port of the popular MAME. There are a few principles that guide
+it's development:
+
+1) Run on Linux/Unix, Mac OS X, and other SDL supported operating systems with
+ as few changes as possible to the base Win32 code. This means we can track
+ changes faster than larger more conventional ports such as MacMAME, and we
+ also maintain what I call "Firefox compatibilty" where learning a major app
+ only needs to be done once per application, and it then applies across many
+ operating systems. If you can use the command-line Win32 MAME, you already
+ know how to use SDLMAME on any platform you may encounter it on.
+
+2) MAME developers are important. By keeping quickly up to date, we make it
+ easy for people on non-Windows platforms to make and submit changes to the
+ core MAME code, and we offer native implementations of MAME's multi-window
+ GUI debugger on both Linux/Unix and Mac OS X.
+
+WWW: http://rbelmont.mameworld.info/?page_id=163
diff --git a/emulators/sdlmame-devel/pkg-plist b/emulators/sdlmame-devel/pkg-plist
new file mode 100644
index 000000000000..ec16b2c0b53c
--- /dev/null
+++ b/emulators/sdlmame-devel/pkg-plist
@@ -0,0 +1,25 @@
+@exec for i in artwork cfg comments diff ini nvram roms; do mkdir -p %D/%%DATADIR%%/${i}; done
+bin/sdlmame
+libexec/sdlmame/chdman
+libexec/sdlmame/file2str
+libexec/sdlmame/jedutil
+libexec/sdlmame/mame
+libexec/sdlmame/romcmp
+%%PORTDOCS%%%%DOCSDIR%%/SDLMAME.txt
+%%PORTDOCS%%%%DOCSDIR%%/docs/license.txt
+%%PORTDOCS%%%%DOCSDIR%%/docs/mame.txt
+%%PORTDOCS%%%%DOCSDIR%%/docs/newvideo.txt
+%%PORTDOCS%%%%DOCSDIR%%/docs/windows.txt
+%%PORTDOCS%%%%DOCSDIR%%/whatsnew.txt
+%%DATADIR%%/ui.bdf
+@dirrm %%DATADIR%%/roms
+@dirrm %%DATADIR%%/nvram
+@dirrm %%DATADIR%%/ini
+@dirrm %%DATADIR%%/diff
+@dirrm %%DATADIR%%/comments
+@dirrm %%DATADIR%%/cfg
+@dirrm %%DATADIR%%/artwork
+@dirrm %%DATADIR%%
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/docs
+%%PORTDOCS%%@dirrm %%DOCSDIR%%
+@dirrm libexec/sdlmame