diff --git a/docker/Dockerfile b/docker/Dockerfile index 04796d08e8..f4aaa75032 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,13 +1,18 @@ FROM debian:jessie MAINTAINER Joshua Warner, joshuawarner32@gmail.com +RUN echo 'deb http://http.debian.net/debian jessie-backports main' >> /etc/apt/sources.list && \ + echo 'deb-src http://http.debian.net/debian jessie-backports main' >> /etc/apt/sources.list && \ + dpkg --add-architecture i386 && \ + apt-get update && \ + mkdir /var/src/ + # Install base dependencies and build tools, general debugging tools -RUN apt-get update && \ - apt-get install -y \ +RUN apt-get install -y \ build-essential \ - g++-4.8 \ + g++-4.9 \ zlib1g-dev \ - openjdk-7-jdk \ + openjdk-8-jdk \ locales \ --no-install-recommends && \ apt-get clean all @@ -20,8 +25,59 @@ RUN dpkg-reconfigure locales && \ ENV LC_ALL C.UTF-8 # Set JAVA_HOME for avian's benefit -ENV JAVA_HOME /usr/lib/jvm/java-7-openjdk-amd64 +ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64 + +# Add i386 libraries +RUN apt-get install -y \ + libc6-dev-i386 && \ + apt-get download \ + zlib1g-dev:i386 && \ + dpkg -x *.deb / && \ + rm *.deb && \ + apt-get clean all + +# Install cross-compile toolchain and emulator for testing +RUN apt-get install -y \ + mingw-w64 \ + wget \ + unzip \ + --no-install-recommends && \ + apt-get clean all + +# Download win32 and win64 adjacent to avian +RUN cd /var/src/ && \ + wget https://github.com/ReadyTalk/win32/archive/master.zip -O win32.zip && \ + unzip win32.zip && \ + rm win32.zip && \ + mv win32-* win32 && \ + wget https://github.com/ReadyTalk/win64/archive/master.zip -O win64.zip && \ + unzip win64.zip && \ + rm win64.zip && \ + mv win64-* win64 + +# Add openjdk-src stuff +RUN apt-get install -y \ + libcups2-dev \ + libgconf2-dev && \ + mkdir /var/src/openjdk/ && \ + cd /var/src/openjdk/ && \ + apt-get source openjdk-8 && \ + apt-get clean all && \ + find /var/src/openjdk && \ + rm /var/src/openjdk/*.gz /var/src/openjdk/*.dsc && \ + cd /var/src/openjdk/ && \ + tar -xf /var/src/openjdk/openjdk*/jdk.tar.xz && \ + mv /var/src/openjdk/jdk-*/src /var/src/openjdk-src && \ + rm -rf /var/src/openjdk && \ + apt-get clean all + +# Download/extract lzma source +RUN mkdir /var/src/lzma && \ + cd /var/src/lzma && \ + apt-get install -y p7zip && \ + wget http://www.7-zip.org/a/lzma1507.7z -O lzma.7z && \ + p7zip -d lzma.7z # Avian build location -VOLUME /var/avian -WORKDIR /var/avian +VOLUME /var/src/avian +WORKDIR /var/src/avian diff --git a/docker/i386/Dockerfile b/docker/i386/Dockerfile deleted file mode 100644 index eb9e5c2b0c..0000000000 --- a/docker/i386/Dockerfile +++ /dev/null @@ -1,12 +0,0 @@ -FROM joshuawarner32/avian-build -MAINTAINER Joshua Warner, joshuawarner32@gmail.com - -RUN dpkg --add-architecture i386 && \ - apt-get update && \ - apt-get install -y \ - libc6-dev-i386 && \ - apt-get download \ - zlib1g-dev:i386 && \ - dpkg -x *.deb / && \ - rm *.deb && \ - apt-get clean all diff --git a/docker/openjdk/Dockerfile b/docker/openjdk/Dockerfile deleted file mode 100644 index bda3a5d95d..0000000000 --- a/docker/openjdk/Dockerfile +++ /dev/null @@ -1,17 +0,0 @@ -FROM joshuawarner32/avian-build-i386 -MAINTAINER Joshua Warner, joshuawarner32@gmail.com - -RUN echo 'deb-src http://http.debian.net/debian jessie main' >> /etc/apt/sources.list && \ - apt-get update && \ - apt-get install -y \ - libcups2-dev \ - libgconf2-dev && \ - mkdir /var/openjdk/ && \ - cd /var/openjdk/ && \ - apt-get source openjdk-7 && \ - apt-get clean all && \ - rm /var/openjdk/*.gz /var/openjdk/*.dsc && \ - cd /var/openjdk/ && \ - tar -xzf /var/openjdk/openjdk*/jdk.tar.gz && \ - mv /var/openjdk/jdk-*/src /var/openjdk-src && \ - rm -rf /var/openjdk \ No newline at end of file diff --git a/docker/windows/Dockerfile b/docker/windows/Dockerfile deleted file mode 100644 index 88f039846a..0000000000 --- a/docker/windows/Dockerfile +++ /dev/null @@ -1,23 +0,0 @@ -FROM joshuawarner32/avian-build -MAINTAINER Joshua Warner, joshuawarner32@gmail.com - -# Install cross-compile toolchain and emulator for testing -RUN apt-get update && \ - apt-get install -y \ - mingw-w64 \ - wget \ - unzip \ - --no-install-recommends && \ - apt-get clean all - -# Download win32 and win64 adjacent to avian -RUN cd .. && \ - wget https://github.com/ReadyTalk/win32/archive/master.zip -O win32.zip && \ - unzip win32.zip && \ - rm win32.zip && \ - mv win32-* win32 && \ - wget https://github.com/ReadyTalk/win64/archive/master.zip -O win64.zip && \ - unzip win64.zip && \ - rm win64.zip && \ - mv win64-* win64 -