Commit | Line | Data |
---|---|---|
fc4c7889 JM |
1 | FROM ubuntu:vivid |
2 | MAINTAINER Joel Martin <github@martintribe.org> | |
3 | ||
4 | ########################################################## | |
5 | # General requirements for testing or common across many | |
6 | # implementations | |
7 | ########################################################## | |
8 | ||
9 | RUN apt-get -y update | |
10 | ||
11 | # Required for running tests | |
12 | RUN apt-get -y install make python | |
13 | ||
14 | # Some typical implementation and test requirements | |
15 | RUN apt-get -y install curl libreadline-dev libedit-dev | |
16 | ||
17 | RUN mkdir -p /mal | |
18 | WORKDIR /mal | |
19 | ||
20 | ########################################################## | |
21 | # Specific implementation requirements | |
22 | ########################################################## | |
23 | ||
24 | # For building rpython | |
25 | RUN apt-get -y install g++ | |
26 | ||
27 | # pypy | |
28 | RUN apt-get -y install software-properties-common | |
29 | RUN add-apt-repository ppa:pypy | |
30 | RUN apt-get -y update | |
31 | RUN apt-get -y install pypy | |
32 | ||
33 | # rpython | |
34 | RUN apt-get -y install mercurial libffi-dev pkg-config libz-dev libbz2-dev \ | |
7233afd1 | 35 | libsqlite3-dev libncurses-dev libexpat1-dev libssl-dev libgdbm-dev tcl-dev |
fc4c7889 | 36 | |
2c246d48 | 37 | RUN mkdir -p /opt/pypy && \ |
2c0c033b | 38 | curl -L https://bitbucket.org/pypy/pypy/downloads/pypy2-v5.6.0-src.tar.bz2 | tar -xjf - -C /opt/pypy/ --strip-components=1 |
7233afd1 | 39 | #curl https://bitbucket.org/pypy/pypy/get/tip.tar.gz | tar -xzf - -C /opt/pypy/ --strip-components=1 |
2c0c033b | 40 | RUN cd /opt/pypy && make && rm -rf /tmp/usession* |
2c246d48 JM |
41 | |
42 | RUN ln -sf /opt/pypy/rpython/bin/rpython /usr/local/bin/rpython | |
43 | RUN ln -sf /opt/pypy/pypy-c /usr/local/bin/pypy | |
44 | RUN chmod -R ugo+rw /opt/pypy/rpython/_cache | |
44571c10 | 45 | |
44571c10 JM |
46 | RUN apt-get -y autoremove pypy |
47 |