2014-08-27 01:10:16 -06:00
|
|
|
# Copyright 2014 The Go Authors. All rights reserved.
|
|
|
|
# Use of this source code is governed by a BSD-style
|
|
|
|
# license that can be found in the LICENSE file.
|
|
|
|
|
|
|
|
# gobuilders/linux-x86-nacl for 32- and 64-bit nacl.
|
|
|
|
#
|
|
|
|
# We need more modern libc than Debian stable as used in base, so we're
|
|
|
|
# using Ubuntu LTS here.
|
|
|
|
#
|
|
|
|
# TODO(bradfitz): make both be Ubuntu? But we also want Debian, Fedora,
|
|
|
|
# etc coverage., so deal with unifying these later, once there's a plan
|
|
|
|
# or a generator for them and the other builders are turned down.
|
|
|
|
|
|
|
|
FROM ubuntu:trusty
|
|
|
|
MAINTAINER golang-dev <golang-dev@googlegroups.com>
|
|
|
|
|
|
|
|
ENV DEBIAN_FRONTEND noninteractive
|
2014-09-03 18:15:00 -06:00
|
|
|
|
|
|
|
RUN echo cachebuster4
|
2014-08-27 01:10:16 -06:00
|
|
|
RUN apt-get update && apt-get upgrade -y
|
|
|
|
|
|
|
|
# For running curl to get the hg starter tarballs (faster than hg clone).
|
|
|
|
RUN apt-get install -y --no-install-recommends curl ca-certificates
|
|
|
|
|
|
|
|
# For building Go's bootstrap 'dist' program:
|
|
|
|
RUN apt-get install -y --no-install-recommends gcc libc6-dev
|
|
|
|
|
|
|
|
# For interacting with the Go source & subrepos:
|
2014-09-03 18:15:00 -06:00
|
|
|
RUN apt-get install -y --no-install-recommends mercurial git-core
|
2014-08-27 01:10:16 -06:00
|
|
|
|
|
|
|
# For 32-bit nacl:
|
|
|
|
RUN apt-get install -y --no-install-recommends libc6-i386 libc6-dev-i386 lib32stdc++6 gcc-multilib
|
|
|
|
|
|
|
|
ENV GOPATH /gopath
|
|
|
|
ENV GOROOT /goroot
|
|
|
|
|
|
|
|
RUN mkdir -p $GOROOT
|
|
|
|
RUN cd $GOROOT && curl -s https://storage.googleapis.com/gobuilder/go-snap.tar.gz | tar x --no-same-owner -zv
|
|
|
|
|
|
|
|
ENV GO_TOOLS $GOPATH/src/code.google.com/p/go.tools
|
|
|
|
RUN mkdir -p $GO_TOOLS
|
|
|
|
RUN cd $GO_TOOLS $ && curl -s https://storage.googleapis.com/gobuilder/go.tools-snap.tar.gz | tar x --no-same-owner -zv
|
|
|
|
|
2014-09-03 18:15:00 -06:00
|
|
|
RUN cd $GOROOT && hg pull && hg update -C b8ff0ec2a724
|
2014-08-27 01:10:16 -06:00
|
|
|
RUN cd $GOROOT/src && ./make.bash
|
|
|
|
RUN mkdir -p /usr/local/bin
|
|
|
|
|
2014-09-03 18:15:00 -06:00
|
|
|
RUN cd $GO_TOOLS && hg pull && hg update -C f9e37a924785
|
2014-08-27 01:10:16 -06:00
|
|
|
ENV GOBIN /usr/local/bin
|
|
|
|
RUN /goroot/bin/go install code.google.com/p/go.tools/dashboard/builder
|
|
|
|
|
|
|
|
RUN cd /usr/local/bin && curl -s -O https://storage.googleapis.com/gobuilder/sel_ldr_x86_32 && chmod +x sel_ldr_x86_32
|
|
|
|
RUN cd /usr/local/bin && curl -s -O https://storage.googleapis.com/gobuilder/sel_ldr_x86_64 && chmod +x sel_ldr_x86_64
|
|
|
|
|
|
|
|
RUN ln -s $GOROOT/misc/nacl/go_nacl_386_exec /usr/local/bin/
|
|
|
|
RUN ln -s $GOROOT/misc/nacl/go_nacl_amd64p32_exec /usr/local/bin/
|
|
|
|
ADD build-command.pl /usr/local/bin/
|
|
|
|
|
|
|
|
ENV PATH /usr/local/bin:$GOROOT/bin:$PATH
|