ports/128559: Update ports; emulators/sdlmess update to 0.128 and fix
Emmanuel Vadot
elbarto at arcadebsd.org
Mon Nov 3 17:20:02 UTC 2008
>Number: 128559
>Category: ports
>Synopsis: Update ports; emulators/sdlmess update to 0.128 and fix
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Mon Nov 03 17:20:01 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator: Emmanuel Vadot
>Release: FreeBSD 7.0-RELEASE #0 i386
>Organization:
ArcadeBSD
>Environment:
FreeBSD arcadia 7.0-RELEASE FreeBSD 7.0-RELEASE #0: Sun Feb 24 19:59:52 UTC 2008 root at logan.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC i386
>Description:
Update to 0.128
Remove useless sdlmess wrapper script, sdlmess use ~/.mess by default.
>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:
#
# sdlmess
# sdlmess/files
# sdlmess/files/patch-makefile
# sdlmess/files/patch-sdldir.c
# sdlmess/files/mess.ini
# sdlmess/files/pkg-message.in
# sdlmess/Makefile
# sdlmess/distinfo
# sdlmess/pkg-descr
# sdlmess/pkg-plist
#
echo c - sdlmess
mkdir -p sdlmess > /dev/null 2>&1
echo c - sdlmess/files
mkdir -p sdlmess/files > /dev/null 2>&1
echo x - sdlmess/files/patch-makefile
sed 's/^X//' >sdlmess/files/patch-makefile << 'END-of-sdlmess/files/patch-makefile'
X--- makefile.sdl.orig 2008-10-30 14:27:01.000000000 +0100
X+++ makefile.sdl 2008-10-30 14:29:06.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-sdlmess/files/patch-makefile
echo x - sdlmess/files/patch-sdldir.c
sed 's/^X//' >sdlmess/files/patch-sdldir.c << 'END-of-sdlmess/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-sdlmess/files/patch-sdldir.c
echo x - sdlmess/files/mess.ini
sed 's/^X//' >sdlmess/files/mess.ini << 'END-of-sdlmess/files/mess.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/.mess/roms
Xhashpath $HOME/.mess/hash
Xsamplepath $HOME/.mess/samples
Xartpath $HOME/.mess/artwork
Xctrlrpath $HOME/.mess/ctrlr
Xinipath $HOME/.mess;.;ini
Xfontpath .
Xcheatpath $HOME/.mess/cheat
X
X#
X# CORE OUTPUT DIRECTORY OPTIONS
X#
Xcfg_directory $HOME/.mess/cfg
Xnvram_directory $HOME/.mess/nvram
Xmemcard_directory $HOME/.mess/memcard
Xinput_directory $HOME/.mess/inp
Xstate_directory $HOME/.mess/sta
Xsnapshot_directory $HOME/.mess/snap
Xdiff_directory $HOME/.mess/diff
Xcomment_directory $HOME/.mess/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
Xuimodekey ITEM_ID_SCRLOCK
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
X
X#
X# MESS SPECIFIC OPTIONS
X#
Xramsize
Xwriteconfig 0
Xskip_warnings 0
Xnatural 0
END-of-sdlmess/files/mess.ini
echo x - sdlmess/files/pkg-message.in
sed 's/^X//' >sdlmess/files/pkg-message.in << 'END-of-sdlmess/files/pkg-message.in'
X==============================================================================
X
XSDLMESS has been installed.
X
XA example configuration file has been installed in "%%EXAMPLESDIR%%/mess.ini"
XShould you create a "~/.mess" directory and place it here or
Xlaunch "sdlmess -createconfig" and place the mess.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-sdlmess/files/pkg-message.in
echo x - sdlmess/Makefile
sed 's/^X//' >sdlmess/Makefile << 'END-of-sdlmess/Makefile'
X# New ports collection makefile for: sdlmess
X# Date created: 28 October 2008
X# Whom: elbarto
X#
X# $FreeBSD$
X#
X
XPORTNAME= sdlmess
XPORTVERSION= 0.128
XCATEGORIES= emulators
XMASTER_SITES= http://distfiles.arcadebsd.org/
XDISTNAME= ${PORTNAME}${PORTVERSION:S/.//}
X
XMAINTAINER= elbarto at ArcadeBSD.org
XCOMMENT= SDL port of the popular MESS (Machine Emulator Super System)
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.sdl
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.for f in sdlmess imgtool messtest
X ${INSTALL_PROGRAM} ${WRKSRC}/${f} ${PREFIX}/bin/
X.endfor
X.if !defined(NOPORTDOCS)
X ${MKDIR} ${DOCSDIR}/docs/images
X ${INSTALL_DATA} ${WRKSRC}/*.txt ${DOCSDIR}
X ${CP} ${WRKSRC}/docs/config.txt ${DOCSDIR}/docs/
X ${CP} ${WRKSRC}/docs/credits.htm ${DOCSDIR}/docs/
X ${CP} ${WRKSRC}/docs/faq.htm ${DOCSDIR}/docs/
X ${CP} ${WRKSRC}/docs/images/logo.gif ${DOCSDIR}/docs//images/
X ${CP} ${WRKSRC}/docs/imgtool.txt ${DOCSDIR}/docs/
X ${CP} ${WRKSRC}/docs/license.txt ${DOCSDIR}/docs/
X ${CP} ${WRKSRC}/docs/mame.txt ${DOCSDIR}/docs/
X ${CP} ${WRKSRC}/docs/messnew.txt ${DOCSDIR}/docs/
X ${CP} ${WRKSRC}/docs/newvideo.txt ${DOCSDIR}/docs/
X ${CP} ${WRKSRC}/docs/wintoc.xml ${DOCSDIR}/docs/
X.endif
X ${MKDIR} ${DATADIR}
X ${CP} ${WRKSRC}/ui.bdf ${DATADIR}/
X ${CP} -R ${WRKSRC}/keymaps ${DATADIR}/
X ${MKDIR} ${EXAMPLESDIR}
X ${CP} ${FILESDIR}/mess.ini ${EXAMPLESDIR}
X
Xpost-install:
X @${ECHO_CMD}
X @${CAT} ${PKGMESSAGE}
X @${ECHO_CMD}
X
X.include <bsd.port.post.mk>
END-of-sdlmess/Makefile
echo x - sdlmess/distinfo
sed 's/^X//' >sdlmess/distinfo << 'END-of-sdlmess/distinfo'
XMD5 (sdlmess0128.zip) = 00f6bbca85183a56c7160bc03b3631e0
XSHA256 (sdlmess0128.zip) = ca7f7aa07ac4c629ceb0fd4d31a381f9c455e9811387b6755891933cef2f64dc
XSIZE (sdlmess0128.zip) = 30759362
END-of-sdlmess/distinfo
echo x - sdlmess/pkg-descr
sed 's/^X//' >sdlmess/pkg-descr << 'END-of-sdlmess/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-sdlmess/pkg-descr
echo x - sdlmess/pkg-plist
sed 's/^X//' >sdlmess/pkg-plist << 'END-of-sdlmess/pkg-plist'
Xbin/sdlmess
Xbin/imgtool
Xbin/messtest
X%%PORTDOCS%%%%DOCSDIR%%/SDLMESS.txt
X%%PORTDOCS%%%%DOCSDIR%%/whatsnew.txt
X%%PORTDOCS%%%%DOCSDIR%%/docs/license.txt
X%%PORTDOCS%%%%DOCSDIR%%/docs/mame.txt
X%%PORTDOCS%%%%DOCSDIR%%/docs/messnew.txt
X%%PORTDOCS%%%%DOCSDIR%%/docs/newvideo.txt
X%%PORTDOCS%%%%DOCSDIR%%/docs/config.txt
X%%PORTDOCS%%%%DOCSDIR%%/docs/imgtool.txt
X%%PORTDOCS%%%%DOCSDIR%%/docs/credits.htm
X%%PORTDOCS%%%%DOCSDIR%%/docs/faq.htm
X%%PORTDOCS%%%%DOCSDIR%%/docs/wintoc.xml
X%%PORTDOCS%%%%DOCSDIR%%/docs/images/logo.gif
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%%/mess.ini
X at dirrm %%DATADIR%%/keymaps
X at dirrm %%DATADIR%%
X%%PORTDOCS%%@dirrm %%DOCSDIR%%/docs/images
X%%PORTDOCS%%@dirrm %%DOCSDIR%%/docs
X%%PORTDOCS%%@dirrm %%DOCSDIR%%
X at dirrm %%EXAMPLESDIR%%
END-of-sdlmess/pkg-plist
exit
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list