Age | Commit message (Collapse) | Author |
|
mirror_0xacab_master
|
|
|
|
docker image references
|
|
Feature/update dependencies
See merge request leap/bitmask_android!8
|
|
This reverts commit 9c963b3bc34fac9e5a51b753cf7aba624680307a.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
update ndk and sdk for gitlab ci
See merge request leap/bitmask_android!7
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Fixes failing tests
See merge request !5
|
|
|
|
|
|
code guidelines
|
|
|
|
failure earlier
|
|
ActivityInstrumentationTestCase2
|
|
|
|
|
|
Add CAA
See merge request !4
|
|
|
|
|
|
|
|
Closes https://0xacab.org/leap/bitmask_android/merge_requests/1
README:
add detailed instructions on installing and compiling
provide workarounds for gotchas setting up emulator on 64-bit debian
provide updated dockerfile & offer instructions for building in docker
Docker:
move dockerfiles to registry contained w/in bitmask_android repo
provide separate dockerfiles for sdk (base), ndk, and emulator images
resolve issues causing containerized build to fail, including:
upstream ics-openvpn conflict with clang (:. transitively with ndk >
r12b)
(subtle!) missing dependency of ndk r12b on file (message: "missing
file" meant a missing program called "file" not an actual missing file)
missing locales causing errors in copyIcsOpenVPNFiles build step
(resolved by generating all locales in dockerfile)
silent failure in sdknmanager's isntallation of platforms;android-23
during image build causing install failure in remote (but not local!)
containers
Signed-off-by: kwadronaut <kwadronaut@leap.se>
|
|
|
|
|
|
* on remote builds, failure of Android SDK Platform 23 to properly
install was causing build failures undetected in local container.
see: <https://0xacab.org/aguestuser/bitmask_android/builds/9906>
* to fix this, tweak order of `sdkmanager` calls and remove `echo -y`
flags to ensure platform installation completes successfully and
build step never tries to install Platform 23
|
|
|
|
|
|
|
|
|
|
|
|
* this change was necessitated by prior format failing a whitelisted
images check here: https://0xacab.org/aguestuser/bitmask_android/builds/9406
* NOTE: this format means we can't label `android-sdk` images by version
because the tag is reserved for the image name, not the version :(
* ie: the whitelist forces us to specify `bimtask_android:android-sdk`
rather than `bitmask_android/android-sdk:0.0.1` -- is there a reason for this?
|
|
* for greater compartmentalization and self-documentation,
use docker registry in this repo to host image used in its build
rather than registry in `leap/gitlab-buildpackage` as before
|
|
* HACK: replace all toolchain references to `linux-x86_64` with `linux-x86`
* FIX: provide dependency on `file` package that will allow `ndk-build` to
detect 32-bit userland, making this
* side-effects:
* group sdk/env vars with installation code that uses them
* add explanatory note about why we use outdated version of `android-ndk`
------------------
*Explanation:*
More careful analysis of the meaning of the word `file` in this (subtle!) error message:
```shell
/opt/android-sdk-linux/android-ndk-r12b/build/ndk-build: 143: /opt/android-sdk-linux/android-ndk-r12b/build/ndk-build: file: not found
```
led to inspecting line 143 of `ndk-build`, revealing an undefined variable
called `file` that would allow `ndk-build` to detect a 32-bit userland:
```shell
file -L "$SHELL" | grep -q "x86[_-]64"
```
Thus the error messsage was *not* trying to tell us that a file could
not be found, but that the program called `file` could not be
found. FUN! :)
|
|
* PROBLEM:
* most recent version (r14b) of `android-ndk` uses `clang` for cross-compilation
* BUT: `openssl` cannot compile successfully w/ `clang`
* AND: we depend on `openssl` transitively through `ics-openvpn`
while trying to use `android-ndk` r14b
* FIX:
* downgrade to `android-ndk` (12b) (most recent versoin that still
uses `gcc` instead of `clang`)
* modify some of the default
* REMAINING PROBLEMS:
* some string translations for Jamaica now break the build (unclear
why -- outdated country abbreviation? ja for jm???)
* we are now using a version of ndk that is 2 versions old and a
version of ics-openvpn (pinned to a 3.1.2016 commit via submodule)
that depends on an outdated version of `openssl`, which raises
security concerns. updating to the most recent version will force
us to wade into all the dependency problems amongst `ics-openvpn`/`openssl`/`ndk`
* REFERENCES:
* on `openssl` incompatibility w/ clang: https://github.com/openssl/openssl/pull/2229
* on `ics-openvpn` problems with `ndk`: https://github.com/android-ndk/ndk/issues/144
|