Index: emulators/dgen-sdl/Makefile @@ -7,20 +7,46 @@ PORTNAME= dgen-sdl PORTVERSION= 1.23 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= emulators -MASTER_SITES= http://src4.narod.ru/ +MASTER_SITES= SF/dgen/dgen/sdl-${PORTVERSION} \ + http://tamentis.com/projects/dgen/files \ + http://launchpadlibrarian.net/10817989/:quilt + +DISTFILES= ${PORTNAME}-${PORTVERSION}${EXTRACT_SUFX} \ + patches.tar.gz:quilt MAINTAINER= spam@rm-rf.kiev.ua COMMENT= A wonderful Sega Genesis/MegaDrive emulator -BUILD_DEPENDS= nasm:${PORTSDIR}/devel/nasm +NO_CDROM= License only permits non-commerical use, modified versions of MZ80 are not allowed to be distributed +NO_PACKAGE= ${NO_CDROM} +RESTRICTED= ${NO_CDROM} +RESTRICTED_FILES= patches.tar.gz USE_SDL= sdl USE_GL= yes GNU_CONFIGURE= yes +CONFIGURE_ARGS+= --with-extra-opt + +EXTRA_PATCHES= ${WRKDIR}/patches/fm-do-not-use-long.patch \ + ${WRKDIR}/patches/mz80-pbPC-pointer-subtract.patch \ + ${WRKDIR}/patches/mz80-stdint.patch \ + ${WRKDIR}/patches/mz80init.patch \ + ${WRKDIR}/patches/ras-emulate-pointer-wraparound.patch \ + ${WRKDIR}/patches/sdl-use-stdint.patch + MAN1= dgen.1 tobin.1 MAN5= dgenrc.5 -.include +post-extract: + @${REINPLACE_CMD} -e 's|^Index: dgen-|Index: ../dgen-sdl-|' ${WRKDIR}/patches/* + +.include + +.if ${ARCH} == i386 +BUILD_DEPENDS+= nasm:${PORTSDIR}/devel/nasm +.endif + +.include Index: emulators/dgen-sdl/Makefile @@ -1,3 +1,4 @@ -MD5 (dgen-sdl-1.23.tar.gz) = b1896c1b21ddb152626aec2e8a157a3a SHA256 (dgen-sdl-1.23.tar.gz) = 44396b3b324433187cf7082d1059cd9f519f02accddd667e627a57ff8514d436 SIZE (dgen-sdl-1.23.tar.gz) = 340556 +SHA256 (patches.tar.gz) = 457c9b3580c199a7873f87c3e7579325f3d5b0fd88d032e6e30419d983ea4cf3 +SIZE (patches.tar.gz) = 7778 Index: emulators/dgen-sdl/pkg-descr @@ -1 +1,3 @@ DGen is a wonderful Sega Genesis/MegaDrive emulator. + +WWW: http://tamentis.com/projects/dgen Index: emulators/dgen-sdl/patch-configure @@ -1,8 +1,19 @@ - -$FreeBSD: ports/emulators/dgen-sdl/files/patch-configure,v 1.1 2001/02/23 17:54:29 sobomax Exp $ - ---- configure 2001/02/23 11:37:15 1.1 -+++ configure 2001/02/23 11:37:28 +Index: configure +@@ -897,12 +897,12 @@ + + if test x$ADD_OPT \!= xno; then + case $machtype in +- i?86) ++ disabled) + CFLAGS="$CFLAGS -O3 -mpentium -march=pentium -fstrength-reduce -fomit-frame-pointer -frerun-cse-after-loop -funroll-loops -ffast-math -malign-functions=5 -malign-jumps=5 -malign-loops=5 -malign-double -fno-exceptions -fno-rtti" + CXXFLAGS="$CXXFLAGS -O3 -mpentium -march=pentium -fstrength-reduce -fomit-frame-pointer -frerun-cse-after-loop -funroll-loops -ffast-math -malign-functions=5 -malign-jumps=5 -malign-loops=5 -malign-double -fno-exceptions -fno-rtti" + ;; + *) +- CFLAGS="$CFLAGS -O3 -ffast-math -fomit-frame-pointer -fno-exceptions -fno-rtti -funroll-loops -frerun-cse-after-loop" ++ CFLAGS="$CFLAGS -O3 -ffast-math -fomit-frame-pointer -fno-exceptions -funroll-loops -frerun-cse-after-loop" + CXXFLAGS="$CXXFLAGS -O3 -ffast-math -fomit-frame-pointer -fno-exceptions -fno-rtti -funroll-loops -frerun-cse-after-loop" + ;; + esac @@ -1779,7 +1779,7 @@ #include #include Index: emulators/dgen-sdl/patch-rc.cpp @@ -0,0 +1,26 @@ +Index: rc.cpp +@@ -14,13 +14,13 @@ + + + // CTV names +-char *ctv_names[NUM_CTV] = { "off", "blur", "scanline", "interlace" }; ++char const *ctv_names[NUM_CTV] = { "off", "blur", "scanline", "interlace" }; + + // The table of strings and the keysyms they map to. + // The order is a bit weird, since this was originally a mapping for the SVGALib + // scancodes, and I just added the SDL stuff on top of it. + struct rc_keysym { +- char *name; ++ char const *name; + long keysym; + } keysyms[] = { + { "ESCAPE", PDK_ESCAPE }, +@@ -300,7 +300,7 @@ + /* This is a table of all the RC options, the variables they affect, and the + * functions to parse their values. */ + struct rc_field { +- char *fieldname; ++ char const *fieldname; + long (*parser)(const char*); + long *variable; + } rc_fields[] = { Index: emulators/dgen-sdl/patch-rc.h @@ -0,0 +1,10 @@ +Index: rc.h +@@ -16,7 +16,7 @@ + #define KEYSYM_MOD_META 0x08000000 + + // All the CTV engine names, in string form for the RC and message bar +-extern char *ctv_names[]; ++extern char const *ctv_names[]; + + // Provide a prototype to the parse_rc function in rc.cpp + void parse_rc(const char *file);