Add 'meta-smalltalk/' from commit '063ce69bb6a9cebcf05efd64a4bc1564ec1a32a3'

git-subtree-dir: meta-smalltalk
git-subtree-mainline: 268f92b383
git-subtree-split: 063ce69bb6
This commit is contained in:
Holger Hans Peter Freyther 2014-07-30 17:26:01 +02:00
commit 97ae37a446
32 changed files with 741 additions and 0 deletions

1
meta-smalltalk/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
*.sw?

View File

@ -0,0 +1,17 @@
DEPENDS = "smalltalk-native"
RDEPENDS_${PN} += "smalltalk"
smalltalk_package_do_compile() {
gst < /dev/null
gst-package --target-directory=. package.xml
}
smalltalk_package_do_install () {
install -d ${D}${datadir}/smalltalk
install -m 0644 ${S}/*.star ${D}${datadir}/smalltalk
}
FILES_${PN} += "${datadir}/smalltalk"
EXPORT_FUNCTIONS do_compile do_install

View File

@ -0,0 +1,10 @@
# We have a conf and classes directory, add to BBPATH
BBPATH .= ":${LAYERDIR}"
# We have a packages directory, add to BBFILES
BBFILES += "${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*.bbappend"
BBFILE_COLLECTIONS += "smalltalk"
BBFILE_PATTERN_smalltalk = "^${LAYERDIR}/"
BBFILE_PRIORITY_smalltalk = "1"

View File

@ -0,0 +1,18 @@
DESCRIPTION = "Handling page faults in user mode"
HOMEPAGE = "http://www.gnu.org/software/libsigsegv/"
LICENSE = "LGPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=a4e436f29b73fbaa5360691ba7fcbd8c"
SRC_URI = "${GNU_MIRROR}/libsigsegv/libsigsegv-2.10.tar.gz"
SRC_URI[md5sum] = "7f96fb1f65b3b8cbc1582fb7be774f0f"
SRC_URI[sha256sum] = "8460a4a3dd4954c3d96d7a4f5dd5bc4d9b76f5754196aa245287553b26d2199a"
PR = "r2"
inherit autotools
BBCLASSEXTEND = "native"
EXTRA_OECONF += " --enable-shared "

View File

@ -0,0 +1,17 @@
DESCRIPTION = "Grease compability layer"
HOMEPAGE = "http://github.com/NicolasPetton/grease"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
S = "${WORKDIR}/git"
SRC_URI = "git://github.com/NicolasPetton/Grease.git;protocol=git;branch=master"
SRCREV = "131f4216188310992db37836e0ea248a9a152406"
PV = "3.0+gitr${SRCPV}"
PR = "r2"
inherit smalltalk_package
RDEPENDS_${PN} += "smalltalk-digest"

View File

@ -0,0 +1,22 @@
DESCRIPTION = "Iliad webframework"
HOMEPAGE = "http://www.iliadproject.org/"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
S = "${WORKDIR}/git"
SRC_URI = "git://github.com/zecke/iliad.git;protocol=git;branch=master"
SRCREV = "9cfd753a5ce7f811d87f28796d32f3fcaa1c878c"
PV = "0.9.1.1+gitr${SRCPV}"
inherit smalltalk_package
PR = "r5"
RDEPENDS_${PN} += "smalltalk-iconv grease"
do_compile() {
gst < /dev/null
find ${S} -name package.xml -execdir gst-package --target-directory="${S}" {} \;
}

View File

@ -0,0 +1,15 @@
DESCRIPTION = "ASN1 Code to work on TCAP/MAP/Camel..."
HOMEPAGE = "http://osmocom.org"
LICENSE = "AGPLv3+"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
require smalltalk-package.inc
RDEPENDS_${PN} += "osmo-st-core osmo-st-logging"
S = "${WORKDIR}/git"
SRC_URI = "git://git.osmocom.org/smalltalk/osmo-st-asn1;protocol=git;branch=master"
SRCREV = "4e3227730b0f8e48fc4513d0d614d90f52531678"
PV = "0.0.1+gitr${SRCPV}"
PR = "${INC_PR}.1"

View File

@ -0,0 +1,15 @@
DESCRIPTION = ""
HOMEPAGE = "http://osmocom.org"
LICENSE = "AGPLv3+"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
require smalltalk-package.inc
RDEPENDS_${PN} += "osmo-st-logging"
S = "${WORKDIR}/git"
SRC_URI = "git://git.osmocom.org/smalltalk/osmo-st-core;protocol=git;branch=master"
SRCREV = "9e0df13ec7f54813129f5f9851cb233445455608"
PV = "0.0.1+gitr${SRCPV}"
PR = "${INC_PR}.0"

View File

@ -0,0 +1,15 @@
DESCRIPTION = "GSM utilities based on osmo-network for SCCP,BSSAP,BSSMAP,GSM48"
HOMEPAGE = "http://osmocom.org"
LICENSE = "AGPLv3+"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
require smalltalk-package.inc
RDEPENDS_${PN} += "osmo-st-core osmo-st-network osmo-st-logging"
S = "${WORKDIR}/git"
SRC_URI = "git://git.osmocom.org/smalltalk/osmo-st-gsm;protocol=git;branch=master"
SRCREV = "00ee3d0ea0cda615ba58705d08380a116193743d"
PV = "0.0.1+gitr${SRCPV}"
PR = "${INC_PR}.0"

View File

@ -0,0 +1,13 @@
DESCRIPTION = "A Smalltalk logging framework inspired by libosmocore's logging facilities"
HOMEPAGE = "http://osmocom.org"
LICENSE = "AGPLv3+"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
require smalltalk-package.inc
S = "${WORKDIR}/git"
SRC_URI = "git://git.osmocom.org/smalltalk/osmo-st-logging;protocol=git;branch=master"
SRCREV = "f900c8fc6ef9b7ff54f0d57d092ac6b9d175460b"
PV = "0.0.2+gitr${SRCPV}"
PR = "${INC_PR}.0"

View File

@ -0,0 +1,15 @@
DESCRIPTION = "This is a MGCP CallAgent written in Smalltalk"
HOMEPAGE = "http://osmocom.org"
LICENSE = "AGPLv3+"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
require smalltalk-package.inc
RDEPENDS_${PN} += "osmo-st-logging osmo-st-core petitparser"
S = "${WORKDIR}/git"
SRC_URI = "git://git.osmocom.org/smalltalk/osmo-st-mgcp;protocol=git;branch=master"
SRCREV = "08ebcfdab3cd161bb111851bbb5d74f80aff97d0"
PV = "0.0.1+gitr${SRCPV}"
PR = "${INC_PR}.1"

View File

@ -0,0 +1,15 @@
DESCRIPTION = "This is a simple MSC done in Smalltalk"
HOMEPAGE = "http://osmocom.org"
LICENSE = "AGPLv3+"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
require smalltalk-package.inc
RDEPENDS_${PN} += "osmo-st-logging osmo-st-network osmo-st-gsm osmo-st-core"
S = "${WORKDIR}/git"
SRC_URI = "git://git.osmocom.org/smalltalk/osmo-st-msc;protocol=git;branch=master"
SRCREV = "befb7a50f7c032e5ca4d8a992d6176983b5177f7"
PV = "0.0.1+gitr${SRCPV}"
PR = "${INC_PR}.0"

View File

@ -0,0 +1,15 @@
DESCRIPTION = "osmo-network a module for networking (SCCP, M3UA, IPA) protocol handling"
LICENSE = "AGPLv3+"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
HOMEPAGE = "http://osmocom.org"
require smalltalk-package.inc
RDEPENDS_${PN} += "osmo-st-logging osmo-st-core"
S = "${WORKDIR}/git"
SRC_URI = "git://git.osmocom.org/smalltalk/osmo-st-network;protocol=git;branch=master"
SRCREV = "cb55eb5dcf67fbe1ca02e12cd3ccc25df4847ee2"
PV = "0.0.2+gitr${SRCPV}"
PR = "${INC_PR}.1"

View File

@ -0,0 +1,15 @@
DESCRIPTION = ""
HOMEPAGE = "http://osmocom.org"
LICENSE = "AGPLv3+"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
require smalltalk-package.inc
RDEPENDS_${PN} += "osmo-st-core osmo-st-logging petitparser"
S = "${WORKDIR}/git"
SRC_URI = "git://git.osmocom.org/smalltalk/osmo-st-sip;protocol=git;branch=master"
SRCREV = "eb578aa93e3bc6ddabac0c1a669eb4f700686e96"
PV = "0.0.1+gitr${SRCPV}"
PR = "${INC_PR}.1"

View File

@ -0,0 +1,15 @@
DESCRIPTION = "A simple test phone to do a LU and place a call"
HOMEPAGE = "http://osmocom.org"
LICENSE = "AGPLv3+"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
require smalltalk-package.inc
RDEPENDS_${PN} += "osmo-st-network osmo-st-logging osmo-st-gsm osmo-st-core"
S = "${WORKDIR}/git"
SRC_URI = "git://git.osmocom.org/smalltalk/osmo-st-testphone;protocol=git;branch=master"
SRCREV = "98a9d07856671daf934aa0029f3bebcc13a06f9d"
PV = "0.0.1+gitr${SRCPV}"
PR = "${INC_PR}.1"

View File

@ -0,0 +1,2 @@
inherit smalltalk_package
INC_PR = "r6"

View File

@ -0,0 +1,15 @@
DESCRIPTION = "Iliad webframework"
HOMEPAGE = "http://dmitrymatveev.co.uk/shampoo/contribution.html"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE;md5=d4a50099a9054443aacf3bb25a2d3b0e"
S = "${WORKDIR}/git"
SRC_URI = "git://github.com/dmatveev/shampoo.git;protocol=git;branch=master"
SRCREV = "8815d3c61dfc04d539c8bcc676d35fb1d568698c"
PV = "0.0.1+gitr${SRCPV}"
PR = "r2"
RDEPENDS_${PN} = "smalltalk-digest"
inherit smalltalk_package

View File

@ -0,0 +1,17 @@
DESCRIPTION = ""
HOMEPAGE = "https://gitorious.org/gnu-smalltalk-ports/petitparser"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
require smalltalk-package.inc
RDEPENDS_${PN} += "petitparser"
S = "${WORKDIR}/git"
SRC_URI = "git://gitorious.org/gnu-smalltalk-ports/petitparser-tests.git;protocol=git;branch=master"
SRCREV = "4b112d1f1af9692807bd28ae192b1fdc69f8c564"
PV = "0.0.1+gitr${SRCPV}"
PR = "${INC_PR}.1"

View File

@ -0,0 +1,14 @@
DESCRIPTION = ""
HOMEPAGE = "https://gitorious.org/gnu-smalltalk-ports/petitparser"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
require smalltalk-package.inc
S = "${WORKDIR}/git"
SRC_URI = "git://gitorious.org/gnu-smalltalk-ports/petitparser.git;protocol=git;branch=master"
SRCREV = "9b76e8cf054cb6bdbc7bc5635c3126a2fefd1a85"
PV = "0.0.1+gitr${SRCPV}"
PR = "${INC_PR}.0"

View File

@ -0,0 +1,16 @@
The build system tries to execute the gst-tool gst-doc and gst-tool is
not installed and the easiest right now is to not build the docs
Index: smalltalk-3.2.91/Makefile.am
===================================================================
--- smalltalk-3.2.91.orig/Makefile.am 2013-04-28 16:07:14.018325529 +0200
+++ smalltalk-3.2.91/Makefile.am 2013-04-28 16:08:10.426335670 +0200
@@ -23,7 +23,7 @@
gstdatadir=$(pkgdatadir)
DIST_SUBDIRS = lib-src snprintfv lightning libgst \
- . $(ALL_PACKAGES) tests doc
+ . $(ALL_PACKAGES) tests
SUBDIRS = lib-src lightning $(subdirs)
SUBDIRS += libgst . $(BUILT_PACKAGES) doc tests

View File

@ -0,0 +1,17 @@
DEPENDS = "smalltalk"
INC_PR="r4"
do_compile() {
gst < /dev/null
gst-package --target-directory=. package.xml
}
do_install () {
install -d ${D}${datadir}/smalltalk
install -m 0644 ${S}/*.star ${D}${datadir}/smalltalk
}
FILES_${PN} += "${datadir}/smalltalk"

View File

@ -0,0 +1,74 @@
DESCRIPTION = "GNU Smalltalk."
HOMEPAGE = "http://smalltalk.gnu.org/"
LICENSE = "GPLv2+"
INC_PR = "12"
DEPENDS = "smalltalk-native gnutls readline libsigsegv libtool libffi zip-native expat "
DEPENDS_virtclass-native = "gnutls-native libffi-native libsigsegv-native"
EXTRA_OECONF = "--disable-static --disable-gtk --without-x --without-opengl --with-tcl=/bin/false --with-tk=/bin/false --without-emacs gst_cv_libc_dlopen_works=hacked gst_cv_readline_libs='-lreadline'"
PACKAGES =+ "${PN}-digest ${PN}-expat ${PN}-iconv ${PN}-i18n ${PN}-gdbm ${PN}-sdl \
${PN}-sqlite ${PN}-seaside ${PN}-magritte ${PN}-magritte-seaside ${PN}-examples \
${PN}-xml ${PN}-zlib"
# skip dev-so for plugins
INSANE_SKIP_${PN}-digest = "dev-so"
INSANE_SKIP_${PN}-expat = "dev-so"
INSANE_SKIP_${PN}-iconv = "dev-so"
INSANE_SKIP_${PN}-i18n = "dev-so"
INSANE_SKIP_${PN}-gdbm = "dev-so"
INSANE_SKIP_${PN}-sdl = "dev-so"
INSANE_SKIP_${PN}-sqlite = "dev-so"
INSANE_SKIP_${PN}-xml = "dev-so"
INSANE_SKIP_${PN}-zlib = "dev-so"
# gst-tool and such
INSANE_SKIP_${PN} = "useless-rpaths"
FILES_${PN}-digest = "${libdir}/smalltalk/digest*.so \
${datadir}/smalltalk/Digest.star"
FILES_${PN}-expat = "${libdir}/smalltalk/expat*.so \
${datadir}/smalltalk/XML-Expat.star"
FILES_${PN}-iconv = "${libdir}/smalltalk/iconv*.so \
${datadir}/smalltalk/I18N.star ${datadir}/smalltalk/Iconv.star"
FILES_${PN}-i18n = "${libdir}/smalltalk/i18n*.so \
${datadir}/smalltalk/I18N.star ${datadir}/smalltalk/I18N.star"
FILES_${PN}-gdbm = "${libdir}/smalltalk/gdbm*.so"
FILES_${PN}-sdl = "${libdir}/smalltalk/sdl*.so"
FILES_${PN}-sqlite = "${libdir}/smalltalk/dbd-sqlite*.so \
${datadir}/smalltalk/DBD-SQLite.star"
FILES_${PN}-dbg += "${libdir}/smalltalk/.debug ${libexecdir}/smalltalk/.debug"
FILES_${PN}-dev += "${libdir}/smalltalk/*.la"
FILES_${PN}-static += "${libdir}/smalltalk/lib*.a"
FILES_${PN}-seaside = "${datadir}/smalltalk/Seaside*.star"
FILES_${PN}-magritte = "${datadir}/smalltalk/Magritte.star"
FILES_${PN}-magritte-seaside = "${datadir}/smalltalk/Magritte-Seaside.star"
FILES_${PN}-xml = "${datadir}/smalltalk/XML*.star ${datadir}/smalltalk/XPath.star ${datadir}/smalltalk/XSL.star ${libdir}/smalltalk/expat-*.so"
FILES_${PN}-zlib = "${libdir}/smalltalk/zlib*.so \
${datadir}/smalltalk/ZLib.star"
FILES_${PN}-examples = "${datadir}/smalltalk/examples/* ${datadir}/smalltalk/unsupported/*"
inherit autotools
do_configure() {
sed -i -e 's/^GST = .*$/GST = gst --no-user-files $(GST_OPTS)/' ${S}/Makefile.am
sed -i -e 's/^GST_PACKAGE = .*$/GST_PACKAGE = XZIP="$(XZIP)" gst-package $(GST_OPTS)/' ${S}/Makefile.am
sed -i -e 's/"$(abs_top_builddir)\/gst$(EXEEXT)"/gst/' ${S}/Makefile.am
autotools_do_configure
}
do_configure_virtclass-native() {
autotools_do_configure
sed -i -e 's/^module_DATA.*$//' ${S}/Makefile
}
do_install_append() {
find ${D}${libdir}/smalltalk -name "*.la" -delete
}
BBCLASSEXTEND = "native"

View File

@ -0,0 +1,91 @@
>From f711b657b29bf94792da89612328b5d32a5ebf70 Mon Sep 17 00:00:00 2001
From: Paolo Bonzini <address@hidden>
Date: Thu, 22 Sep 2011 10:33:36 +0200
Subject: [PATCH] improve Delay and millisecondClock behavior across image
save
2011-09-22 Paolo Bonzini <address@hidden>
* kernel/Delay.st: Restart pending delays when the image restarts.
* kernel/Time.st: Make the millisecondClockValue monotonic across
image save.
libgst:
2011-09-22 Paolo Bonzini <address@hidden>
* libgst/dict.c: Add the ClockOnImageSave class variable to time.
---
kernel/Delay.st | 8 +++++++-
kernel/Time.st | 9 +++++++--
libgst/dict.c | 2 +-
5 files changed, 25 insertions(+), 4 deletions(-)
diff --git a/kernel/Delay.st b/kernel/Delay.st
index fbb46ec..65f21e9 100644
--- a/kernel/Delay.st
+++ b/kernel/Delay.st
@@ -166,7 +166,13 @@ created.'>
sortBlock: [:d1 :d2 | d1 resumptionTime >= d2 resumptionTime].
TimeoutSem := Semaphore new.
DelayProcess := [self runDelayProcess] forkAt: Processor timingPriority.
- TimeoutSem signal "get going"
+ ObjectMemory addDependent: self.
+ self update: #returnFromSnapshot
+ ]
+
+ Delay class >> update: aspect [
+ "Prime the timer event loop when the image starts running."
+ aspect == #returnFromSnapshot ifTrue: [TimeoutSem signal]
]
Delay class >> initialize [
diff --git a/kernel/Time.st b/kernel/Time.st
index 71926d9..d3810e7 100644
--- a/kernel/Time.st
+++ b/kernel/Time.st
@@ -42,6 +42,7 @@ time value, and a block execution timing facility.'>
SecondClockAdjustment := nil.
ClockOnStartup := nil.
+ ClockOnImageSave := nil.
Time class >> utcSecondClock [
"Answer the number of seconds since the midnight of 1/1/1901 (unlike
@@ -143,6 +144,7 @@ time value, and a block execution timing facility.'>
<category: 'initialization'>
SecondClockAdjustment := 86400 * 36159.
+ ClockOnImageSave := 0.
ObjectMemory addDependent: self
]
@@ -150,8 +152,11 @@ time value, and a block execution timing facility.'>
"Private - Initialize the receiver's instance variables"
<category: 'initialization'>
- aspect == #returnFromSnapshot
- ifTrue: [ClockOnStartup := Time primMillisecondClock]
+ | time |
+ aspect == #returnFromSnapshot ifTrue: [
+ ClockOnStartup := Time primMillisecondClock - ClockOnImageSave].
+ aspect == #aboutToSnapshot ifTrue: [
+ ClockOnImageSave := Time millisecondClock].
]
Time class >> now [
diff --git a/libgst/dict.c b/libgst/dict.c
index 806aabe..42b5b6e 100644
--- a/libgst/dict.c
+++ b/libgst/dict.c
@@ -337,7 +337,7 @@ static const class_definition class_info[] = {
{&_gst_time_class, &_gst_magnitude_class,
GST_ISP_FIXED, false, 1,
"Time", "seconds",
- "SecondClockAdjustment ClockOnStartup", NULL },
+ "SecondClockAdjustment ClockOnStartup ClockOnImageSave", NULL },
{&_gst_date_class, &_gst_magnitude_class,
GST_ISP_FIXED, false, 4,
--
1.7.6

View File

@ -0,0 +1,17 @@
--- a/libgst/save.c
+++ b/libgst/save.c
@@ -765,6 +765,13 @@ fixup_object (OOP oop, gst_object dest, gst_object src, int numBytes)
}
}
+ /* File descriptors are invalidated on resume. */
+ else if (is_a_kind_of (class_oop, _gst_file_descriptor_class))
+ {
+ gst_file_stream file = (gst_file_stream) dest;
+ file->fd = _gst_nil_oop;
+ }
+
/* The other case is to reset CFunctionDescriptor objects, so that we'll
relink the external functions when we reload the image. */
else if (is_a_kind_of (class_oop, _gst_c_callable_class))
--

View File

@ -0,0 +1,37 @@
From 2fc74b9ec068a8a594bf507c5c48d61bcb63591f Mon Sep 17 00:00:00 2001
From: Holger Hans Peter Freyther <zecke@selfish.org>
Date: Mon, 30 May 2011 00:09:00 +0200
Subject: [PATCH] scripts/Remote.st: Allow to specify the hostname for the bind
Allow to bind the server to a specific address. The ServerSocket
will not attempt to resolve the string to an address. Do this before.
2011-05-30 Holger Hans Peter Freyther <holger@freyther.de>
* scripts/Remote.st: Resolve the hostname to an address to be
used by Sockets.ServerSocket>>#port:bindTo:.
---
ChangeLog | 5 +++++
scripts/Remote.st | 4 ++--
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/scripts/Remote.st b/scripts/Remote.st
index 10f228d..ec65de4 100644
--- a/scripts/Remote.st
+++ b/scripts/Remote.st
@@ -182,10 +182,10 @@ available in the PATH of the remote machine.
opt isNil ifTrue: [
host isNil ifFalse: [ self error: 'multiple hosts are invalid' ].
(arg includes: $@)
- ifFalse: [ host := arg ]
+ ifFalse: [ host := TCP.SocketAddress byName: arg ]
ifTrue: [
login isNil ifFalse: [ self error: 'multiple logins are invalid' ].
- login := arg copyUpTo: $@.
+ login := TCP.SocketAddress byName: (arg copyUpTo: $@).
host := arg copyAfter: $@ ] ].
]
--
1.7.2.5

View File

@ -0,0 +1,78 @@
From c4915d9232edb576dfb9697501370877032288dc Mon Sep 17 00:00:00 2001
From: Gwenael Casaccio <mrgwen@gmail.com>
Date: Tue, 5 Jul 2011 10:34:48 +0200
Subject: [PATCH 1/1] fix resumption of an image that had been created via gst-remote
2011-08-13 Gwenael Casaccio <mrgwen@gmail.com>
* scripts/Remote.st: Suspend/resume server process across snapshots.
---
ChangeLog | 4 ++++
scripts/Remote.st | 37 +++++++++++++++++++++++++++++++++++--
2 files changed, 39 insertions(+), 2 deletions(-)
diff --git a/scripts/Remote.st b/scripts/Remote.st
index cf383bd..39f2407 100644
--- a/scripts/Remote.st
+++ b/scripts/Remote.st
@@ -39,6 +39,38 @@ DLD addLibrary: 'libc'.
SystemDictionary compile: '
getpid [ ^''--pid not available'' ]' ].
+Object subclass: RemoteServer [
+
+ RemoteServer class >> new [
+
+ ^ super new
+ initialize;
+ yourself
+ ]
+
+ | remoteProcess |
+
+ initialize [
+ <category: 'initialize'>
+
+ ObjectMemory addDependent: self
+ ]
+
+ update: aSymbol [
+ <category: 'initialize'>
+
+ aSymbol == #aboutToSnapshot ifTrue: [ ^ remoteProcess suspend ].
+ aSymbol == #finishedSnapshot ifTrue: [ ^ remoteProcess resume ].
+ aSymbol == #returnFromSnapshot ifTrue: [ ObjectMemory removeDependent: self ].
+ ]
+
+ process: aProcess [
+ <category: 'accessing'>
+
+ remoteProcess := aProcess
+ ]
+]
+
TextCollector subclass: MultiplexingTextCollector [
| default outputs |
initialize [
@@ -69,7 +101,7 @@ TextCollector subclass: MultiplexingTextCollector [
]
]
-| helpString commands server port host login |
+| helpString commands server port host login remoteServer |
commands := OrderedCollection new.
server := false.
port := 12345.
@@ -207,7 +239,8 @@ available in the PATH of the remote machine.
server ifTrue: [
PackageLoader fileInPackage: 'Compiler'.
Transcript := MultiplexingTextCollector message: Transcript message.
- [
+ remoteServer := RemoteServer new.
+ remoteServer process: [
| queue |
queue := TCP.ServerSocket port: port bindTo: host.
[
--
1.7.2.5

View File

@ -0,0 +1,46 @@
From c6e5359374ee9b46777be790da9d64d7c408a5c1 Mon Sep 17 00:00:00 2001
From: Paolo Bonzini <bonzini@gnu.org>
Date: Tue, 5 Jul 2011 10:50:58 +0200
Subject: [PATCH 1/1] fix typo in 2fc74b9
2011-08-13 Paolo Bonzini <bonzini@gnu.org>
* scripts/Remote.st: Fix typo in 2fc74b9.
---
ChangeLog | 4 ++++
scripts/Remote.st | 10 +++++++---
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/scripts/Remote.st b/scripts/Remote.st
index ec65de4..cf383bd 100644
--- a/scripts/Remote.st
+++ b/scripts/Remote.st
@@ -182,11 +182,14 @@ available in the PATH of the remote machine.
opt isNil ifTrue: [
host isNil ifFalse: [ self error: 'multiple hosts are invalid' ].
(arg includes: $@)
- ifFalse: [ host := TCP.SocketAddress byName: arg ]
+ ifFalse: [ host := arg ]
ifTrue: [
login isNil ifFalse: [ self error: 'multiple logins are invalid' ].
- login := TCP.SocketAddress byName: (arg copyUpTo: $@).
- host := arg copyAfter: $@ ] ].
+ login := arg copyUpTo: $@.
+ host := arg copyAfter: $@ ].
+ (TCP.SocketAddress byName: host)
+ ifNil: [ self error: 'invalid host %1' %{host} ]
+ ifNotNil: [ :addr | host := addr ] ].
]
ifError: [
@@ -197,6 +200,7 @@ available in the PATH of the remote machine.
('gst-remote: ', ex messageText, '
') displayOn: stderr.
stderr flush.
+ "ex pass."
helpString displayOn: stderr.
ObjectMemory quit: 1 ].
--
1.7.2.5

View File

@ -0,0 +1,16 @@
The build system tries to execute the gst-tool gst-doc and gst-tool is
not installed and the easiest right now is to not build the docs
Index: smalltalk-3.2.4/Makefile.am
===================================================================
--- smalltalk-3.2.4.orig/Makefile.am 2013-01-04 18:56:47.000000000 +0800
+++ smalltalk-3.2.4/Makefile.am 2013-01-04 18:59:51.715391338 +0800
@@ -30,7 +30,7 @@
if ENABLE_DISASSEMBLER
SUBDIRS += opcode
endif
-SUBDIRS += libgst . $(BUILT_PACKAGES) doc tests
+SUBDIRS += libgst . $(BUILT_PACKAGES) tests
# Running gst inside the build directory...

View File

@ -0,0 +1,16 @@
require ${PN}.inc
PR = "r11.${INC_PR}"
# TODO: Upgrade, package the docs, split the packages, create gst class
SRC_URI = " \
http://www.secretlabs.de/gnu-smalltalk/smalltalk-3.2.4.99.tar.gz \
file://no-doc.patch \
"
SRC_URI[md5sum] = "ab76000aeb212fa556937f45c2315c3f"
SRC_URI[sha256sum] = "4fe3163ac5530272644c16ae8e8e7822cf7712981e5916e24fec871f380f0191"
SRCREV = "c17f4a0f757f398dad3bd90edbf8afdb96c0e995"
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"

View File

@ -0,0 +1,18 @@
require ${PN}.inc
PR = "r11.${INC_PR}"
SRC_URI = " \
ftp://ftp.gnu.org/gnu/smalltalk/smalltalk-3.2.4.tar.gz \
file://gst-remote-hostname.patch \
file://gst-remote-typo.patch \
file://gst-remote-resume.patch \
file://fix_clock_behavior_across_image.patch \
file://fix_fd_resume.patch \
file://no-doc.patch \
"
SRC_URI[md5sum] = "a36a7c9beddca08dc492b500738efc82"
SRC_URI[sha256sum] = "901cc7090a1fa44bc60900a970d207de4aa3bdfdce72bea55114e243bc1eb1b3"
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"

View File

@ -0,0 +1,35 @@
require ${PN}.inc
PR = "r12.${INC_PR}"
# TODO: Upgrade, package the docs, split the packages, create gst class
EXTRA_OECONF_append_arm = " --disable-profiling --disable-prefetch"
SRC_URI = " \
http://www.secretlabs.de/gnu-smalltalk/smalltalk-${PV}.tar.gz \
file://no-doc.patch \
"
SRC_URI[md5sum] = "d1a9b032f61bd72c4af049534b2575e4"
SRC_URI[sha256sum] = "ed56ddac79c3a10ec3cb45cf0a6377e09c1b2fb632ca49e32680d7180bc0ea3c"
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
# glib is only in 3.2.90+
PACKAGES =+ "${PN}-glib ${PN}-osprocess ${PN}-netlink"
INSANE_SKIP_${PN}-glib = "dev-so useless-rpaths"
FILES_${PN}-glib = "${libdir}/smalltalk/gst-glib*.so \
${datadir}/smalltalk/GLib.star ${libdir}/libgst-gobject.so.*"
INSANE_SKIP_${PN}-osprocess = "dev-so"
FILES_${PN}-osprocess = "${libdir}/smalltalk/gst-osprocess*.so \
${datadir}/smalltalk/OSProcess.star"
INSANE_SKIP_${PN}-netlink = "dev-so"
FILES_${PN}-netlink = "${libdir}/smalltalk/netlink*.so \
${datadir}/smalltalk/Netlink*.star"

View File

@ -0,0 +1,14 @@
DESCRIPTION = ""
HOMEPAGE = "https://gitorious.org/gnu-smalltalk-ports/soapopera"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
require smalltalk-package.inc
S = "${WORKDIR}/git"
SRC_URI = "git://gitorious.org/gnu-smalltalk-ports/soapopera.git;protocol=git;branch=master"
SRCREV = "21132f02889ef82e368144dbf8892d321d27661c"
PV = "0.0.1+gitr${SRCPV}"
PR = "${INC_PR}.0"