Date: Mon, 3 Nov 2008 15:54:19 GMT From: Emmanuel Vadot <elbarto@arcadebsd.org> To: freebsd-gnats-submit@FreeBSD.org Subject: ports/128557: Update port: emulators/sdlmame update to 0.128 and fix Message-ID: <200811031554.mA3FsJ6E008889@www.freebsd.org> Resent-Message-ID: <200811031600.mA3G0Cf7031439@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 128557 >Category: ports >Synopsis: Update port: emulators/sdlmame update to 0.128 and fix >Confidential: no >Severity: non-critical >Priority: medium >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Mon Nov 03 16:00:12 UTC 2008 >Closed-Date: >Last-Modified: >Originator: Emmanuel Vadot >Release: FreeBSD 7.0-RELEASE i386 >Organization: ArcadeBSD >Environment: FreeBSD arcadia 7.0-RELEASE FreeBSD 7.0-RELEASE #0: Sun Feb 24 19:59:52 UTC 2008 root@logan.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386 >Description: Update the port to 0.128 Remove useless wrapper and use of ~/.sdlmame, sdlmame use ~/.mame by default. Current PR (128154) don't have gconf2 in dependancy. >How-To-Repeat: >Fix: # This is a shell archive. Save it in a file, remove anything before # this line, and then unpack it by entering "sh file". Note, it may # create directories; files and directories will be owned by you and # have default permissions. # # This archive contains: # # sdlmame # sdlmame/Makefile # sdlmame/distinfo # sdlmame/files # sdlmame/files/patch-makefile # sdlmame/files/patch-sdldir.c # sdlmame/files/mame.ini # sdlmame/files/pkg-message.in # sdlmame/pkg-descr # sdlmame/pkg-plist # echo c - sdlmame mkdir -p sdlmame > /dev/null 2>&1 echo x - sdlmame/Makefile sed 's/^X//' >sdlmame/Makefile << 'END-of-sdlmame/Makefile' X# New ports collection makefile for: asmx X# Date created: 28 October 2008 X# Whom: elbarto X# X# $FreeBSD$ X# X XPORTNAME= sdlmame XPORTVERSION= 0.128 XCATEGORIES= emulators XMASTER_SITES= http://distfiles.arcadebsd.org/ XDISTNAME= ${PORTNAME}${PORTVERSION:S/.//} X XMAINTAINER= elbarto@ArcadeBSD.org XCOMMENT= SDL port of the popular MAME (Multi Arcade Machine Emulator) X XUSE_ZIP= yes XUSE_XORG= xext xrender xinerama xi XUSE_GL= gl XUSE_GMAKE= yes XUSE_GNOME= gconf2 XMAKE_ENV= PTHREAD_LIBS="${PTHREAD_LIBS}" XUSE_SDL= sdl XMAKEFILE= makefile X XSUB_FILES= pkg-message X X.include <bsd.port.pre.mk> X Xpost-patch: X @${REINPLACE_CMD} -e "s|ui.bdf|${DATADIR}/ui.bdf|g" ${WRKSRC}/src/emu/ui.c X Xdo-install: X ${MKDIR} ${PREFIX}/libexec/sdlmame X.for f in obj/sdl/sdlmame/build/file2str obj/sdl/sdlmame/build/png2bdc \ X testkeys romcmp jedutil regrep X ${INSTALL_PROGRAM} ${WRKSRC}/${f} ${PREFIX}/libexec/sdlmame X.endfor X.for f in sdlmame chdman X ${INSTALL_PROGRAM} ${WRKSRC}/${f} ${PREFIX}/bin/ X.endfor X.if !defined(NOPORTDOCS) X ${MKDIR} ${DOCSDIR} X ${INSTALL_DATA} ${WRKSRC}/*.txt ${DOCSDIR} X ${CP} -R ${WRKSRC}/docs ${DOCSDIR} X.endif X ${MKDIR} ${DATADIR} X ${CP} ${WRKSRC}/ui.bdf ${DATADIR}/ X ${CP} -R ${WRKSRC}/keymaps ${DATADIR}/ X ${MKDIR} ${EXAMPLESDIR} X ${CP} ${FILESDIR}/mame.ini ${EXAMPLESDIR} X Xpost-install: X @${ECHO_CMD} X @${CAT} ${PKGMESSAGE} X @${ECHO_CMD} X X.include <bsd.port.post.mk> END-of-sdlmame/Makefile echo x - sdlmame/distinfo sed 's/^X//' >sdlmame/distinfo << 'END-of-sdlmame/distinfo' XMD5 (sdlmame0128.zip) = 4bea3bb5afd2fba15f5370ef2508b5a0 XSHA256 (sdlmame0128.zip) = fa0a3304640c6bd2f20b95e4528495ad00d348beb7b4b655802384663ba58174 XSIZE (sdlmame0128.zip) = 16970652 END-of-sdlmame/distinfo echo c - sdlmame/files mkdir -p sdlmame/files > /dev/null 2>&1 echo x - sdlmame/files/patch-makefile sed 's/^X//' >sdlmame/files/patch-makefile << 'END-of-sdlmame/files/patch-makefile' X--- makefile.orig 2008-08-31 18:48:22.000000000 +0200 X+++ makefile 2008-10-28 16:13:35.000000000 +0100 X@@ -70,7 +70,7 @@ X #------------------------------------------------- X X # uncomment and specify prefix to be added to the name X-# PREFIX = X+PREFIX = sdl X X # uncomment and specify suffix to be added to the name X # SUFFIX = X@@ -194,8 +194,8 @@ X X # compiler, linker and utilities X AR = @ar X-CC = @gcc X-LD = @gcc X+CC:= @$(CC) X+LD = @$(CC) X MD = -mkdir$(EXE) X RM = @rm -f X X@@ -284,7 +284,7 @@ X #------------------------------------------------- X X # we compile to C89 standard with GNU extensions X-CFLAGS = -std=gnu89 X+CFLAGS += -std=gnu89 X X # this speeds it up a bit by piping between the preprocessor/compiler/assembler X CFLAGS += -pipe X@@ -327,9 +327,6 @@ X # and make all errors into warnings X ifneq ($(OPTIMIZE),0) X CFLAGS += $(ARCHOPTS) -fno-strict-aliasing X-ifneq ($(TARGETOS),os2) X-CFLAGS += -Werror X-endif X endif X X # if symbols are on, make sure we have frame pointers X@@ -354,7 +351,7 @@ X -I$(SRC)/lib/util \ X -I$(SRC)/osd \ X -I$(SRC)/osd/$(OSD) \ X- X+ -I$(LOCALBASE)/include X X X #------------------------------------------------- X@@ -367,7 +364,7 @@ X ifneq ($(TARGETOS),macosx) X ifneq ($(TARGETOS),os2) X ifneq ($(TARGETOS),solaris) X-LDFLAGS = -Wl,--warn-common X+LDFLAGS = -Wl,--warn-common $(PTHREAD_LIBS) -L$(LOCALBASE)/lib X endif X endif X endif END-of-sdlmame/files/patch-makefile echo x - sdlmame/files/patch-sdldir.c sed 's/^X//' >sdlmame/files/patch-sdldir.c << 'END-of-sdlmame/files/patch-sdldir.c' X--- src/osd/sdl/sdldir.c.orig 2008-07-28 21:54:47.000000000 +0200 X+++ src/osd/sdl/sdldir.c 2008-10-28 17:23:14.000000000 +0100 X@@ -32,6 +32,14 @@ X X #include "osdcore.h" X X+#if defined(SDLMAME_WIN32) || defined(SDLMAME_OS2) X+#define PATHSEPCH '\\' X+#define INVPATHSEPCH '/' X+#else X+#define PATHSEPCH '/' X+#define INVPATHSEPCH '\\' X+#endif X+ X struct _osd_directory X { X osd_directory_entry ent; X@@ -96,6 +104,8 @@ X osd_directory *osd_opendir(const char *dirname) X { X osd_directory *dir = NULL; X+ char *tmpstr, *envstr; X+ int i, j; X X dir = malloc(sizeof(osd_directory)); X if (dir) X@@ -104,7 +114,44 @@ X dir->fd = NULL; X } X X- dir->fd = opendir(dirname); X+ tmpstr = malloc(strlen(dirname)+1); X+ strcpy(tmpstr, dirname); X+ X+ if (tmpstr[0] == '$') X+ { X+ char *envval; X+ envstr = malloc(strlen(tmpstr)+1); X+ X+ strcpy(envstr, tmpstr); X+ X+ i = 0; X+ while (envstr[i] != PATHSEPCH && envstr[i] != 0 && envstr[i] != '.') X+ { X+ i++; X+ } X+ X+ envstr[i] = '\0'; X+ X+ envval = getenv(&envstr[1]); X+ if (envval != NULL) X+ { X+ j = strlen(envval) + strlen(tmpstr) + 1; X+ free(tmpstr); X+ tmpstr = malloc(j); X+ X+ // start with the value of $HOME X+ strcpy(tmpstr, envval); X+ // replace the null with a path separator again X+ envstr[i] = PATHSEPCH; X+ // append it X+ strcat(tmpstr, &envstr[i]); X+ } X+ else X+ fprintf(stderr, "Warning: Environment variable %s not found.\n", envstr); X+ free(envstr); X+ } X+ X+ dir->fd = opendir(tmpstr); X X if (dir && (dir->fd == NULL)) X { X@@ -112,6 +159,8 @@ X dir = NULL; X } X X+ if (tmpstr) X+ free(tmpstr); X return dir; X } X END-of-sdlmame/files/patch-sdldir.c echo x - sdlmame/files/mame.ini sed 's/^X//' >sdlmame/files/mame.ini << 'END-of-sdlmame/files/mame.ini' X<EF><BB><BF><UNADORNED0> X X# X# CORE CONFIGURATION OPTIONS X# Xreadconfig 1 X X# X# CORE SEARCH PATH OPTIONS X# Xrompath $HOME/.mame/roms Xsamplepath $HOME/.mame/samples Xartpath $HOME/.mame/artwork Xctrlrpath $HOME/.mame/ctrlr Xinipath $HOME/.mame;.;ini Xfontpath . Xcheatpath $HOME/.mame/cheat X X# X# CORE OUTPUT DIRECTORY OPTIONS X# Xcfg_directory $HOME/.mame/cfg Xnvram_directory $HOME/.mame/nvram Xmemcard_directory $HOME/.mame/memcard Xinput_directory $HOME/.mame/inp Xstate_directory $HOME/.mame/sta Xsnapshot_directory $HOME/.mame/snap Xdiff_directory $HOME/.mame/diff Xcomment_directory $HOME/.mame/comments X X# X# CORE STATE/PLAYBACK OPTIONS X# Xstate Xautosave 0 Xplayback Xrecord Xmngwrite Xaviwrite Xwavwrite Xsnapname %g/%i Xsnapsize auto Xsnapview internal X X# X# CORE PERFORMANCE OPTIONS X# Xautoframeskip 0 Xframeskip 0 Xseconds_to_run 0 Xthrottle 1 Xsleep 1 Xspeed 1.0 Xrefreshspeed 0 X X# X# CORE ROTATION OPTIONS X# Xrotate 1 Xror 0 Xrol 0 Xautoror 0 Xautorol 0 Xflipx 0 Xflipy 0 X X# X# CORE ARTWORK OPTIONS X# Xartwork_crop 0 Xuse_backdrops 1 Xuse_overlays 1 Xuse_bezels 1 X X# X# CORE SCREEN OPTIONS X# Xbrightness 1.0 Xcontrast 1.0 Xgamma 1.0 Xpause_brightness 0.65 X X# X# CORE VECTOR OPTIONS X# Xantialias 1 Xbeam 1.0 Xflicker 0 X X# X# CORE SOUND OPTIONS X# Xsound 1 Xsamplerate 48000 Xsamples 1 Xvolume 0 X X# X# CORE INPUT OPTIONS X# Xcoin_lockout 1 Xctrlr Xmouse 0 Xjoystick 1 Xlightgun 0 Xmultikeyboard 0 Xmultimouse 0 Xsteadykey 0 Xoffscreen_reload 0 Xjoystick_map auto Xjoystick_deadzone 0.3 Xjoystick_saturation 0.85 X X# X# CORE INPUT AUTOMATIC ENABLE OPTIONS X# Xpaddle_device keyboard Xadstick_device keyboard Xpedal_device keyboard Xdial_device keyboard Xtrackball_device keyboard Xlightgun_device keyboard Xpositional_device keyboard Xmouse_device mouse X X# X# CORE DEBUGGING OPTIONS X# Xlog 0 Xverbose 0 Xupdate_in_pause 0 Xdebug 0 Xdebugscript X X# X# CORE MISC OPTIONS X# Xbios Xcheat 0 Xskip_gameinfo 0 X X# X# DEBUGGING OPTIONS X# Xoslog 0 X X# X# PERFORMANCE OPTIONS X# Xmultithreading 0 Xsdlvideofps 0 X X# X# VIDEO OPTIONS X# Xvideo soft Xnumscreens 1 Xwindow 0 Xmaximize 1 Xkeepaspect 1 Xunevenstretch 1 Xeffect none Xcenterh 1 Xcenterv 1 Xwaitvsync 0 Xscalemode none X X# X# OpenGL-SPECIFIC OPTIONS X# Xfilter 1 Xprescale 1 Xgl_forcepow2texture 0 Xgl_notexturerect 0 Xgl_vbo 1 Xgl_pbo 1 Xgl_glsl 0 Xgl_glsl_filter 1 Xglsl_shader_mame0 none Xglsl_shader_mame1 none Xglsl_shader_mame2 none Xglsl_shader_mame3 none Xglsl_shader_mame4 none Xglsl_shader_mame5 none Xglsl_shader_mame6 none Xglsl_shader_mame7 none Xglsl_shader_mame8 none Xglsl_shader_mame9 none Xglsl_shader_screen0 none Xglsl_shader_screen1 none Xglsl_shader_screen2 none Xglsl_shader_screen3 none Xglsl_shader_screen4 none Xglsl_shader_screen5 none Xglsl_shader_screen6 none Xglsl_shader_screen7 none Xglsl_shader_screen8 none Xglsl_shader_screen9 none Xgl_glsl_vid_attr 1 X X# X# PER-WINDOW VIDEO OPTIONS X# Xscreen auto Xaspect auto Xresolution auto Xview auto Xscreen0 auto Xaspect0 auto Xresolution0 auto Xview0 auto Xscreen1 auto Xaspect1 auto Xresolution1 auto Xview1 auto Xscreen2 auto Xaspect2 auto Xresolution2 auto Xview2 auto Xscreen3 auto Xaspect3 auto Xresolution3 auto Xview3 auto X X# X# FULL SCREEN OPTIONS X# Xswitchres 0 Xuseallheads 0 X X# X# SOUND OPTIONS X# Xaudio_latency 3 X X# X# SDL KEYBOARD MAPPING X# Xkeymap 0 Xkeymap_file keymap.dat X X# X# SDL JOYSTICK MAPPING X# Xremapjoys 0 Xremapjoyfile joymap.dat Xsixaxis 0 X X# X# SDL LOWLEVEL DRIVER OPTIONS X# Xvideodriver auto Xaudiodriver auto Xgl_lib auto END-of-sdlmame/files/mame.ini echo x - sdlmame/files/pkg-message.in sed 's/^X//' >sdlmame/files/pkg-message.in << 'END-of-sdlmame/files/pkg-message.in' X============================================================================== X XSDLMAME has been installed. X XThe MAME tools are installed in "%%PREFIX%%/libexec/sdlmame" X XA example configuration file has been installed in "%%EXAMPLESDIR%%/mame.ini" XShould you create a "~/.mame" directory and place it here or Xlaunch "sdlmame -createconfig" and place the mame.ini created instead. X XIf you have a non-qwerty keyboard, you should put in your mame.ini : Xkeymap 1 Xkeymap_file %%DATADIR%%/keymaps/km-XX.txt X X============================================================================== END-of-sdlmame/files/pkg-message.in echo x - sdlmame/pkg-descr sed 's/^X//' >sdlmame/pkg-descr << 'END-of-sdlmame/pkg-descr' XSDLMAME is a port of the popular MAME. There are a few principles that guide Xit's development: X X1) Run on Linux/Unix, Mac OS X, and other SDL supported operating systems with X as few changes as possible to the base Win32 code. This means we can track X changes faster than larger more conventional ports such as MacMAME, and we X also maintain what I call "Firefox compatibilty" where learning a major app X only needs to be done once per application, and it then applies across many X operating systems. If you can use the command-line Win32 MAME, you already X know how to use SDLMAME on any platform you may encounter it on. X X2) MAME developers are important. By keeping quickly up to date, we make it X easy for people on non-Windows platforms to make and submit changes to the X core MAME code, and we offer native implementations of MAME's multi-window X GUI debugger on both Linux/Unix and Mac OS X. X XWWW: http://rbelmont.mameworld.info/?page_id=163 END-of-sdlmame/pkg-descr echo x - sdlmame/pkg-plist sed 's/^X//' >sdlmame/pkg-plist << 'END-of-sdlmame/pkg-plist' Xbin/sdlmame Xbin/chdman Xlibexec/sdlmame/testkeys Xlibexec/sdlmame/file2str Xlibexec/sdlmame/png2bdc Xlibexec/sdlmame/romcmp Xlibexec/sdlmame/jedutil Xlibexec/sdlmame/regrep X%%PORTDOCS%%%%DOCSDIR%%/SDLMAME.txt X%%PORTDOCS%%%%DOCSDIR%%/docs/license.txt X%%PORTDOCS%%%%DOCSDIR%%/docs/mame.txt X%%PORTDOCS%%%%DOCSDIR%%/docs/newvideo.txt X%%PORTDOCS%%%%DOCSDIR%%/docs/windows.txt X%%PORTDOCS%%%%DOCSDIR%%/docs/config.txt X%%PORTDOCS%%%%DOCSDIR%%/whatsnew.txt X%%DATADIR%%/ui.bdf X%%DATADIR%%/keymaps/km-be.txt X%%DATADIR%%/keymaps/km-ch.txt X%%DATADIR%%/keymaps/km-de.txt X%%DATADIR%%/keymaps/km-fr-OSX.txt X%%DATADIR%%/keymaps/km-fr.txt X%%DATADIR%%/keymaps/km_it.txt X%%EXAMPLESDIR%%/mame.ini X@dirrm %%DATADIR%%/keymaps/ X@dirrm %%DATADIR%%/ X%%PORTDOCS%%@dirrm %%DOCSDIR%%/docs X%%PORTDOCS%%@dirrm %%DOCSDIR%% X@dirrm libexec/sdlmame X@dirrm %%EXAMPLESDIR%% END-of-sdlmame/pkg-plist exit >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200811031554.mA3FsJ6E008889>