diff --git a/package/stf/squeak/squeak-gzip.patch b/package/stf/squeak/squeak-gzip.patch new file mode 100644 index 000000000..2732e3e4c --- /dev/null +++ b/package/stf/squeak/squeak-gzip.patch @@ -0,0 +1,11 @@ +--- ./platforms/unix/config/Makefile.install 2004-04-02 04:17:33.000000000 +0200 ++++ ./platforms/unix/config/Makefile.install-p 2004-11-03 02:50:09.146878968 +0100 +@@ -63,7 +63,7 @@ + echo $(INSTALL_DATA) $(topdir)/platforms/unix/doc/$$f $(ROOT)$(docdir); \ + $(INSTALL_DATA) $(topdir)/platforms/unix/doc/$$f $(ROOT)$(docdir); \ + done +- gzip -f9 $(ROOT)$(docdir)/* ++ gzip -f9 $(ROOT)$(docdir)/* || true + $(MKINSTALLDIRS) $(ROOT)$(mandir)/man1 + $(INSTALL_DATA) squeak.1 $(ROOT)$(mandir)/man1 + rm -f $(ROOT)$(mandir)/man1/inisqueak.1 diff --git a/package/stf/squeak/squeak-head-tail.patch b/package/stf/squeak/squeak-head-tail.patch new file mode 100644 index 000000000..cc5084bd7 --- /dev/null +++ b/package/stf/squeak/squeak-head-tail.patch @@ -0,0 +1,56 @@ +diff -dur Squeak-3.6-3/platforms/unix/config/inisqueak.in Squeak-3.6-3-patch/platforms/unix/config/inisqueak.in +--- Squeak-3.6-3/platforms/unix/config/inisqueak.in 2003-08-31 07:31:35.000000000 +0200 ++++ Squeak-3.6-3-patch/platforms/unix/config/inisqueak.in 2004-09-26 13:12:57.028629888 +0200 +@@ -191,7 +191,7 @@ + echo + fi + done +- IMAGE=`echo ${images} | tr ' ' '\012' | tail +${reply} | head -1` ++ IMAGE=`echo ${images} | tr ' ' '\012' | tail -n+${reply} | head -n1` + CHANGES=${IMAGE}.changes.gz + IMAGE=${IMAGE}.image.gz + fi +diff -dur Squeak-3.6-3/platforms/unix/config/mkconfig.in Squeak-3.6-3-patch/platforms/unix/config/mkconfig.in +--- Squeak-3.6-3/platforms/unix/config/mkconfig.in 2003-02-10 04:28:32.000000000 +0100 ++++ Squeak-3.6-3-patch/platforms/unix/config/mkconfig.in 2004-09-26 13:13:30.157593520 +0200 +@@ -2,8 +2,8 @@ + + int_modules="@int_modules@" + ext_modules="@ext_modules@" +-int_plugins="@int_plugins@ `tail -1 @vmmdir@/plugins.int | sed 's,.* =,,'`" +-ext_plugins="@ext_plugins@ `tail -1 @vmmdir@/plugins.ext | sed 's,.* =,,'`" ++int_plugins="@int_plugins@ `tail -n1 @vmmdir@/plugins.int | sed 's,.* =,,'`" ++ext_plugins="@ext_plugins@ `tail -n1 @vmmdir@/plugins.ext | sed 's,.* =,,'`" + + if test -f plugins.exc; then + nlsp='tr \012\015 \040\040' +--- ./platforms/unix/config/verstamp 2002-10-27 02:29:04.000000000 +0200 ++++ ./platforms/unix/config/verstamp-p 2004-11-03 02:52:26.487000096 +0100 +@@ -5,14 +5,14 @@ + # Last edited: 2002-06-08 18:32:53 by piumarta on emilia.inria.fr + + if test -f $1; then +- SERIAL=`head -1 $1 | cut -d ' ' -f 3 | sed 's/;//'` ++ SERIAL=`head -n1 $1 | cut -d ' ' -f 3 | sed 's/;//'` + SERIAL=`expr $SERIAL + 1` + else + SERIAL=1 + fi + + if expr "$2" : ".*gcc" >/dev/null ; then +- CC=`$2 -v 2>&1 | tail -1 | sed 's/.*based on//g' | awk '{print $1 , $3} '` ++ CC=`$2 -v 2>&1 | tail -n1 | sed 's/.*based on//g' | awk '{print $1 , $3} '` + else + CC=$2 + fi +--- ./platforms/unix/config/ltcf-c.sh 2002-11-27 15:21:02.000000000 +0100 ++++ ./platforms/unix/config/ltcf-c.sh-p 2004-11-03 02:54:22.545356544 +0100 +@@ -151,7 +151,7 @@ + # If the export-symbols file already is a .def file (1st line + # is EXPORTS), use it as is. + # If DATA tags from a recent dlltool are present, honour them! +- archive_expsym_cmds='if test "x`head -1 $export_symbols`" = xEXPORTS; then ++ archive_expsym_cmds='if test "x`head -n1 $export_symbols`" = xEXPORTS; then + cp $export_symbols $output_objdir/$soname-def; + else + echo EXPORTS > $output_objdir/$soname-def; diff --git a/package/stf/squeak/squeak.conf b/package/stf/squeak/squeak.conf new file mode 100644 index 000000000..307b60578 --- /dev/null +++ b/package/stf/squeak/squeak.conf @@ -0,0 +1,29 @@ +squeak_preconf () { + mkdir bld + cd bld +} + +squeak_premake () { + mkdir -p $root/prefix/sbin + cp -a inisqueak $root/$prefix/sbin +} + +squeak_postinstall () { + mkdir -p $root/opt/squeak + + unzip -o -d $root/opt/squeak/ $archdir/Squeak$image_ver-full.zip + + tar xvIf $archdir/SqueakV${ver:0:1}.sources.tar.bz2 + mv `find . -name SqueakV${ver:0:1}.sources` /opt/squeak + + cat > $root/etc/profile.d/squeak <<-EOP +SQUEAK_IMAGE=/opt/squeak/Squeak$image_ver-full.image +export SQUEAK_IMAGE +EOP +} + +configscript="../platforms/unix/config/configure" + +hook_add preconf 3 squeak_preconf +hook_add premake 3 squeak_premake +hook_add postinstall 3 squeak_postinstall diff --git a/package/stf/squeak/squeak.desc b/package/stf/squeak/squeak.desc new file mode 100644 index 000000000..56f0e21a6 --- /dev/null +++ b/package/stf/squeak/squeak.desc @@ -0,0 +1,67 @@ + +[COPY] --- ROCK-COPYRIGHT-NOTE-BEGIN --- +[COPY] +[COPY] This copyright note is auto-generated by ./scripts/Create-CopyPatch. +[COPY] Please add additional copyright information _after_ the line containing +[COPY] the ROCK-COPYRIGHT-NOTE-END tag. Otherwise it might get removed by +[COPY] the ./scripts/Create-CopyPatch script. Do not edit this copyright text! +[COPY] +[COPY] ROCK Linux: rock-src/package/stf/dmalloc/dmalloc.desc +[COPY] ROCK Linux is Copyright (C) 1998 - 2003 Clifford Wolf +[COPY] +[COPY] This program is free software; you can redistribute it and/or modify +[COPY] it under the terms of the GNU General Public License as published by +[COPY] the Free Software Foundation; either version 2 of the License, or +[COPY] (at your option) any later version. A copy of the GNU General Public +[COPY] License can be found at Documentation/COPYING. +[COPY] +[COPY] Many people helped and are helping developing ROCK Linux. Please +[COPY] have a look at http://www.rocklinux.org/ and the Documentation/TEAM +[COPY] file for details. +[COPY] +[COPY] --- ROCK-COPYRIGHT-NOTE-END --- + +[I] An open, highly portable Smalltalk-80 implementation + +[T] Squeak is an open, highly portable Smalltalk-80 implementation whose virtual +[T] machine is written entirely in Smalltalk, making it easy to debug, analyze, +[T] and change. To achieve practical performance, a translator produces an +[T] equivalent C program whose performance is comparable to commercial Smalltalks. +[T] Other noteworthy aspects of Squeak include +[T] * real-time sound and music synthesis written entirely in Smalltalk +[T] * extensions of BitBlt to handle color of any depth and anti-aliased +[T] image rotation and scaling +[T] * network access support that allows simple construction of servers and +[T] other useful facilities +[T] * it runs bit-identical on many platforms (Windows, Mac, Unix, and others) +[T] * a compact object format that typically requires only a single word of +[T] overhead per object +[T] * a simple yet efficient incremental garbage collector for 32-bit direct +[T] pointers +[T] * efficient bulk-mutation of objects +[T] Squeak comes under an open source license, meaning that you can download +[T] and use it for free. What are you waiting for? + +[U] http://www.squeak.org/ + +[A] Apple Computer { original developers team } +[A] Squeak Central { the core Squeak team, maintainers of official releases } +[A] and others { please see http://www.squeak.org/about/central.html for details } + +[M] Stefan Fiedler + +[C] extra/development + +[L] OpenSource +[S] Stable +[V] 3.6-3 +[O] image_ver=3.7-5989 +[P] X -----5---9 800.000 + +# C sources +[D] 3150863951 Squeak-3.6-3.src.tar.gz ftp://st.cs.uiuc.edu/Smalltalk/Squeak/3.6/unix-linux/ +# Smalltalk sources +# -full.images and -full.changes +[D] 1083504650 Squeak3.7-5989-full.zip ftp://st.cs.uiuc.edu/Smalltalk/Squeak/3.6/ +# SqueakV3.sources +[D] 547268744 SqueakV3.sources.tar.gz http://www-sor.inria.fr/~piumarta/squeak/unix/release/