summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEdwin Groothuis <edwin@FreeBSD.org>2003-10-03 13:51:20 +0000
committerEdwin Groothuis <edwin@FreeBSD.org>2003-10-03 13:51:20 +0000
commitef229c587156d1557d14cda80f1066aa3968c84b (patch)
tree46605d71d57e4d23efaf608a7cd6c887644005d4
parent- Use the correct patch, I forgot to sync dir before commit. (diff)
Update Port: emulators/freesci
- Update to latest release - Remove dependancy on libpng - Add switches for SDL, GGI and DirectFB support - Use X11 renderer as default - portlint Note: Since ScummVM is in games, this port should probably go to games to. It is not directly an emulator, but an game-data interpreter (just like ScummVM) PR: ports/51731 Submitted by: Ulrich Spoerlein <q@uni.de> Approved by: maintainer timeout
Notes
Notes: svn path=/head/; revision=90129
-rw-r--r--emulators/freesci/Makefile91
-rw-r--r--emulators/freesci/distinfo2
-rw-r--r--emulators/freesci/files/patch-src::gdx::drivers::directfb_driver.c11
-rw-r--r--emulators/freesci/files/patch-src::sound::pcmout_oss.c18
-rw-r--r--emulators/freesci/files/patch-src::sound::pcmout_sdl.c35
-rw-r--r--emulators/freesci/pkg-descr2
-rw-r--r--emulators/freesci/pkg-plist14
-rw-r--r--games/freesci/Makefile91
-rw-r--r--games/freesci/distinfo2
-rw-r--r--games/freesci/files/patch-src::gdx::drivers::directfb_driver.c11
-rw-r--r--games/freesci/files/patch-src::sound::pcmout_oss.c18
-rw-r--r--games/freesci/files/patch-src::sound::pcmout_sdl.c35
-rw-r--r--games/freesci/pkg-descr2
-rw-r--r--games/freesci/pkg-plist14
14 files changed, 304 insertions, 42 deletions
diff --git a/emulators/freesci/Makefile b/emulators/freesci/Makefile
index 4bd8e202cf37..44bb1a6a1e05 100644
--- a/emulators/freesci/Makefile
+++ b/emulators/freesci/Makefile
@@ -5,30 +5,87 @@
# $FreeBSD$
#
-PORTNAME= freesci
-PORTVERSION= 0.3.1
-CATEGORIES= emulators
-MASTER_SITES= ftp://ftp.task.gda.pl/pub/games/linuxgames/freesci/ \
- ftp://ftp.shaftnet.org/pub/freesci/ \
- http://pelit.saunalahti.fi/telenation/linuxgames/freesci/
+PORTNAME= freesci
+PORTVERSION= 0.3.4a
+CATEGORIES= emulators games
+MASTER_SITES= ${MASTER_SITE_SAVANNAH} \
+ http://teksolv.de/~jameson/
+MASTER_SITE_SUBDIR=${PORTNAME}/stable.pkg/${PORTVERSION}
-MAINTAINER= greid@FreeBSD.org
-COMMENT= A portable interpreter for SCI games, such as the Space Quest series.
+MAINTAINER= greid@FreeBSD.org
+COMMENT= A portable interpreter for SCI games, such as the Space Quest series
-LIB_DEPENDS= ggi.2:${PORTSDIR}/graphics/libggi \
- png.5:${PORTSDIR}/graphics/png
+USE_BZIP2= yes
+USE_REINPLACE= yes
+USE_XLIB= yes
+GNU_CONFIGURE= yes
-GNU_CONFIGURE= yes
+CONFIGURE_TARGET=
+CONFIGURE_ENV= CFLAGS=${PTHREAD_CFLAGS}
-CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
- LDFLAGS="-L${LOCALBASE}/lib"
+MAN6= freesci-tools.6 freesci.6
-MAN6= freesci-tools.6 sciv.6
+.include <bsd.port.pre.mk>
+
+.if exists(${LOCALBASE}/lib/libSDL-1.1.so.5)
+WITH_SDL= yes
+.endif
+.if exists(${LOCALBASE}/lib/libdirectfb-0.9.so.16)
+WITH_DIRECTFB= yes
+.endif
+.if exists(${LOCALBASE}/lib/libggi.so.2)
+WITH_GGI= yes
+.endif
+
+.if defined(WITH_CONSOLE)
+CONFIGURE_ARGS+= --with-console
+.endif
+
+.if defined(WITH_SDL) && !defined(WITHOUT_SDL)
+LIB_DEPENDS= SDL-1.1.5:${PORTSDIR}/devel/sdl12
+CONFIGURE_ARGS= --with-sdl-prefix=${LOCALBASE}
+.else
+CONFIGURE_ARGS+= --without-sdl
+.endif
+
+.if defined(WITH_DIRECTFB) && !defined(WITHOUT_DIRECTFB)
+LIB_DEPENDS+= directfb-0.9.16:${PORTSDIR}/devel/directfb
+CONFIGURE_ARGS+= --with-directfb-include=${LOCALBASE}/include/directfb \
+ --with-directfb-libraries=${LOCALBASE}/lib
+.else
+CONFIGURE_ARGS+= --without-directfb
+.endif
+
+.if defined(WITH_GGI) && !defined(WITHOUT_GGI)
+LIB_DEPENDS+= ggi.2:${PORTSDIR}/graphics/libggi
+CONFIGURE_ARGS+= --with-ggi-dir=${LOCALBASE}
+.else
+CONFIGURE_ARGS+= --without-ggi
+.endif
+
+pre-everything::
+.if !defined(WITH_CONSOLE)
+ @${ECHO_MSG} "Define WITH_CONSOLE to build console support"
+.endif
+.if !defined(WITH_SDL)
+ @${ECHO_MSG} "Define WITH_SDL to build with SDL support"
+.endif
+.if !defined(WITH_GGI)
+ @${ECHO_MSG} "Define WITH_GGI to build with GGI support"
+.endif
+.if !defined(WITH_DIRECTFB)
+ @${ECHO_MSG} "Define WITH_DIRECTFB to build with DirectFB support"
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e 's/-lpthread/${PTHREAD_LIBS}/g' ${WRKSRC}/configure
post-install:
.if !defined(NOPORTDOCS)
- @${MKDIR} ${PREFIX}/share/freesci
- @${INSTALL_DATA} ${WRKSRC}/doc/sci.sgml ${PREFIX}/share/freesci
+ @${MKDIR} ${PREFIX}/share/games/freesci
+ @${INSTALL_DATA} ${WRKSRC}/doc/sci.sgml ${WRKSRC}/doc/freesci.sgml \
+ ${WRKSRC}/doc/game-list.sgml ${WRKSRC}/doc/sci-kernel.sgml \
+ ${PREFIX}/share/games/freesci
.endif
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
diff --git a/emulators/freesci/distinfo b/emulators/freesci/distinfo
index cc29090d67b7..b859f7792d37 100644
--- a/emulators/freesci/distinfo
+++ b/emulators/freesci/distinfo
@@ -1 +1 @@
-MD5 (freesci-0.3.1.tar.gz) = 78575cd27a7aeb9557f2e17e65ebce8f
+MD5 (freesci-0.3.4a.tar.bz2) = 135bcfc64496b0b7f11e756bbb8fdaf9
diff --git a/emulators/freesci/files/patch-src::gdx::drivers::directfb_driver.c b/emulators/freesci/files/patch-src::gdx::drivers::directfb_driver.c
new file mode 100644
index 000000000000..bd2109f29518
--- /dev/null
+++ b/emulators/freesci/files/patch-src::gdx::drivers::directfb_driver.c
@@ -0,0 +1,11 @@
+--- src/gfx/drivers/directfb_driver.c.orig Thu Feb 20 17:37:19 2003
++++ src/gfx/drivers/directfb_driver.c Thu Feb 20 17:37:46 2003
+@@ -611,7 +611,7 @@
+
+ switch (pixel_format) {
+
+- case DSPF_RGB15:
++ case DSPF_ARGB1555:
+ *bytespp = 2;
+ *rm = 5; _rs = 10;
+ *gm = 5; _gs = 5;
diff --git a/emulators/freesci/files/patch-src::sound::pcmout_oss.c b/emulators/freesci/files/patch-src::sound::pcmout_oss.c
new file mode 100644
index 000000000000..41333d03d40b
--- /dev/null
+++ b/emulators/freesci/files/patch-src::sound::pcmout_oss.c
@@ -0,0 +1,18 @@
+--- src/sound/pcmout_oss.c.orig Thu Feb 20 20:52:48 2003
++++ src/sound/pcmout_oss.c Thu Feb 20 21:02:06 2003
+@@ -75,6 +75,15 @@
+ return -1;
+ }
+
++/* Some OSS don't define the native endian */
++#ifndef AFMT_S16_NE
++ #if defined __i386__ || defined __alpha__
++ #define AFMT_S16_NE AFMT_S16_LE
++ #elif defined __mips__
++ #define AFMT_S16_NE AFMT_S16_BE
++ #endif
++ /* FIXME are these correct? */
++#endif
+ i = AFMT_S16_NE; /* Use NATIVE endian format... */
+ if (ioctl (oss_fd, SNDCTL_DSP_SETFMT, &i)) {
+ fprintf(stderr, "[PCM-OSS] Failed to set device output format\n");
diff --git a/emulators/freesci/files/patch-src::sound::pcmout_sdl.c b/emulators/freesci/files/patch-src::sound::pcmout_sdl.c
new file mode 100644
index 000000000000..eb10e313d6a6
--- /dev/null
+++ b/emulators/freesci/files/patch-src::sound::pcmout_sdl.c
@@ -0,0 +1,35 @@
+--- src/gfx/drivers/sdl_driver.c.orig Tue Feb 4 21:12:10 2003
++++ src/gfx/drivers/sdl_driver.c Tue Feb 4 21:16:42 2003
+@@ -45,7 +45,7 @@
+
+ #ifndef _MSC_VER
+ # include <sys/time.h>
+-# include <SDL/SDL.h>
++# include <SDL11/SDL.h>
+ #else
+ # include <SDL.h>
+ #endif
+--- src/sound/thread_ss_sdl.c.orig Tue Feb 4 21:15:31 2003
++++ src/sound/thread_ss_sdl.c Tue Feb 4 21:16:25 2003
+@@ -32,8 +32,8 @@
+ #ifdef HAVE_SDL
+
+ #ifndef _MSC_VER
+-# include <SDL/SDL.h>
+-# include <SDL/SDL_thread.h>
++# include <SDL11/SDL.h>
++# include <SDL11/SDL_thread.h>
+ # include <sys/timeb.h>
+ #else
+ # include <SDL.h>
+--- src/sound/pcmout_sdl.c.orig Tue Feb 4 21:15:37 2003
++++ src/sound/pcmout_sdl.c Tue Feb 4 21:16:32 2003
+@@ -23,7 +23,7 @@
+
+ #ifndef _MSC_VER
+ # include <sys/time.h>
+-# include <SDL/SDL.h>
++# include <SDL11/SDL.h>
+ #else
+ # include <SDL.h>
+ #endif
diff --git a/emulators/freesci/pkg-descr b/emulators/freesci/pkg-descr
index 5ba1a41edb50..e7eb1e5127be 100644
--- a/emulators/freesci/pkg-descr
+++ b/emulators/freesci/pkg-descr
@@ -11,3 +11,5 @@ This release has the following limitations (plus some bugs):
- George Reid
greid@ukug.uk.freebsd.org
+
+WWW: http://freesci.linuxgames.com/index.shtml
diff --git a/emulators/freesci/pkg-plist b/emulators/freesci/pkg-plist
index 884686e5d897..b8309ef584b6 100644
--- a/emulators/freesci/pkg-plist
+++ b/emulators/freesci/pkg-plist
@@ -1,7 +1,15 @@
bin/sciconsole
bin/scidisasm
bin/sciunpack
+bin/scipack
+bin/freesci
+bin/freesci-setup
bin/sciv
-lib/libsciengine.a
-%%PORTDOCS%%share/freesci/sci.sgml
-%%PORTDOCS%%@dirrm share/freesci
+share/applnk/Games/Adventure/FreeSCI.desktop
+share/icons/hicolor/48x48/apps/freesci.png
+share/games/freesci/config.template
+%%PORTDOCS%%share/games/freesci/sci.sgml
+%%PORTDOCS%%share/games/freesci/sci-kernel.sgml
+%%PORTDOCS%%share/games/freesci/freesci.sgml
+%%PORTDOCS%%share/games/freesci/game-list.sgml
+@dirrm share/games/freesci
diff --git a/games/freesci/Makefile b/games/freesci/Makefile
index 4bd8e202cf37..44bb1a6a1e05 100644
--- a/games/freesci/Makefile
+++ b/games/freesci/Makefile
@@ -5,30 +5,87 @@
# $FreeBSD$
#
-PORTNAME= freesci
-PORTVERSION= 0.3.1
-CATEGORIES= emulators
-MASTER_SITES= ftp://ftp.task.gda.pl/pub/games/linuxgames/freesci/ \
- ftp://ftp.shaftnet.org/pub/freesci/ \
- http://pelit.saunalahti.fi/telenation/linuxgames/freesci/
+PORTNAME= freesci
+PORTVERSION= 0.3.4a
+CATEGORIES= emulators games
+MASTER_SITES= ${MASTER_SITE_SAVANNAH} \
+ http://teksolv.de/~jameson/
+MASTER_SITE_SUBDIR=${PORTNAME}/stable.pkg/${PORTVERSION}
-MAINTAINER= greid@FreeBSD.org
-COMMENT= A portable interpreter for SCI games, such as the Space Quest series.
+MAINTAINER= greid@FreeBSD.org
+COMMENT= A portable interpreter for SCI games, such as the Space Quest series
-LIB_DEPENDS= ggi.2:${PORTSDIR}/graphics/libggi \
- png.5:${PORTSDIR}/graphics/png
+USE_BZIP2= yes
+USE_REINPLACE= yes
+USE_XLIB= yes
+GNU_CONFIGURE= yes
-GNU_CONFIGURE= yes
+CONFIGURE_TARGET=
+CONFIGURE_ENV= CFLAGS=${PTHREAD_CFLAGS}
-CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
- LDFLAGS="-L${LOCALBASE}/lib"
+MAN6= freesci-tools.6 freesci.6
-MAN6= freesci-tools.6 sciv.6
+.include <bsd.port.pre.mk>
+
+.if exists(${LOCALBASE}/lib/libSDL-1.1.so.5)
+WITH_SDL= yes
+.endif
+.if exists(${LOCALBASE}/lib/libdirectfb-0.9.so.16)
+WITH_DIRECTFB= yes
+.endif
+.if exists(${LOCALBASE}/lib/libggi.so.2)
+WITH_GGI= yes
+.endif
+
+.if defined(WITH_CONSOLE)
+CONFIGURE_ARGS+= --with-console
+.endif
+
+.if defined(WITH_SDL) && !defined(WITHOUT_SDL)
+LIB_DEPENDS= SDL-1.1.5:${PORTSDIR}/devel/sdl12
+CONFIGURE_ARGS= --with-sdl-prefix=${LOCALBASE}
+.else
+CONFIGURE_ARGS+= --without-sdl
+.endif
+
+.if defined(WITH_DIRECTFB) && !defined(WITHOUT_DIRECTFB)
+LIB_DEPENDS+= directfb-0.9.16:${PORTSDIR}/devel/directfb
+CONFIGURE_ARGS+= --with-directfb-include=${LOCALBASE}/include/directfb \
+ --with-directfb-libraries=${LOCALBASE}/lib
+.else
+CONFIGURE_ARGS+= --without-directfb
+.endif
+
+.if defined(WITH_GGI) && !defined(WITHOUT_GGI)
+LIB_DEPENDS+= ggi.2:${PORTSDIR}/graphics/libggi
+CONFIGURE_ARGS+= --with-ggi-dir=${LOCALBASE}
+.else
+CONFIGURE_ARGS+= --without-ggi
+.endif
+
+pre-everything::
+.if !defined(WITH_CONSOLE)
+ @${ECHO_MSG} "Define WITH_CONSOLE to build console support"
+.endif
+.if !defined(WITH_SDL)
+ @${ECHO_MSG} "Define WITH_SDL to build with SDL support"
+.endif
+.if !defined(WITH_GGI)
+ @${ECHO_MSG} "Define WITH_GGI to build with GGI support"
+.endif
+.if !defined(WITH_DIRECTFB)
+ @${ECHO_MSG} "Define WITH_DIRECTFB to build with DirectFB support"
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e 's/-lpthread/${PTHREAD_LIBS}/g' ${WRKSRC}/configure
post-install:
.if !defined(NOPORTDOCS)
- @${MKDIR} ${PREFIX}/share/freesci
- @${INSTALL_DATA} ${WRKSRC}/doc/sci.sgml ${PREFIX}/share/freesci
+ @${MKDIR} ${PREFIX}/share/games/freesci
+ @${INSTALL_DATA} ${WRKSRC}/doc/sci.sgml ${WRKSRC}/doc/freesci.sgml \
+ ${WRKSRC}/doc/game-list.sgml ${WRKSRC}/doc/sci-kernel.sgml \
+ ${PREFIX}/share/games/freesci
.endif
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
diff --git a/games/freesci/distinfo b/games/freesci/distinfo
index cc29090d67b7..b859f7792d37 100644
--- a/games/freesci/distinfo
+++ b/games/freesci/distinfo
@@ -1 +1 @@
-MD5 (freesci-0.3.1.tar.gz) = 78575cd27a7aeb9557f2e17e65ebce8f
+MD5 (freesci-0.3.4a.tar.bz2) = 135bcfc64496b0b7f11e756bbb8fdaf9
diff --git a/games/freesci/files/patch-src::gdx::drivers::directfb_driver.c b/games/freesci/files/patch-src::gdx::drivers::directfb_driver.c
new file mode 100644
index 000000000000..bd2109f29518
--- /dev/null
+++ b/games/freesci/files/patch-src::gdx::drivers::directfb_driver.c
@@ -0,0 +1,11 @@
+--- src/gfx/drivers/directfb_driver.c.orig Thu Feb 20 17:37:19 2003
++++ src/gfx/drivers/directfb_driver.c Thu Feb 20 17:37:46 2003
+@@ -611,7 +611,7 @@
+
+ switch (pixel_format) {
+
+- case DSPF_RGB15:
++ case DSPF_ARGB1555:
+ *bytespp = 2;
+ *rm = 5; _rs = 10;
+ *gm = 5; _gs = 5;
diff --git a/games/freesci/files/patch-src::sound::pcmout_oss.c b/games/freesci/files/patch-src::sound::pcmout_oss.c
new file mode 100644
index 000000000000..41333d03d40b
--- /dev/null
+++ b/games/freesci/files/patch-src::sound::pcmout_oss.c
@@ -0,0 +1,18 @@
+--- src/sound/pcmout_oss.c.orig Thu Feb 20 20:52:48 2003
++++ src/sound/pcmout_oss.c Thu Feb 20 21:02:06 2003
+@@ -75,6 +75,15 @@
+ return -1;
+ }
+
++/* Some OSS don't define the native endian */
++#ifndef AFMT_S16_NE
++ #if defined __i386__ || defined __alpha__
++ #define AFMT_S16_NE AFMT_S16_LE
++ #elif defined __mips__
++ #define AFMT_S16_NE AFMT_S16_BE
++ #endif
++ /* FIXME are these correct? */
++#endif
+ i = AFMT_S16_NE; /* Use NATIVE endian format... */
+ if (ioctl (oss_fd, SNDCTL_DSP_SETFMT, &i)) {
+ fprintf(stderr, "[PCM-OSS] Failed to set device output format\n");
diff --git a/games/freesci/files/patch-src::sound::pcmout_sdl.c b/games/freesci/files/patch-src::sound::pcmout_sdl.c
new file mode 100644
index 000000000000..eb10e313d6a6
--- /dev/null
+++ b/games/freesci/files/patch-src::sound::pcmout_sdl.c
@@ -0,0 +1,35 @@
+--- src/gfx/drivers/sdl_driver.c.orig Tue Feb 4 21:12:10 2003
++++ src/gfx/drivers/sdl_driver.c Tue Feb 4 21:16:42 2003
+@@ -45,7 +45,7 @@
+
+ #ifndef _MSC_VER
+ # include <sys/time.h>
+-# include <SDL/SDL.h>
++# include <SDL11/SDL.h>
+ #else
+ # include <SDL.h>
+ #endif
+--- src/sound/thread_ss_sdl.c.orig Tue Feb 4 21:15:31 2003
++++ src/sound/thread_ss_sdl.c Tue Feb 4 21:16:25 2003
+@@ -32,8 +32,8 @@
+ #ifdef HAVE_SDL
+
+ #ifndef _MSC_VER
+-# include <SDL/SDL.h>
+-# include <SDL/SDL_thread.h>
++# include <SDL11/SDL.h>
++# include <SDL11/SDL_thread.h>
+ # include <sys/timeb.h>
+ #else
+ # include <SDL.h>
+--- src/sound/pcmout_sdl.c.orig Tue Feb 4 21:15:37 2003
++++ src/sound/pcmout_sdl.c Tue Feb 4 21:16:32 2003
+@@ -23,7 +23,7 @@
+
+ #ifndef _MSC_VER
+ # include <sys/time.h>
+-# include <SDL/SDL.h>
++# include <SDL11/SDL.h>
+ #else
+ # include <SDL.h>
+ #endif
diff --git a/games/freesci/pkg-descr b/games/freesci/pkg-descr
index 5ba1a41edb50..e7eb1e5127be 100644
--- a/games/freesci/pkg-descr
+++ b/games/freesci/pkg-descr
@@ -11,3 +11,5 @@ This release has the following limitations (plus some bugs):
- George Reid
greid@ukug.uk.freebsd.org
+
+WWW: http://freesci.linuxgames.com/index.shtml
diff --git a/games/freesci/pkg-plist b/games/freesci/pkg-plist
index 884686e5d897..b8309ef584b6 100644
--- a/games/freesci/pkg-plist
+++ b/games/freesci/pkg-plist
@@ -1,7 +1,15 @@
bin/sciconsole
bin/scidisasm
bin/sciunpack
+bin/scipack
+bin/freesci
+bin/freesci-setup
bin/sciv
-lib/libsciengine.a
-%%PORTDOCS%%share/freesci/sci.sgml
-%%PORTDOCS%%@dirrm share/freesci
+share/applnk/Games/Adventure/FreeSCI.desktop
+share/icons/hicolor/48x48/apps/freesci.png
+share/games/freesci/config.template
+%%PORTDOCS%%share/games/freesci/sci.sgml
+%%PORTDOCS%%share/games/freesci/sci-kernel.sgml
+%%PORTDOCS%%share/games/freesci/freesci.sgml
+%%PORTDOCS%%share/games/freesci/game-list.sgml
+@dirrm share/games/freesci