pipeline/Dockerfile

44 lines
1.5 KiB
Docker

FROM alpine:latest
LABEL description="This is a cc65 Docker container intended to be used for build pipelines."
ENV BUILD_DIR="/tmp" \
CC65_VERSION="V2.16" \
NULIB2_VERSION="v3.1.0" \
AC_VERSION="1.3.5.14"
COPY bin /usr/local/bin
RUN apk add --no-cache build-base && \
echo "Building CC65 ${CC65_VERSION}" && \
cd ${BUILD_DIR} && \
wget https://github.com/cc65/cc65/archive/${CC65_VERSION}.tar.gz && \
tar xzf ${CC65_VERSION}.tar.gz && \
cd cc65* && \
env prefix=/usr/local make && \
env prefix=/usr/local make install && \
echo "Building NuLib2 ${NULIB2_VERSION}" && \
cd ${BUILD_DIR} && \
wget https://github.com/fadden/nulib2/archive/${NULIB2_VERSION}.tar.gz && \
tar xzf ${NULIB2_VERSION}.tar.gz && \
cd nulib2* && \
cd nufxlib && \
./configure && \
make && \
make install && \
cd ../nulib2 && \
./configure && \
make && \
make install && \
echo "Adding AppleCommander" && \
wget https://sites.google.com/site/drjohnbmatthews/applecommander/AppleCommander-${AC_VERSION}-ac.jar && \
mkdir -p /usr/local/share/java && \
mv AppleCommander-${AC_VERSION}-ac.jar /usr/local/share/java/AppleCommander-ac.jar && \
echo "Cleaning up" && \
cd ${BUILD_DIR} && \
rm -rf * && \
apk del --no-cache build-base && \
echo "Adding other required build-tools exclusive of other C compilers!" && \
apk add --no-cache make openjdk8-jre && \
chmod +x /usr/local/bin/*