Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
L
libc
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Issue analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
felixmoebius
libc
Commits
2fd7f7a4
Commit
2fd7f7a4
authored
7 years ago
by
Marco A L Barbosa
Browse files
Options
Downloads
Patches
Plain Diff
Add x86_64-linux-android test
parent
f9ae8e6d
Loading
Loading
Loading
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
.travis.yml
+4
-0
4 additions, 0 deletions
.travis.yml
ci/android-sysimage.sh
+52
-0
52 additions, 0 deletions
ci/android-sysimage.sh
ci/docker/x86_64-linux-android/Dockerfile
+14
-20
14 additions, 20 deletions
ci/docker/x86_64-linux-android/Dockerfile
ci/run.sh
+4
-1
4 additions, 1 deletion
ci/run.sh
with
74 additions
and
21 deletions
.travis.yml
+
4
−
0
View file @
2fd7f7a4
...
...
@@ -56,6 +56,10 @@ matrix:
-
os
:
linux
env
:
TARGET=i686-linux-android
rust
:
stable
# as of 2017/05/03 x86_64-linux-android are not on stable
-
os
:
linux
env
:
TARGET=x86_64-linux-android
rust
:
beta
-
os
:
linux
env
:
TARGET=x86_64-unknown-linux-musl
rust
:
stable
...
...
This diff is collapsed.
Click to expand it.
ci/android-sysimage.sh
0 → 100644
+
52
−
0
View file @
2fd7f7a4
# Copyright 2017 The Rust Project Developers. See the COPYRIGHT
# file at the top-level directory of this distribution and at
# http://rust-lang.org/COPYRIGHT.
#
# Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
# http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
# <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
# option. This file may not be copied, modified, or distributed
# except according to those terms.
set
-ex
URL
=
https://dl.google.com/android/repository/sys-img/android
main
()
{
local arch
=
$1
local
name
=
$2
local
dest
=
/system
local
td
=
$(
mktemp
-d
)
apt-get
install
--no-install-recommends
e2tools
pushd
$td
curl
-O
$URL
/
$name
unzip
-q
$name
local
system
=
$(
find
.
-name
system.img
)
mkdir
-p
$dest
/
{
bin,lib,lib64
}
# Extract android linker and libraries to /system
# This allows android executables to be run directly (or with qemu)
if
[
$arch
=
"x86_64"
-o
$arch
=
"arm64"
]
;
then
e2cp
-p
$system
:/bin/linker64
$dest
/bin/
e2cp
-p
$system
:/lib64/libdl.so
$dest
/lib64/
e2cp
-p
$system
:/lib64/libc.so
$dest
/lib64/
e2cp
-p
$system
:/lib64/libm.so
$dest
/lib64/
else
e2cp
-p
$system
:/bin/linker
$dest
/bin/
e2cp
-p
$system
:/lib/libdl.so
$dest
/lib/
e2cp
-p
$system
:/lib/libc.so
$dest
/lib/
e2cp
-p
$system
:/lib/libm.so
$dest
/lib/
fi
# clean up
apt-get purge
--auto-remove
-y
e2tools
popd
rm
-rf
$td
}
main
"
${
@
}
"
This diff is collapsed.
Click to expand it.
ci/docker/x86_64-linux-android/Dockerfile
+
14
−
20
View file @
2fd7f7a4
FROM
ubuntu:16.04
RUN
dpkg
--add-architecture
i386
&&
\
apt-get update
&&
\
RUN
apt-get update
&&
\
apt-get
install
-y
--no-install-recommends
\
file
\
curl
\
ca-certificates
\
python
\
unzip
\
expect
\
openjdk-9-jre
\
libstdc++6:i386
\
libpulse0
\
curl
\
gcc
\
libc6-dev
libc-dev
\
python
\
unzip
WORKDIR
/android/
COPY
android* /android/
ENV
ANDROID_ARCH=x86_64
ENV
PATH=$PATH:/android/ndk-$ANDROID_ARCH/bin:/android/sdk/tools:/android/sdk/platform-tools
COPY
android-install-ndk.sh /android/
RUN
sh /android/android-install-ndk.sh
$ANDROID_ARCH
RUN
sh /android/android-install-sdk.sh
$ANDROID_ARCH
RUN
mv
/root/.android /tmp
RUN
chmod
777
-R
/tmp/.android
RUN
chmod
755 /android/sdk/tools/
*
/android/sdk/tools/qemu/linux-x86_64/
*
ENV
PATH=$PATH:/rust/bin \
# We do not run x86_64-linux-android tests on an android emulator.
# See ci/android-sysimage.sh for informations about how tests are run.
COPY
android-sysimage.sh /android/
RUN
bash /android/android-sysimage.sh x86_64 x86_64-21_r04.zip
ENV
PATH=$PATH:/rust/bin:/android/ndk-$ANDROID_ARCH/bin \
CARGO_TARGET_X86_64_LINUX_ANDROID_LINKER=x86_64-linux-android-gcc \
CC_x86_64_linux_android=x86_64-linux-android-gcc \
CXX_x86_64_linux_android=x86_64-linux-android-g++ \
HOME=/tmp
This diff is collapsed.
Click to expand it.
ci/run.sh
+
4
−
1
View file @
2fd7f7a4
...
...
@@ -105,7 +105,10 @@ case "$TARGET" in
esac
case
"
$TARGET
"
in
arm-linux-androideabi
|
aarch64-linux-android
|
i686-linux-android
|
x86_64-linux-android
)
# Android emulator for x86_64 does not work on travis (missing hardware
# acceleration). Tests are run on case *). See ci/android-sysimage.sh for
# informations about how tests are run.
arm-linux-androideabi
|
aarch64-linux-android
|
i686-linux-android
)
# set SHELL so android can detect a 64bits system, see
# http://stackoverflow.com/a/41789144
# https://issues.jenkins-ci.org/browse/JENKINS-26930?focusedCommentId=230791&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-230791
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment