ports/82141: Update port: emulators/generator
Alejandro Pulver
alejandro at varnet.biz
Sat Jun 11 15:10:14 UTC 2005
>Number: 82141
>Category: ports
>Synopsis: Update port: emulators/generator
>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: Sat Jun 11 15:10:12 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator: Alejandro Pulver
>Release: FreeBSD 5.4-RELEASE i386
>Organization:
>Environment:
System: FreeBSD 5.4-RELEASE #0: Sat May 21 12:14:47 ART 2005
root at phobos.mars.bsd:/usr/src/sys/i386/compile/ATHLON-ALE
>Description:
>How-To-Repeat:
>Fix:
--- generator.diff begins here ---
diff -urN /usr/ports/emulators/generator/Makefile generator/Makefile
--- /usr/ports/emulators/generator/Makefile Tue Mar 16 01:23:36 2004
+++ generator/Makefile Sat Jun 11 12:04:35 2005
@@ -1,53 +1,85 @@
-# New ports collection makefile for: generator
+# New ports collection makefile for: emulators/generator
# Date created: 16 April 2001
# Whom: Yukihiro Nakai <nakai at FreeBSD.org>
#
-# $FreeBSD: ports/emulators/generator/Makefile,v 1.11 2004/03/16 04:23:36 edwin Exp $
+# $FreeBSD$
#
PORTNAME= generator
PORTVERSION= 0.35
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= emulators
MASTER_SITES= http://www.squish.net/generator/files/
-MAINTAINER= ports at FreeBSD.org
+MAINTAINER= alejandro at varnet.biz
COMMENT= SEGA Genesis emulator
LIB_DEPENDS= jpeg.9:${PORTSDIR}/graphics/jpeg
-PLIST_FILES= bin/generator-gtk
-USE_GNOME= gtk12
USE_SDL= sdl
-USE_REINPLACE= yes
USE_GMAKE= yes
-GNU_CONFIGURE= yes
+USE_GNOME= gtk12
+
+OPTIONS= OPTIMIZED_CFLAGS "Enable compilation optimizations" on \
+ RAZE "Use RAZE z80 emulation (only for i386)" on \
+ SDL_AUDIO "Use SDL for audio" off
+
+GNU_CONFIGURE= yes
CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
-CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
- LDFLAGS="-L${LOCALBASE}/lib"
-CONFIGURE_ARGS= --with-gtk
+CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
+ LDFLAGS="-L${LOCALBASE}/lib"
+CONFIGURE_ARGS+= --with-gtk
+
MAKE_ARGS= ACLOCAL="${TRUE}" AUTOCONF="${TRUE}" AUTOMAKE="${TRUE}" \
AUTOHEADER="${TRUE}"
+PLIST_FILES= bin/${PORTNAME}-gtk
+
+post-install:
+ @${ECHO_CMD}
+ @${CAT} ${PKGMESSAGE}
+ @${ECHO_CMD}
+
.include <bsd.port.pre.mk>
.if ${ARCH} == "alpha" && ${OSVERSION} >= 502102
BROKEN= "Does not configure on alpha 5.x"
.endif
-.if ${ARCH} == "i386"
-BUILD_DEPENDS+= nasm:${PORTSDIR}/devel/nasm
+# Generator needs GCC 2.95.x or GCC >= 3.4.2 to work properly.
+# Generator does not automatically determine the GCC version.
+
+.if ${OSVERSION} < 400012
+# GCC < 2.95 is in the base system.
+USE_GCC= 2.95
+.endif
+
+.if ${OSVERSION} >= 500035 && ${OSVERSION} < 502126
+# GCC > 2.95 (3.X) && GCC < 3.4.2 is in the base system.
+USE_GCC= 3.4
+.endif
+
+.if ${OSVERSION} < 500035
+CONFIGURE_ARGS+= --with-gcc=2
+.endif
+
+.if ${OSVERSION} >= 500035
+CONFIGURE_ARGS+= --with-gcc=3
+.endif
+
+.if defined(WITHOUT_OPTIMIZED_CFLAGS)
+CONFIGURE_ARGS+= --without-gcc
+.endif
+
+.if defined(WITH_RAZE) && ${ARCH} == "i386"
+BUILD_DEPENDS+= nasm:${PORTSDIR}/devel/nasm
CONFIGURE_ARGS+= --with-raze
.else
CONFIGURE_ARGS+= --with-cmz80
.endif
-post-patch:
- @${REINPLACE_CMD} -e 's|-O3||g ; \
- s|-minline-all-stringops||g ; \
- s|-march=pentium||g ; \
- s|-malign-loops=5||g ; \
- s|-malign-jumps=5||g ; \
- s|-malign-functions=5||g' ${WRKSRC}/configure
+.if defined(WITH_SDL_AUDIO)
+CONFIGURE_ARGS+= --with-sdl-audio
+.endif
.include <bsd.port.post.mk>
diff -urN /usr/ports/emulators/generator/files/patch-configure generator/files/patch-configure
--- /usr/ports/emulators/generator/files/patch-configure Wed Dec 31 21:00:00 1969
+++ generator/files/patch-configure Sat Jun 11 11:56:30 2005
@@ -0,0 +1,18 @@
+--- configure.orig Mon May 5 12:08:27 2003
++++ configure Sat Jun 11 11:55:59 2005
+@@ -1919,15 +1919,6 @@
+ echo "${ECHO_T}Turning on gcc 3 optimisations" >&6
+ CFLAGS="$CFLAGS -minline-all-stringops -fno-math-errno"
+ fi
+- case $target_cpu in
+- i?86) echo "$as_me:$LINENO: result: Turning on pentium optimisations" >&5
+-echo "${ECHO_T}Turning on pentium optimisations" >&6
+- # cannot do malign-double as we link to other libraries and it
+- # would break binary compatibility
+- CFLAGS="$CFLAGS -march=pentium -malign-loops=5"
+- CFLAGS="$CFLAGS -malign-jumps=5 -malign-functions=5"
+- ;;
+- esac
+ else
+ { echo "$as_me:$LINENO: WARNING: You did not opt for gcc optimisations!" >&5
+ echo "$as_me: WARNING: You did not opt for gcc optimisations!" >&2;}
diff -urN /usr/ports/emulators/generator/pkg-descr generator/pkg-descr
--- /usr/ports/emulators/generator/pkg-descr Sat Apr 21 21:32:30 2001
+++ generator/pkg-descr Sat May 21 16:07:07 2005
@@ -1,6 +1,23 @@
SEGA Genesis emulator
-I ported to FreeBSD with all sound support off.
-If you want the sound support, you hack.
+Generator is an open source emulator designed to emulate the Sega Genesis /
+Mega Drive console, a popular games machine produced in the early 1990s. It is
+a portable program written in C and has been ported to the Amiga, Macintosh,
+Windows and even pocket PCs such as the iPAQ and Cassiopeia. Natively it
+compiles under unix for X Windows with either tcl/tk or gtk/SDL, for svgalib
+and even cross-compiles to DOS with djgpp/allegro.
+
+Generator uses it's own custom 68000 processor emulation which is and uses
+compilation techniques such as block-marking, flag calculation removal,
+operand pre-calculation, endian pre-conversion etc. There are approximately
+1600 C routines generated by the first stage of compilation to cope with the
+67 instruction families. These include two versions of every instruction - one
+that calculates flags and one that doesn't, so that unnecessary flag
+computation is avoided.
+
+Author: James Ponder
WWW: http://www.squish.net/generator/
+
+- Alejandro Pulver
+alejandro at varnet.biz
diff -urN /usr/ports/emulators/generator/pkg-message generator/pkg-message
--- /usr/ports/emulators/generator/pkg-message Wed Dec 31 21:00:00 1969
+++ generator/pkg-message Sat May 21 16:07:07 2005
@@ -0,0 +1,19 @@
+Generator has been installed.
+
+If you enabled the option SDL_AUDIO and your sound is delayed try setting the
+variable "sound_maxfields" and "sound_minfields" in your configuration file
+(usually "~/.genrc") to lower values. Like:
+
+# default: 5
+sound_minfields = 1
+
+# default: 10
+sound_maxfields = 2
+
+To gain more performance set the CPUTYPE variable in "make.conf" as appropiate
+(in addition to enabling the build option OPTIMIZED_CFLAGS), then rebuild and
+install generator.
+
+NOTE: if you want more features use the port "emulators/generator-cbiere".
+
+For more information visit: http://www.squish.net/generator/
--- generator.diff ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list