aboutsummaryrefslogtreecommitdiffstats
path: root/lang/squeak
diff options
context:
space:
mode:
authorvs <vs@FreeBSD.org>2004-06-03 15:15:49 +0800
committervs <vs@FreeBSD.org>2004-06-03 15:15:49 +0800
commit0761ee1bb998d57f8c51a7637f6291fa1edea97a (patch)
tree73d484a192ed64f18c2579f3864924f7883139af /lang/squeak
parentb521e0581b0fc8937b204a5900e8ad3cd1d22e99 (diff)
downloadfreebsd-ports-gnome-0761ee1bb998d57f8c51a7637f6291fa1edea97a.tar.gz
freebsd-ports-gnome-0761ee1bb998d57f8c51a7637f6291fa1edea97a.tar.zst
freebsd-ports-gnome-0761ee1bb998d57f8c51a7637f6291fa1edea97a.zip
Resurrect lang/squeak: Squeak3 is the latest stable version.
Resurrection suggested by: marcus
Diffstat (limited to 'lang/squeak')
-rw-r--r--lang/squeak/Makefile176
-rw-r--r--lang/squeak/distinfo8
-rw-r--r--lang/squeak/files/patch-platforms::Cross::plugins::DropPlugin::DropPlugin.h7
-rw-r--r--lang/squeak/files/patch-platforms::Cross::plugins::JPEGReadWriter2Plugin::JPEGReadWriter2Plugin.h10
-rw-r--r--lang/squeak/files/patch-platforms::Cross::plugins::JPEGReadWriter2Plugin::jmemdatasrc.c10
-rw-r--r--lang/squeak/files/patch-platforms::unix::config::configure10
-rw-r--r--lang/squeak/files/patch-platforms::unix::plugins::PseudoTTYPlugin::openpty.h14
-rw-r--r--lang/squeak/files/patch-platforms::unix::vm-sound-OSS::acinclude.m411
-rw-r--r--lang/squeak/pkg-descr24
-rw-r--r--lang/squeak/pkg-plist30
10 files changed, 300 insertions, 0 deletions
diff --git a/lang/squeak/Makefile b/lang/squeak/Makefile
new file mode 100644
index 000000000000..383704d29abe
--- /dev/null
+++ b/lang/squeak/Makefile
@@ -0,0 +1,176 @@
+# New ports collection makefile for: squeak
+# Date created: 12 October 2001
+# Whom: roland.jesse@gmx.net
+#
+# $FreeBSD$
+#
+
+##################################################
+PORTNAME= squeak
+PORTVERSION= 3.6
+CATEGORIES= lang
+VMVERSION= 3.6-3
+IMAGEVERSION= 3.6
+PATCHNUMBER= 5429
+
+##################################################
+MASTER_SITES= ftp://st.cs.uiuc.edu/Smalltalk/Squeak/3.6/ \
+ ftp://st.cs.uiuc.edu/Smalltalk/Squeak/3.6/unix-linux/ \
+ ftp://ftp.cs.uni-magdeburg.de/pub/Smalltalk/Smalltalk/Squeak/3.6/ \
+ ftp://ftp.cs.uni-magdeburg.de/pub/Smalltalk/Smalltalk/Squeak/3.6/unix-linux/ \
+ http://www-sor.inria.fr/~piumarta/squeak/unix/release/ \
+
+DISTFILES= Squeak-${VMVERSION}.src.tar.gz \
+ Squeak${IMAGEVERSION}-${PATCHNUMBER}-basic.zip \
+ Squeak${IMAGEVERSION}-${PATCHNUMBER}-full.zip \
+ SqueakV3.sources.gz
+
+DIST_SUBDIR= squeak
+EXTRACT_ONLY= Squeak-${VMVERSION}.src.tar.gz
+
+##################################################
+MAINTAINER= chris@chrisburkert.de
+COMMENT= Full Smalltalk 80 with portability to UNIX, Mac, and Windows.
+
+##################################################
+ONLY_FOR_ARCHS= i386 sparc64
+MAN1= inisqueak.1 squeak.1
+USE_XLIB= yes
+USE_GMAKE= yes
+USE_REINPLACE= yes
+HAS_CONFIGURE= yes
+
+# Don't set USE_ZIP as this breaks EXTRACT_CMD.
+BUILD_DEPENDS= unzip:${PORTSDIR}/archivers/unzip
+
+# shared Libaries are to be installed in:
+LDCONFIG_DIRS= ${PREFIX}/share/squeak/${VMVERSION}
+
+FILES_TO_GZIP= Squeak${IMAGEVERSION}-${PATCHNUMBER}-basic.image \
+ Squeak${IMAGEVERSION}-${PATCHNUMBER}-basic.changes \
+ Squeak${IMAGEVERSION}-${PATCHNUMBER}-full.image \
+ Squeak${IMAGEVERSION}-${PATCHNUMBER}-full.changes
+
+##################################################
+# Configure and Build
+WRKSRC= ${WRKDIR}/Squeak-${VMVERSION}
+CONFIGURE_WRKSRC= ${WRKSRC}/build
+BUILD_WRKSRC= ${CONFIGURE_WRKSRC}
+INSTALL_WRKSRC= ${CONFIGURE_WRKSRC}
+CONFIGURE_SCRIPT= ../platforms/unix/config/configure
+CONFIGURE_ARGS+= --libdir=${PREFIX}/share \
+ --without-quartz
+# don't pass "-s" to install to avoid trying to strip a shell script
+CONFIGURE_ENV=
+
+##################################################
+# Knobs
+.if defined(WITH_RFB) && (${WITH_RFB}=="no")
+CONFIGURE_ARGS+= --without-rfb
+.endif
+
+.if defined(WITH_NPSQUEAK) && (${WITH_NPSQUEAK}=="no")
+CONFIGURE_ARGS+= --without-npsqueak
+PLIST_NPSQUEAK= "@comment feature not wanted - "
+.else
+PLIST_NPSQUEAK=
+.endif
+
+.if defined(WITH_X) && (${WITH_X}=="no")
+CONFIGURE_ARGS+= --without-x
+PLIST_X= "@comment feature not wanted - "
+.else
+CONFIGURE_ARGS+= --with-x
+PLIST_X=
+.endif
+
+.if defined(WITH_MPG_MMX) && (${WITH_MPG_MMX}=="yes")
+CONFIGURE_ARGS+= --enable-mpg-mmx
+.endif
+
+.ifdef (CC)
+MAKE_ARGS+= CC="${CC}"
+.endif
+
+.ifdef (CFLAGS)
+MAKE_ARGS+= CCFLAGS="${CFLAGS}"
+.endif
+
+PLIST_SUB= IMAGEVERSION=${IMAGEVERSION}\
+ PATCHNUMBER=${PATCHNUMBER}\
+ VMVERSION=${VMVERSION}\
+ PLIST_NPSQUEAK=${PLIST_NPSQUEAK}\
+ PLIST_X=${PLIST_X}
+
+.include <bsd.port.pre.mk>
+
+##################################################
+pre-everything::
+ @${ECHO_MSG} " "
+ @${ECHO_MSG} " ------------------------- Please note: -------------------------"
+ @${ECHO_MSG} " "
+ @${ECHO_MSG} " Squeak has the following tunable options:"
+ @${ECHO_MSG} " "
+ @${ECHO_MSG} " WITH_MPG_MMX= [yes|no] MMX support (MPG plugin)"
+ @${ECHO_MSG} " ^^ (default: disabled)"
+ @${ECHO_MSG} " WITH_NPSQUEAK= [yes|no] browser plugin support"
+ @${ECHO_MSG} " ^^^ (default: enabled)"
+ @${ECHO_MSG} " WITH_RFB= [yes|no] remote frame buffer support"
+ @${ECHO_MSG} " ^^^ (default: enabled)"
+ @${ECHO_MSG} " WITH_X= [yes|no] X Windows support"
+ @${ECHO_MSG} " ^^^ (default: enabled)"
+ @${ECHO_MSG} " "
+ @${ECHO_MSG} " additional make arguments"
+ @${ECHO_MSG} " CC=<aString>"
+ @${ECHO_MSG} " CFLAGS=<aString>"
+ @${ECHO_MSG} " "
+ @${ECHO_MSG} " ------------------ Thanks for your attention! ------------------"
+ @${ECHO_MSG} " "
+
+##################################################
+pre-configure:
+ @${MKDIR} ${CONFIGURE_WRKSRC}
+ @cd ${WRKSRC}/platforms/unix/npsqueak && \
+ ${REINPLACE_CMD} -e 's|include|include -I${X11BASE}/include|g' Makefile
+
+##################################################
+post-configure:
+ @${REINPLACE_CMD} -E \
+ -e s'|^(prefix).*$$|\1=${PREFIX}|' \
+ -e s'|^(docdir).*$$|\1=${DOCSDIR}|' \
+ ${CONFIGURE_WRKSRC}/Makefile
+
+##################################################
+post-install:
+ (cd ${DISTDIR}/${DIST_SUBDIR} && ${INSTALL_DATA} SqueakV3.sources.gz ${PREFIX}/share/squeak/)
+ (cd ${PREFIX}/share/squeak && ${EXTRACT_CMD} -d SqueakV3.sources.gz)
+ (cd ${DISTDIR}/${DIST_SUBDIR} && unzip -u Squeak${IMAGEVERSION}-${PATCHNUMBER}-basic.zip -d ${WRKDIR})
+ (cd ${DISTDIR}/${DIST_SUBDIR} && unzip -u Squeak${IMAGEVERSION}-${PATCHNUMBER}-full.zip -d ${WRKDIR})
+ (cd ${WRKDIR} && ${INSTALL_DATA} ReadMe.txt ${PREFIX}/share/squeak/)
+.for file in ${FILES_TO_GZIP}
+ (cd ${WRKDIR} && ${GZIP_CMD} ${file} && ${INSTALL_DATA} ${file}.gz ${PREFIX}/share/squeak/)
+.endfor
+ ${SED} -e 's|VERSION=3.5-5180|VERSION=${IMAGEVERSION}-${PATCHNUMBER}|' \
+ -e 's|IMAGE=Squeak3.5-5180|IMAGE=Squeak${IMAGEVERSION}-${PATCHNUMBER}|' \
+ -e 's|CHANGES=Squeak3.5-5180|CHANGES=Squeak${IMAGEVERSION}-${PATCHNUMBER}|' \
+ ${WRKSRC}/build/inisqueak > ${WRKSRC}/build/inisqueak.tmp
+ ${INSTALL_SCRIPT} ${WRKSRC}/build/inisqueak.tmp ${PREFIX}/bin/inisqueak
+ ${CHMOD} 755 ${PREFIX}/bin/inisqueak
+ @${ECHO_MSG} " "
+ @${ECHO_MSG} " ------------------------- Please note: -------------------------"
+ @${ECHO_MSG} " "
+ @${ECHO_MSG} " In order to be able to make use of squeak you need to have an"
+ @${ECHO_MSG} " image and a changes file in your working directory as well"
+ @${ECHO_MSG} " as access to a source file. This is easy by using inisqueak."
+ @${ECHO_MSG} " Please see the inisqueak(1) manpage for details."
+ @${ECHO_MSG} " "
+ @${ECHO_MSG} " Make sure you have the following values in your environment"
+ @${ECHO_MSG} " variables:"
+ @${ECHO_MSG} " PATH: ${PREFIX}/bin"
+ @${ECHO_MSG} " LD_LIBRARY_PATH: ${PREFIX}/lib"
+ @${ECHO_MSG} " ${PREFIX}/share/squeak/${VMVERSION}"
+ @${ECHO_MSG} " "
+ @${ECHO_MSG} " ------------------ Thanks for your attention! ------------------"
+ @${ECHO_MSG} " "
+
+.include <bsd.port.post.mk>
diff --git a/lang/squeak/distinfo b/lang/squeak/distinfo
new file mode 100644
index 000000000000..addd5ae5208c
--- /dev/null
+++ b/lang/squeak/distinfo
@@ -0,0 +1,8 @@
+MD5 (squeak/Squeak-3.6-3.src.tar.gz) = cb8ab95fa9d840f5b04868f99600e018
+SIZE (squeak/Squeak-3.6-3.src.tar.gz) = 2552981
+MD5 (squeak/Squeak3.6-5429-basic.zip) = 0269db8b85b1042825f689da8bb0f583
+SIZE (squeak/Squeak3.6-5429-basic.zip) = 5667283
+MD5 (squeak/Squeak3.6-5429-full.zip) = 9a35fa39f2338d26a721564472d4d933
+SIZE (squeak/Squeak3.6-5429-full.zip) = 7837139
+MD5 (squeak/SqueakV3.sources.gz) = 7dc6b3840e6bc1e5f81e3717fb46d2c3
+SIZE (squeak/SqueakV3.sources.gz) = 3476504
diff --git a/lang/squeak/files/patch-platforms::Cross::plugins::DropPlugin::DropPlugin.h b/lang/squeak/files/patch-platforms::Cross::plugins::DropPlugin::DropPlugin.h
new file mode 100644
index 000000000000..ac04be2c3c10
--- /dev/null
+++ b/lang/squeak/files/patch-platforms::Cross::plugins::DropPlugin::DropPlugin.h
@@ -0,0 +1,7 @@
+--- platforms/Cross/plugins/DropPlugin/DropPlugin.h.orig Thu May 13 16:07:09 2004
++++ platforms/Cross/plugins/DropPlugin/DropPlugin.h Thu May 13 16:05:52 2004
+@@ -10,3 +10,4 @@
+ int sqSecFileAccessCallback(void *);
+ void sqSetNumberOfDropFiles(int numberOfFiles);
+ void sqSetFileInformation(int dropIndex, void *dropFile);
++
diff --git a/lang/squeak/files/patch-platforms::Cross::plugins::JPEGReadWriter2Plugin::JPEGReadWriter2Plugin.h b/lang/squeak/files/patch-platforms::Cross::plugins::JPEGReadWriter2Plugin::JPEGReadWriter2Plugin.h
new file mode 100644
index 000000000000..d1f69cfbbd48
--- /dev/null
+++ b/lang/squeak/files/patch-platforms::Cross::plugins::JPEGReadWriter2Plugin::JPEGReadWriter2Plugin.h
@@ -0,0 +1,10 @@
+--- platforms/Cross/plugins/JPEGReadWriter2Plugin/JPEGReadWriter2Plugin.h.orig Thu May 13 16:09:52 2004
++++ platforms/Cross/plugins/JPEGReadWriter2Plugin/JPEGReadWriter2Plugin.h Thu May 13 16:10:08 2004
+@@ -14,4 +14,5 @@
+ void error_exit (j_common_ptr cinfo);
+ GLOBAL(void) jpeg_mem_src (j_decompress_ptr cinfo, char * pSourceData, unsigned sourceDataSize);
+ GLOBAL(int) jpeg_mem_src_newLocationOfData (j_decompress_ptr cinfo, char * pSourceData, unsigned sourceDataSize);
+-GLOBAL(void) jpeg_mem_dest (j_compress_ptr cinfo, char * pDestination, unsigned *pDestinationSize);
+\ No newline at end of file
++GLOBAL(void) jpeg_mem_dest (j_compress_ptr cinfo, char * pDestination, unsigned *pDestinationSize);
++
diff --git a/lang/squeak/files/patch-platforms::Cross::plugins::JPEGReadWriter2Plugin::jmemdatasrc.c b/lang/squeak/files/patch-platforms::Cross::plugins::JPEGReadWriter2Plugin::jmemdatasrc.c
new file mode 100644
index 000000000000..a20e88f8d371
--- /dev/null
+++ b/lang/squeak/files/patch-platforms::Cross::plugins::JPEGReadWriter2Plugin::jmemdatasrc.c
@@ -0,0 +1,10 @@
+--- platforms/Cross/plugins/JPEGReadWriter2Plugin/jmemdatasrc.c.orig Thu May 13 16:25:49 2004
++++ platforms/Cross/plugins/JPEGReadWriter2Plugin/jmemdatasrc.c Thu May 13 16:25:58 2004
+@@ -198,4 +198,5 @@
+ src->actualPos = pSourceData + offset;
+
+ return((src->actualPos + src->bytesLeft) == (pSourceData + sourceDataSize));
+-}
+\ No newline at end of file
++}
++
diff --git a/lang/squeak/files/patch-platforms::unix::config::configure b/lang/squeak/files/patch-platforms::unix::config::configure
new file mode 100644
index 000000000000..38f45aa494ec
--- /dev/null
+++ b/lang/squeak/files/patch-platforms::unix::config::configure
@@ -0,0 +1,10 @@
+--- platforms/unix/config/configure.orig Mon May 10 10:54:48 2004
++++ platforms/unix/config/configure Mon May 10 10:54:15 2004
+@@ -23526,6 +23526,7 @@
+ cat >>conftest.$ac_ext <<_ACEOF
+ /* end confdefs.h. */
+ #include <sys/soundcard.h>
++#define OPEN_SOUND_SYSTEM
+ int
+ main ()
+ {
diff --git a/lang/squeak/files/patch-platforms::unix::plugins::PseudoTTYPlugin::openpty.h b/lang/squeak/files/patch-platforms::unix::plugins::PseudoTTYPlugin::openpty.h
new file mode 100644
index 000000000000..36dd49bcd97b
--- /dev/null
+++ b/lang/squeak/files/patch-platforms::unix::plugins::PseudoTTYPlugin::openpty.h
@@ -0,0 +1,14 @@
+--- platforms/unix/plugins/PseudoTTYPlugin/openpty.h.orig Tue Jan 14 16:02:55 2003
++++ platforms/unix/plugins/PseudoTTYPlugin/openpty.h Tue Jan 14 16:03:09 2003
+@@ -45,7 +45,10 @@
+ # elif defined(HAVE_LIBUTIL_H)
+ # include <libutil.h> /* openpty() on FreeBSD */
+ # else
+-# error: cannot find headers for openpty()
++# include <sys/types.h>
++# include <sys/ioctl.h>
++# include <termios.h>
++# include <libutil.h>
+ # endif
+
+ #else /* !HAVE_OPENPTY */
diff --git a/lang/squeak/files/patch-platforms::unix::vm-sound-OSS::acinclude.m4 b/lang/squeak/files/patch-platforms::unix::vm-sound-OSS::acinclude.m4
new file mode 100644
index 000000000000..3fb9e7e023a1
--- /dev/null
+++ b/lang/squeak/files/patch-platforms::unix::vm-sound-OSS::acinclude.m4
@@ -0,0 +1,11 @@
+--- platforms/unix/vm-sound-OSS/acinclude.m4.orig Mon May 10 10:18:03 2004
++++ platforms/unix/vm-sound-OSS/acinclude.m4 Mon May 10 10:18:22 2004
+@@ -1,7 +1,7 @@
+ # -*- sh -*-
+
+ AC_MSG_CHECKING([for Open Sound System])
+-AC_TRY_COMPILE([#include <sys/soundcard.h>],[OPEN_SOUND_SYSTEM;],[
++AC_TRY_COMPILE([#include <sys/soundcard.h>],[EV_SEQ_LOCAL;],[
+ AC_MSG_RESULT(yes)
+ ],[
+ AC_MSG_RESULT(no)
diff --git a/lang/squeak/pkg-descr b/lang/squeak/pkg-descr
new file mode 100644
index 000000000000..c451fd6794a0
--- /dev/null
+++ b/lang/squeak/pkg-descr
@@ -0,0 +1,24 @@
+Squeak is an open, highly-portable Smalltalk-80 implementation whose
+virtual machine is written entirely in Smalltalk, making it easy to
+debug, analyze, and change; it includes among other things:
+ * a rapid-turn-around Smalltalk-80 compiler,
+ * a caching-JIT run-time virtual machine (with full source in
+ Smalltalk),
+ * large class libraries with portable data and GUI models, and
+ * an integrated development environment with powerful coding
+ tools and GUI construction tools.
+
+Squeak was developed at Apple Labs, Walt Disney and has been ported
+to a variety of computers (including most flavors of UNIX and Windows).
+Compared to other Smalltalk systems, Squeak has 4 important features:
+ * Portability (to Mac, Windows, WinCE, and many flavors of UNIX);
+ * Speed (it uses native C for compute-intensive code);
+ * Price (free, including all source code and the right to distribute
+ applications!); and
+ * Sophistication (full Smalltalk-80 language, libraries, and tools).
+
+Squeak comes under an open source license, meaning that you can
+download and use it for free.
+
+WWW: http://www.squeak.org/ (Squeak project)
+ http://www-sor.inria.fr/~piumarta/squeak/ (Unix Squeak)
diff --git a/lang/squeak/pkg-plist b/lang/squeak/pkg-plist
new file mode 100644
index 000000000000..2fdad1a395c0
--- /dev/null
+++ b/lang/squeak/pkg-plist
@@ -0,0 +1,30 @@
+bin/inisqueak
+bin/squeak
+%%DOCSDIR%%/COPYING.gz
+%%DOCSDIR%%/COPYRIGHT.gz
+%%DOCSDIR%%/LICENSE.gz
+%%DOCSDIR%%/README.Contributing.gz
+%%DOCSDIR%%/README.Keyboard.gz
+%%DOCSDIR%%/README.Sound.gz
+share/nls/POSIX
+share/nls/en_US.US-ASCII
+%%PLIST_X%%share/squeak/%%VMVERSION%%/B3DAcceleratorPlugin
+share/squeak/%%VMVERSION%%/UnixOSProcessPlugin
+%%PLIST_X%%share/squeak/%%VMVERSION%%/XDisplayControlPlugin
+%%PLIST_NPSQUEAK%%share/squeak/%%VMVERSION%%/npsqueak.so
+%%PLIST_NPSQUEAK%%share/squeak/%%VMVERSION%%/npsqueakrun
+share/squeak/%%VMVERSION%%/squeak
+%%PLIST_X%%share/squeak/%%VMVERSION%%/vm-display-X11
+share/squeak/%%VMVERSION%%/vm-display-null
+share/squeak/%%VMVERSION%%/vm-sound-OSS
+share/squeak/%%VMVERSION%%/vm-sound-null
+share/squeak/ReadMe.txt
+share/squeak/Squeak%%IMAGEVERSION%%-%%PATCHNUMBER%%-basic.changes.gz
+share/squeak/Squeak%%IMAGEVERSION%%-%%PATCHNUMBER%%-basic.image.gz
+share/squeak/Squeak%%IMAGEVERSION%%-%%PATCHNUMBER%%-full.changes.gz
+share/squeak/Squeak%%IMAGEVERSION%%-%%PATCHNUMBER%%-full.image.gz
+share/squeak/SqueakV3.sources
+%%PLIST_NPSQUEAK%%share/squeak/npsqueakregister
+@dirrm share/squeak/%%VMVERSION%%
+@dirrm share/squeak
+@dirrm %%DOCSDIR%%