Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
Tim-Philipp Müller
gst-ci
Commits
a1726fee
Commit
a1726fee
authored
Nov 22, 2018
by
Xavier Claessens
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add Android NDK toolchain in Ubuntu docker image
parent
68a71431
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
89 additions
and
1 deletion
+89
-1
docker/build-base-images/Dockerfile-ubuntu
docker/build-base-images/Dockerfile-ubuntu
+9
-1
docker/build-base-images/android-create-toolchain.sh
docker/build-base-images/android-create-toolchain.sh
+49
-0
docker/build-base-images/android-download-ndk.sh
docker/build-base-images/android-download-ndk.sh
+31
-0
No files found.
docker/build-base-images/Dockerfile-ubuntu
View file @
a1726fee
...
...
@@ -22,7 +22,8 @@ RUN \
git \
xvfb \
python3-pip \
wget
wget \
unzip
RUN pip3 install meson
...
...
@@ -31,6 +32,13 @@ ENV GST_BUILD_PATH="/gst-build/"
# Configure git for various usage
RUN git config --global user.email "gst-build@gstreamer.net" && git config --global user.name "Gstbuild Runner"
# Setup Android toolchain
COPY android-download-ndk.sh .
COPY android-create-toolchain.sh .
RUN ./android-download-ndk.sh
RUN ./android-create-toolchain.sh arm64 28
RUN rm -rf /android-ndk
# get gst-build and make all subprojects available
RUN git clone git://anongit.freedesktop.org/gstreamer/gst-build $GST_BUILD_PATH && \
cd $GST_BUILD_PATH && \
...
...
docker/build-base-images/android-create-toolchain.sh
0 → 100755
View file @
a1726fee
#!/bin/bash
#
# Copyright 2018 Collabora ltd.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, see <http://www.gnu.org/licenses/>.
#
# Author: Xavier Claessens <xavier.claessens@collabora.com>
#
set
-e
arch
=
$1
api
=
$2
toolchain_path
=
/android-toolchain-
$arch
-
$api
# Create standalone toolchains
/android-ndk/build/tools/make_standalone_toolchain.py
--arch
$arch
--api
$api
--install-dir
$toolchain_path
# Create a cross file that can be passed to meson
cat
>
android_
${
arch
}
_
${
api
}
.txt
<<-
EOM
[host_machine]
system = 'android'
cpu_family = 'aarch64'
cpu = '
${
arch
}
'
endian = 'little'
[properties]
c_args = ['--sysroot', '
${
toolchain_path
}
/sysroot']
cpp_args = ['--sysroot', '
${
toolchain_path
}
/sysroot']
[binaries]
c = '
${
toolchain_path
}
/bin/aarch64-linux-android-clang'
cpp = '
${
toolchain_path
}
/bin/aarch64-linux-android-clang++'
ar = '
${
toolchain_path
}
/bin/aarch64-linux-android-ar'
strip = '
${
toolchain_path
}
/bin/aarch64-linux-android-strip'
pkgconfig = 'false'
EOM
docker/build-base-images/android-download-ndk.sh
0 → 100755
View file @
a1726fee
#!/bin/bash
#
# Copyright 2018 Collabora ltd.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
# License as published by the Free Software Foundation; either
# version 2.1 of the License, or (at your option) any later version.
#
# This library is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
# Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this library; if not, see <http://www.gnu.org/licenses/>.
#
# Author: Xavier Claessens <xavier.claessens@collabora.com>
#
set
-e
# Download Android NDK
ANDROID_NDK_VERSION
=
"r18b"
ANDROID_NDK_SHA512
=
"a35ab95ece52819194a3874fd210abe5c25905212c4aafe5d75c465c14739a46340d1ff0944ad93ffbbc9c0d86107119399d4f60ec6c5f080758008e75c19617"
wget
--quiet
https://dl.google.com/android/repository/android-ndk-
$ANDROID_NDK_VERSION
-linux-x86_64
.zip
echo
"
$ANDROID_NDK_SHA512
android-ndk-
$ANDROID_NDK_VERSION
-linux-x86_64.zip"
|
sha512sum
-c
unzip android-ndk-
$ANDROID_NDK_VERSION
-linux-x86_64
.zip
rm
android-ndk-
$ANDROID_NDK_VERSION
-linux-x86_64
.zip
mv
android-ndk-
$ANDROID_NDK_VERSION
/android-ndk
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment