mirror of
https://github.com/kylemanna/docker-aosp
synced 2025-06-07 07:56:25 +00:00
Merge pull request #28 from robbyoconnor/6.0-marshmallow
Various updates for the MM branch
This commit is contained in:
commit
224c2e0c03
@ -50,10 +50,6 @@ COPY ssh_config /root/.ssh/config
|
|||||||
# considered to be ephemeral
|
# considered to be ephemeral
|
||||||
VOLUME ["/tmp/ccache", "/aosp"]
|
VOLUME ["/tmp/ccache", "/aosp"]
|
||||||
|
|
||||||
# Improve rebuild performance by enabling compiler cache
|
|
||||||
ENV USE_CCACHE 1
|
|
||||||
ENV CCACHE_DIR /tmp/ccache
|
|
||||||
|
|
||||||
# Work in the build directory, repo is expected to be init'd here
|
# Work in the build directory, repo is expected to be init'd here
|
||||||
WORKDIR /aosp
|
WORKDIR /aosp
|
||||||
|
|
||||||
|
41
README.md
41
README.md
@ -46,10 +46,10 @@ For the terribly impatient.
|
|||||||
5. In parallel you are expected to be drinking because I save you some time.
|
5. In parallel you are expected to be drinking because I save you some time.
|
||||||
|
|
||||||
|
|
||||||
mkdir kitkat ; cd kitkat
|
mkdir marshmallow ; cd marshmallow
|
||||||
export AOSP_VOL=$PWD
|
export AOSP_VOL=$PWD
|
||||||
curl -O https://raw.githubusercontent.com/kylemanna/docker-aosp/master/tests/build-kitkat.sh
|
curl -O https://raw.githubusercontent.com/kylemanna/docker-aosp/master/tests/build-marshmallow.sh
|
||||||
bash ./build-kitkat.sh
|
bash ./build-marshmallow.sh
|
||||||
|
|
||||||
How it Works
|
How it Works
|
||||||
------------
|
------------
|
||||||
@ -70,12 +70,41 @@ Docker container. For example to run `repo sync` in the Docker container:
|
|||||||
|
|
||||||
The `aosp` wrapper doesn't work well with setting up environments, but with
|
The `aosp` wrapper doesn't work well with setting up environments, but with
|
||||||
some bash magic, this can be side stepped with short little scripts. See
|
some bash magic, this can be side stepped with short little scripts. See
|
||||||
`tests/build-kitkat.sh` for an example of a complete fetch and build of AOSP.
|
`tests/build-marshmallow.sh` for an example of a complete fetch and build of AOSP.
|
||||||
|
|
||||||
|
[Docker Compose][]
|
||||||
|
------
|
||||||
|
|
||||||
|
A [Docker Compose][] file is provided in the root of this repository, you can tweak it as need be:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
version: "2"
|
||||||
|
|
||||||
|
services:
|
||||||
|
aosp:
|
||||||
|
image: kylemanna/aosp:6.0-marshmallow
|
||||||
|
volumes:
|
||||||
|
- /tmp/ccache:/ccache
|
||||||
|
- ~/aosp:/aosp
|
||||||
|
```
|
||||||
|
Example run: `docker-compose run --rm aosp repo sync -j4` -- your android build directory will be in `~/aosp`.
|
||||||
|
|
||||||
|
Issues
|
||||||
|
------
|
||||||
|
|
||||||
|
There are some known issues with using Docker Toolbox on macOS and current
|
||||||
|
virtualization technologies resulting in unusual user ID assignments and very
|
||||||
|
poor performing virtualization file sharing implementations with things like
|
||||||
|
VirtualBox. It's recommended to run this image completely in a virtual machine
|
||||||
|
with enough space to fit the entire build (80GB+) as opposed to mapping the
|
||||||
|
build to the local macOS file system via VirtualBox or similar.
|
||||||
|
|
||||||
Tested
|
Tested
|
||||||
------
|
------
|
||||||
|
|
||||||
* Android Kitkat `android-4.4.4_r2.0.1`
|
* Android KitKat `android-4.4.4_r2.0.1`
|
||||||
* Android Lollipop `android-5.0.2_r1`
|
* Android Lollipop `android-5.0.2_r1`
|
||||||
* Android Marshmallow `android-6.0.1_r72`
|
* Android Marshmallow `android-6.0.1_r80`
|
||||||
|
* Android Nougat `android-7.0.0_r14`
|
||||||
|
|
||||||
|
[Docker Compose]: https://docs.docker.com/compose
|
||||||
|
9
docker-compose.yml
Normal file
9
docker-compose.yml
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
version: "2"
|
||||||
|
|
||||||
|
services:
|
||||||
|
aosp:
|
||||||
|
image: kylemanna/aosp:6.0-marshmallow
|
||||||
|
volumes:
|
||||||
|
- ~/aosp/ccache:/tmp/ccache
|
||||||
|
- ~/aosp:/aosp
|
||||||
|
- ~/.gitconfig:/root/.gitconfig
|
@ -9,7 +9,7 @@
|
|||||||
set -ex
|
set -ex
|
||||||
|
|
||||||
if [ "$1" = "docker" ]; then
|
if [ "$1" = "docker" ]; then
|
||||||
TEST_BRANCH=${TEST_BRANCH:-android-6.0.1_r72}
|
TEST_BRANCH=${TEST_BRANCH:-android-6.0.1_r80}
|
||||||
TEST_URL=${TEST_URL:-https://android.googlesource.com/platform/manifest}
|
TEST_URL=${TEST_URL:-https://android.googlesource.com/platform/manifest}
|
||||||
|
|
||||||
cpus=$(grep ^processor /proc/cpuinfo | wc -l)
|
cpus=$(grep ^processor /proc/cpuinfo | wc -l)
|
||||||
|
@ -17,6 +17,10 @@ set -e
|
|||||||
if [ -z ${USER_ID+x} ]; then USER_ID=1000; fi
|
if [ -z ${USER_ID+x} ]; then USER_ID=1000; fi
|
||||||
if [ -z ${GROUP_ID+x} ]; then GROUP_ID=1000; fi
|
if [ -z ${GROUP_ID+x} ]; then GROUP_ID=1000; fi
|
||||||
|
|
||||||
|
# ccache
|
||||||
|
export CCACHE_DIR=/tmp/ccache
|
||||||
|
export USE_CCACHE=1
|
||||||
|
|
||||||
msg="docker_entrypoint: Creating user UID/GID [$USER_ID/$GROUP_ID]" && echo $msg
|
msg="docker_entrypoint: Creating user UID/GID [$USER_ID/$GROUP_ID]" && echo $msg
|
||||||
groupadd -g $GROUP_ID -r aosp && \
|
groupadd -g $GROUP_ID -r aosp && \
|
||||||
useradd -u $USER_ID --create-home -r -g aosp aosp
|
useradd -u $USER_ID --create-home -r -g aosp aosp
|
||||||
|
Loading…
x
Reference in New Issue
Block a user