summaryrefslogtreecommitdiff
path: root/lang/squeak-vm
diff options
context:
space:
mode:
authorasau <asau>2010-02-11 00:58:19 +0000
committerasau <asau>2010-02-11 00:58:19 +0000
commite68cbc68a8f8f814aec91ebe3451532c7ff5262e (patch)
tree08b72aca6f6f723f5b5b95a503c510653eb2642c /lang/squeak-vm
parent83ef8f994406cd8ca15885e3aa6058669c30b7b0 (diff)
downloadpkgsrc-e68cbc68a8f8f814aec91ebe3451532c7ff5262e.tar.gz
Import Squeak VM 3.11.3 revision 2135 as lang/squeak-vm.
Squeak is Smalltalk implementation which is direct ancestor of Alan Kay's Smalltalk-80.
Diffstat (limited to 'lang/squeak-vm')
-rw-r--r--lang/squeak-vm/DESCR17
-rw-r--r--lang/squeak-vm/Makefile53
-rw-r--r--lang/squeak-vm/PLIST29
-rw-r--r--lang/squeak-vm/PLIST.Linux4
-rw-r--r--lang/squeak-vm/distinfo9
-rw-r--r--lang/squeak-vm/options.mk14
-rw-r--r--lang/squeak-vm/patches/patch-aa12
-rw-r--r--lang/squeak-vm/patches/patch-ab12
-rw-r--r--lang/squeak-vm/patches/patch-ac14
-rw-r--r--lang/squeak-vm/patches/patch-ad26
10 files changed, 190 insertions, 0 deletions
diff --git a/lang/squeak-vm/DESCR b/lang/squeak-vm/DESCR
new file mode 100644
index 00000000000..2ce22553c55
--- /dev/null
+++ b/lang/squeak-vm/DESCR
@@ -0,0 +1,17 @@
+Squeak is a new implementation of the Smalltalk programming environment;
+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 coding tools, GUI
+ construction.
+
+Squeak was developed at Apple Labs and 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 four 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).
diff --git a/lang/squeak-vm/Makefile b/lang/squeak-vm/Makefile
new file mode 100644
index 00000000000..f0d79df2aa6
--- /dev/null
+++ b/lang/squeak-vm/Makefile
@@ -0,0 +1,53 @@
+# $NetBSD: Makefile,v 1.1.1.1 2010/02/11 00:58:19 asau Exp $
+#
+
+SQUEAK_VERSION= 3.11.3.2135
+
+DISTNAME= Squeak-$(SQUEAK_VERSION)-src
+PKGNAME= squeak-vm-$(SQUEAK_VERSION:C/-/./)
+CATEGORIES= lang
+MASTER_SITES= http://ftp.squeak.org/3.10/unix-linux/ \
+ http://squeakvm.org/unix/release/
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://squeakvm.org/unix/
+COMMENT= Full Smalltalk 80 with portability to UN*X, Mac, and Windows
+
+PKG_DESTDIR_SUPPORT= user-destdir
+
+DIST_SUBDIR= squeak
+CHECK_PORTABILITY_SKIP= unix/config/configure # not used anymore
+
+USE_LANGUAGES= c c++
+USE_CMAKE= yes
+USE_TOOLS= gzip
+
+CONFIGURE_DIRS= $(WRKSRC)/build
+CMAKE_ARG_PATH= ../unix
+#CMAKE_ARGS+= -DCMAKE_VERBOSE_MAKEFILE:BOOL=TRUE # debug
+CMAKE_ARGS+= -DPKGMANDIR=$(PKGMANDIR)
+CMAKE_ARGS+= -DVM_HOST=$(MACHINE_GNU_PLATFORM:Q) -DVM_VERSION=$(SQUEAK_VERSION)
+CMAKE_ARGS+= -DLIBOSSAUDIO=$(LIBOSSAUDIO) -DDEVOSSAUDIO=$(DEVOSSAUDIO)
+#CFLAGS= -g -fomit-frame-pointer
+
+PLIST_SUBST= SQUEAK_VERSION=$(SQUEAK_VERSION)
+
+.include "options.mk"
+
+pre-configure:
+ $(MKDIR) $(CONFIGURE_DIRS)
+
+.include "../../audio/libvorbis/buildlink3.mk"
+.include "../../audio/speex/buildlink3.mk"
+.include "../../converters/libiconv/buildlink3.mk"
+.include "../../devel/gettext-lib/buildlink3.mk"
+.include "../../devel/libffi/buildlink3.mk"
+.include "../../graphics/cairo/buildlink3.mk"
+.include "../../graphics/freetype2/buildlink3.mk"
+.include "../../graphics/MesaLib/buildlink3.mk"
+.include "../../graphics/glu/buildlink3.mk"
+.include "../../x11/libXt/buildlink3.mk"
+.include "../../x11/libXext/buildlink3.mk"
+.include "../../x11/xextproto/buildlink3.mk"
+.include "../../mk/oss.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/lang/squeak-vm/PLIST b/lang/squeak-vm/PLIST
new file mode 100644
index 00000000000..e4ba6a76bcb
--- /dev/null
+++ b/lang/squeak-vm/PLIST
@@ -0,0 +1,29 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2010/02/11 00:58:19 asau Exp $
+bin/squeak
+bin/squeak.sh
+lib/squeak/${PKGVERSION}/so.AioPlugin
+lib/squeak/${PKGVERSION}/so.B3DAcceleratorPlugin
+lib/squeak/${PKGVERSION}/so.ClipboardExtendedPlugin
+lib/squeak/${PKGVERSION}/so.FileCopyPlugin
+lib/squeak/${PKGVERSION}/so.HostWindowPlugin
+lib/squeak/${PKGVERSION}/so.ImmX11Plugin
+lib/squeak/${PKGVERSION}/so.KedamaPlugin
+lib/squeak/${PKGVERSION}/so.KedamaPlugin2
+lib/squeak/${PKGVERSION}/so.MIDIPlugin
+lib/squeak/${PKGVERSION}/so.Mpeg3Plugin
+lib/squeak/${PKGVERSION}/so.OggPlugin
+lib/squeak/${PKGVERSION}/so.PseudoTTYPlugin
+lib/squeak/${PKGVERSION}/so.Squeak3D
+lib/squeak/${PKGVERSION}/so.SqueakFFIPrims
+lib/squeak/${PKGVERSION}/so.UUIDPlugin
+lib/squeak/${PKGVERSION}/so.UnixOSProcessPlugin
+lib/squeak/${PKGVERSION}/so.XDisplayControlPlugin
+lib/squeak/${PKGVERSION}/so.vm-display-X11
+lib/squeak/${PKGVERSION}/so.vm-display-custom
+lib/squeak/${PKGVERSION}/so.vm-display-null
+${PLIST.nas}lib/squeak/${PKGVERSION}/so.vm-sound-NAS
+lib/squeak/${PKGVERSION}/so.vm-sound-OSS
+lib/squeak/${PKGVERSION}/so.vm-sound-custom
+lib/squeak/${PKGVERSION}/so.vm-sound-null
+lib/squeak/${PKGVERSION}/squeakvm
+man/man1/squeak.1
diff --git a/lang/squeak-vm/PLIST.Linux b/lang/squeak-vm/PLIST.Linux
new file mode 100644
index 00000000000..0fa78a3f7a4
--- /dev/null
+++ b/lang/squeak-vm/PLIST.Linux
@@ -0,0 +1,4 @@
+@comment $NetBSD: PLIST.Linux,v 1.1.1.1 2010/02/11 00:58:19 asau Exp $
+lib/squeak/${PKGVERSION}/UUIDPlugin
+lib/squeak/${PKGVERSION}/vm-display-fbdev
+lib/squeak/${PKGVERSION}/vm-sound-ALSA
diff --git a/lang/squeak-vm/distinfo b/lang/squeak-vm/distinfo
new file mode 100644
index 00000000000..6e66b6bb97f
--- /dev/null
+++ b/lang/squeak-vm/distinfo
@@ -0,0 +1,9 @@
+$NetBSD: distinfo,v 1.1.1.1 2010/02/11 00:58:19 asau Exp $
+
+SHA1 (squeak/Squeak-3.11.3.2135-src.tar.gz) = cdc033b14e56ea05aa62bcb1686bb73f4347e29f
+RMD160 (squeak/Squeak-3.11.3.2135-src.tar.gz) = abb7dbde7e79f18161842d1451959ad09e7ef3ad
+Size (squeak/Squeak-3.11.3.2135-src.tar.gz) = 3585556 bytes
+SHA1 (patch-aa) = dfdb3be82288e8bd7658832e8dd91d242d2b97b2
+SHA1 (patch-ab) = 8f5e72383e4cdc1554e225e9ddafb1c4c17f9ccf
+SHA1 (patch-ac) = bad06ae257766407c90a62f5927a53c97ee8072a
+SHA1 (patch-ad) = e426d1de4b496704be08c67d2d2ab61a24735017
diff --git a/lang/squeak-vm/options.mk b/lang/squeak-vm/options.mk
new file mode 100644
index 00000000000..d6d800f8358
--- /dev/null
+++ b/lang/squeak-vm/options.mk
@@ -0,0 +1,14 @@
+# $NetBSD: options.mk,v 1.1.1.1 2010/02/11 00:58:19 asau Exp $
+
+PKG_OPTIONS_VAR= PKG_OPTIONS.squeak-vm
+PKG_SUPPORTED_OPTIONS= nas
+PKG_SUGGESTED_OPTIONS= nas
+
+.include "../../mk/bsd.options.mk"
+
+PLIST_VARS= nas
+
+.if !empty(PKG_OPTIONS:Mnas)
+PLIST.nas= yes
+.include "../../audio/nas/buildlink3.mk"
+.endif
diff --git a/lang/squeak-vm/patches/patch-aa b/lang/squeak-vm/patches/patch-aa
new file mode 100644
index 00000000000..aa73dfcb9bf
--- /dev/null
+++ b/lang/squeak-vm/patches/patch-aa
@@ -0,0 +1,12 @@
+$NetBSD: patch-aa,v 1.1.1.1 2010/02/11 00:58:19 asau Exp $
+
+Adapt to hierarchy convention.
+
+--- unix/vm/build.cmake.orig 2009-08-31 06:47:51.000000000 +0400
++++ unix/vm/build.cmake 2010-01-17 04:13:35.000000000 +0300
+@@ -65,4 +65,4 @@
+ COMMAND sh ${bld}/config ${unix}/doc/squeak.1 ${bld}/squeak.1
+ )
+ ADD_DEPENDENCIES (squeakvm squeak.1)
+-INSTALL (FILES ${bld}/squeak.1 DESTINATION share/man/man1)
++INSTALL (FILES ${bld}/squeak.1 DESTINATION ${PKGMANDIR}/man1)
diff --git a/lang/squeak-vm/patches/patch-ab b/lang/squeak-vm/patches/patch-ab
new file mode 100644
index 00000000000..aaa0a44eb6e
--- /dev/null
+++ b/lang/squeak-vm/patches/patch-ab
@@ -0,0 +1,12 @@
+$NetBSD: patch-ab,v 1.1.1.1 2010/02/11 00:58:19 asau Exp $
+
+Use proper OSS library.
+Use proper audio device.
+
+--- unix/vm-sound-OSS/config.cmake.orig 2009-08-26 22:44:21.000000000 +0400
++++ unix/vm-sound-OSS/config.cmake 2010-01-24 06:10:44.000000000 +0300
+@@ -1,2 +1,2 @@
+-PLUGIN_REQUIRE_INCLUDE (ALSA_SOUNDLIB alsa/asoundlib.h)
+-PLUGIN_REQUIRE_LIBRARY (ASOUND asound)
++PLUGIN_REQUIRE_LIBRARY (ASOUND ossaudio)
++PLUGIN_DEFINITIONS (-DDEVOSSAUDIO=\"${DEVOSSAUDIO}\")
diff --git a/lang/squeak-vm/patches/patch-ac b/lang/squeak-vm/patches/patch-ac
new file mode 100644
index 00000000000..24def503f37
--- /dev/null
+++ b/lang/squeak-vm/patches/patch-ac
@@ -0,0 +1,14 @@
+$NetBSD: patch-ac,v 1.1.1.1 2010/02/11 00:58:19 asau Exp $
+
+Make NAS optional.
+
+--- unix/vm-sound-NAS/config.cmake.orig 2009-08-26 22:42:18.000000000 +0400
++++ unix/vm-sound-NAS/config.cmake 2010-01-21 05:44:46.000000000 +0300
+@@ -1,2 +1,7 @@
+ PLUGIN_REQUIRE_INCLUDE (AUDIO_AUDIO_H audio/audio.h)
+ PLUGIN_REQUIRE_LIBRARY (AUDIO audio)
++
++CHECK_LIBRARY_EXISTS (audio AuOpenServer "" HAVE_NAS)
++IF (NOT HAVE_NAS OR without-nas)
++ PLUGIN_DISABLE ()
++ENDIF ()
diff --git a/lang/squeak-vm/patches/patch-ad b/lang/squeak-vm/patches/patch-ad
new file mode 100644
index 00000000000..886a1b12b56
--- /dev/null
+++ b/lang/squeak-vm/patches/patch-ad
@@ -0,0 +1,26 @@
+$NetBSD: patch-ad,v 1.1.1.1 2010/02/11 00:58:19 asau Exp $
+
+Allow customization of audio devices.
+
+--- unix/vm-sound-OSS/sqUnixSoundOSS.c.orig 2008-09-02 22:49:45.000000000 +0400
++++ unix/vm-sound-OSS/sqUnixSoundOSS.c 2010-02-10 23:13:27.000000000 +0300
+@@ -1172,6 +1172,10 @@
+ static int sound_parseArgument(int argc, char **argv)
+ {
+ if (!strcmp(argv[0], "-nomixer")) return noSoundMixer= 1;
++ else if (argv[1]) {
++ if (!strcmp(argv[0], "-playback")) {dev_dsp.path = argv[1]; return 2;}
++ if (!strcmp(argv[0], "-capture")) {dev_dsp1.path = argv[1]; return 2;}
++ }
+ return 0;
+ }
+
+@@ -1179,6 +1183,8 @@
+ {
+ printf("\nOSS <option>s:\n");
+ printf(" -nomixer disable mixer (volume) adjustment\n");
++ printf(" -playback <name> play to the named sound device (default: %s)\n", dev_dsp.path);
++ printf(" -capture <name> record from the named sound device (default: %s)\n", dev_dsp1.path);
+ }
+
+ static void sound_printUsageNotes(void)