aboutsummaryrefslogtreecommitdiffstats
path: root/debian-jessie-buildslave-st
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2017-08-27 09:45:01 +0200
committerHarald Welte <laforge@gnumonks.org>2017-08-27 09:45:01 +0200
commit2a9e6aaea5dc018707742348aeca8a8e6bd49e97 (patch)
tree81c673968139479c2e331a1b933b934d4f026285 /debian-jessie-buildslave-st
parent7c5024f994d7fc0fa0e29954d9d0a66fc2fde226 (diff)
Add debian-jessie-buildslave-st for smalltalk related builds
This docker image contains everything required to build osmocom smalltalk projects. It is derived from laforge/debian-jessie-buildslave
Diffstat (limited to 'debian-jessie-buildslave-st')
-rw-r--r--debian-jessie-buildslave-st/.release2
-rw-r--r--debian-jessie-buildslave-st/Dockerfile48
-rw-r--r--debian-jessie-buildslave-st/Makefile1
3 files changed, 51 insertions, 0 deletions
diff --git a/debian-jessie-buildslave-st/.release b/debian-jessie-buildslave-st/.release
new file mode 100644
index 0000000..1377642
--- /dev/null
+++ b/debian-jessie-buildslave-st/.release
@@ -0,0 +1,2 @@
+release=0.0.0
+tag=debian-jessie-buildslave-st-0.0.0
diff --git a/debian-jessie-buildslave-st/Dockerfile b/debian-jessie-buildslave-st/Dockerfile
new file mode 100644
index 0000000..0f1b435
--- /dev/null
+++ b/debian-jessie-buildslave-st/Dockerfile
@@ -0,0 +1,48 @@
+FROM laforge/debian-jessie-buildslave
+
+RUN apt-get -y install \
+ libffi-dev \
+ libgmp-dev \
+ libltdl-dev \
+ libncurses5-dev \
+ libsigsegv-dev \
+ libsnmp-dev \
+ zip && \
+ apt-get clean
+
+RUN git clone http://git.savannah.gnu.org/r/smalltalk.git
+RUN cd smalltalk && \
+ git pull && \
+ autoreconf --install --force && \
+ ./configure && \
+ make && \
+ make install && \
+ cd .. && rm -rf smalltalk
+
+# first clone all repositories so they end up in one cache layer
+RUN git clone https://github.com/zecke/petitparser.git && \
+ git clone https://github.com/zecke/petitparser-tests.git && \
+ git clone git://git.osmocom.org/smalltalk/osmo-st-logging && \
+ git clone git://git.osmocom.org/smalltalk/osmo-st-core && \
+ git clone git://git.osmocom.org/smalltalk/osmo-st-network && \
+ git clone git://git.osmocom.org/smalltalk/osmo-st-gsm && \
+ git clone git://git.osmocom.org/smalltalk/osmo-st-openbsc-test
+
+# now add a file resembling the latest HEAD to invalidate cache once
+# upstream git repo changes
+ADD https://api.github.com/repos/zecke/petitparser/git/refs/heads/master /tmp/commit-petitparser
+ADD https://api.github.com/repos/zecke/petitparser-tests/git/refs/heads/master /tmp/commit-petitparser-tests
+ADD http://git.osmocom.org/smalltalk/osmo-st-logging/patch /tmp/commit-osmo-st-logging
+ADD http://git.osmocom.org/smalltalk/osmo-st-core/patch /tmp/commit-osmo-st-core
+ADD http://git.osmocom.org/smalltalk/osmo-st-network/patch /tmp/commit-osmo-st-network
+ADD http://git.osmocom.org/smalltalk/osmo-st-gsm/patch /tmp/commit-osmo-st-gsm
+ADD http://git.osmocom.org/smalltalk/osmo-st-openbsc-test/patch /tmp/commit-osmo-st-openbsc-test
+
+# now build all of them
+RUN cd petitparser && git pull && gst-package package.xml && \
+ cd ../petitparser-tests && git pull && gst-package package.xml && \
+ cd ../osmo-st-logging && git pull && gst-package package.xml && \
+ cd ../osmo-st-core && git pull && gst-package package.xml && \
+ cd ../osmo-st-network && git pull && gst-package package.xml && \
+ cd ../osmo-st-gsm && git pull && gst-package --test package.xml && \
+ cd ../osmo-st-openbsc-test/fakebts && git pull && gst-package --test package.xml
diff --git a/debian-jessie-buildslave-st/Makefile b/debian-jessie-buildslave-st/Makefile
new file mode 100644
index 0000000..8d0e10b
--- /dev/null
+++ b/debian-jessie-buildslave-st/Makefile
@@ -0,0 +1 @@
+include ../make/Makefile