diff options
author | Adrian Thurston <thurston@colm.net> | 2021-12-26 22:38:16 +0000 |
---|---|---|
committer | Adrian Thurston <thurston@colm.net> | 2021-12-26 23:12:00 +0000 |
commit | 0462c7e50ec337e9d60e84be0ca5f679a7f27f43 (patch) | |
tree | e9eece2b0c2ec6ab2badfde9a36d70d4253d73c1 | |
parent | aa89fc87131ae7b0b138dd18d13c9238edb1e18e (diff) | |
download | ragel-0462c7e50ec337e9d60e84be0ca5f679a7f27f43.tar.gz |
renamed Dockerfile and added a new dockerfile for building from master
The existing dockerfile builds a release version of ragel and does not do any
testing. Renamed this to release.Dockerfile. Added a new dockerfile called
master.Dockerfile that installs all depenendencies for testing all host
languages. It then builds colm and ragel from master.
-rw-r--r-- | .dockerignore | 14 | ||||
-rw-r--r-- | master.Dockerfile | 45 | ||||
-rw-r--r-- | release.Dockerfile (renamed from Dockerfile) | 0 |
3 files changed, 59 insertions, 0 deletions
diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 00000000..5c509fe8 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,14 @@ +# Docker +**/.dockerignore +**/*Dockerfile + +# Circle-ci +**/*circle.yml + +# Vagrant +**/*Vagrantfile +**/.vagrant/ + +# Vim swap files +**/.*.sw[po] + diff --git a/master.Dockerfile b/master.Dockerfile new file mode 100644 index 00000000..6df82975 --- /dev/null +++ b/master.Dockerfile @@ -0,0 +1,45 @@ +FROM ubuntu:focal AS build + +ENV DEBIAN_FRONTEND="noninteractive" + +# Build dependencies we can get from apt. +RUN apt-get update && apt-get install -y \ + git libtool autoconf automake g++ gcc make \ + wget clang gnupg gdc default-jdk \ + ruby mono-mcs golang ocaml rustc julia \ + gnustep-make python2 python-is-python2 \ + libpcre3-dev libgnustep-base-dev + +WORKDIR /devel/llvm/ +RUN wget https://releases.llvm.org/3.3/llvm-3.3.src.tar.gz +RUN tar -zxf llvm-3.3.src.tar.gz +WORKDIR /devel/llvm/llvm-3.3.src +RUN ./configure --prefix=/pkgs/llvm-3.3 +RUN make REQUIRES_RTTI=1; exit 0 +RUN make install; exit 0 + +WORKDIR /devel/crack +RUN wget http://crack-lang.org/downloads/crack-1.6.tar.gz +RUN tar -zxf crack-1.6.tar.gz +WORKDIR /devel/crack/crack-1.6 +ENV PATH=/pkgs/llvm-3.3/bin:$PATH +RUN ./configure --prefix=/pkgs/crack-1.3 +RUN make install +ENV PATH=/pkgs/crack-1.3/bin:$PATH + +WORKDIR /devel +RUN git clone https://github.com/adrian-thurston/colm.git +WORKDIR /devel/colm +RUN ./autogen.sh +RUN ./configure --prefix=/pkgs/colm +RUN make install + +COPY . /devel/ragel +WORKDIR /devel/ragel +RUN ./autogen.sh +RUN ./configure --prefix=/pkgs/ragel --with-colm=/pkgs/colm +RUN make + +WORKDIR /devel/ragel/test +RUN ./runtests + diff --git a/Dockerfile b/release.Dockerfile index 1f35eb94..1f35eb94 100644 --- a/Dockerfile +++ b/release.Dockerfile |