mirror of
https://github.com/signalapp/libsignal.git
synced 2025-12-05 01:10:27 +00:00
Move makefile and docker file into java subdir
This commit is contained in:
5
.dockerignore
Normal file
5
.dockerignore
Normal file
@@ -0,0 +1,5 @@
|
||||
/target
|
||||
/java/build
|
||||
/java/android/build
|
||||
/java/java/build
|
||||
/java/tests/build
|
||||
@@ -69,7 +69,7 @@ RUN rustup target add armv7-linux-androideabi aarch64-linux-android i686-linu
|
||||
|
||||
# Pre-download Gradle.
|
||||
COPY java/gradle gradle
|
||||
COPY java/gradlew .
|
||||
COPY java/gradlew gradlew
|
||||
RUN ./gradlew --version
|
||||
|
||||
RUN echo "${RUST_TOOLCHAIN}" > rust-toolchain
|
||||
@@ -12,17 +12,17 @@ default: java_build
|
||||
DOCKER_IMAGE := libsignal-builder
|
||||
|
||||
docker_image:
|
||||
$(DOCKER) build --build-arg UID=$$(id -u) --build-arg GID=$$(id -g) -t $(DOCKER_IMAGE) .
|
||||
cd .. && $(DOCKER) build --build-arg UID=$$(id -u) --build-arg GID=$$(id -g) -t $(DOCKER_IMAGE) -f java/Dockerfile .
|
||||
|
||||
java_build: DOCKER_EXTRA=$(shell [ -L build ] && P=$$(readlink build) && echo -v $$P/:$$P )
|
||||
java_build: docker_image
|
||||
$(DOCKER) run --rm --user $$(id -u):$$(id -g) \
|
||||
-v `pwd`/:/home/libsignal/src $(DOCKER_EXTRA) $(DOCKER_IMAGE) \
|
||||
-v `cd .. && pwd`/:/home/libsignal/src $(DOCKER_EXTRA) $(DOCKER_IMAGE) \
|
||||
sh -c "cp rust-toolchain src/; cd src/java; ./gradlew build"
|
||||
|
||||
java_test: java_build
|
||||
$(DOCKER) run --rm --user $$(id -u):$$(id -g) \
|
||||
-v `pwd`/:/home/libsignal/src $(DOCKER_EXTRA) $(DOCKER_IMAGE) \
|
||||
-v `cd .. && pwd`/:/home/libsignal/src $(DOCKER_EXTRA) $(DOCKER_IMAGE) \
|
||||
sh -c "cp rust-toolchain src/; cd src/java; ./gradlew test"
|
||||
|
||||
SONATYPE_USERNAME ?=
|
||||
@@ -41,7 +41,7 @@ publish_java: docker_image
|
||||
@[ -n "$(SIGNING_KEY)" ] || ( echo "SIGNING_KEY is not set" && false )
|
||||
@[ -n "$(SIGNING_KEY_PASSWORD)" ] || ( echo "SIGNING_KEY_PASSWORD is not set" && false )
|
||||
$(DOCKER) run --rm --user $$(id -u):$$(id -g) \
|
||||
-v `pwd`/:/home/libsignal/src $(DOCKER_EXTRA) \
|
||||
-v `cd .. && pwd`/:/home/libsignal/src $(DOCKER_EXTRA) \
|
||||
-v $(KEYRING_VOLUME):/home/libsignal/keyring \
|
||||
$(DOCKER_IMAGE) \
|
||||
sh -c "cp rust-toolchain src; cd src/java; ./gradlew uploadArchives \
|
||||
@@ -128,3 +128,6 @@ task installArchives(type: Upload) {
|
||||
}
|
||||
}
|
||||
|
||||
tasks.withType(JavaCompile) {
|
||||
compileTask -> compileTask.dependsOn ':makeJniLibrariesAndroid'
|
||||
}
|
||||
|
||||
@@ -11,11 +11,18 @@ subprojects {
|
||||
}
|
||||
}
|
||||
|
||||
task makeJniLibraries(type:Exec) {
|
||||
task makeJniLibrariesAndroid(type:Exec) {
|
||||
group 'Rust'
|
||||
description 'Build the JNI libraries'
|
||||
|
||||
commandLine './build_jni.sh'
|
||||
commandLine './build_jni.sh', 'android'
|
||||
}
|
||||
|
||||
task makeJniLibrariesDesktop(type:Exec) {
|
||||
group 'Rust'
|
||||
description 'Build the JNI libraries'
|
||||
|
||||
commandLine './build_jni.sh', 'desktop'
|
||||
}
|
||||
|
||||
task makeAll() {
|
||||
|
||||
@@ -13,8 +13,16 @@ export RUSTFLAGS="-C link-args=-s"
|
||||
|
||||
cd .. || exit
|
||||
|
||||
cargo build -Z unstable-options -p libsignal-jni --release --target x86_64-unknown-linux-gnu --out-dir=$DESKTOP_LIB_DIR
|
||||
cargo ndk --target armv7-linux-androideabi --platform 19 -- build -Z unstable-options -p libsignal-jni --release --out-dir=$ANDROID_LIB_DIR/armeabi-v7a
|
||||
cargo ndk --target aarch64-linux-android --platform 21 -- build -Z unstable-options -p libsignal-jni --release --out-dir=$ANDROID_LIB_DIR/arm64-v8a
|
||||
cargo ndk --target i686-linux-android --platform 19 -- build -Z unstable-options -p libsignal-jni --release --out-dir=$ANDROID_LIB_DIR/x86
|
||||
cargo ndk --target x86_64-linux-android --platform 21 -- build -Z unstable-options -p libsignal-jni --release --out-dir=$ANDROID_LIB_DIR/x86_64
|
||||
if [ "$1" = 'desktop' ];
|
||||
then
|
||||
cargo build -Z unstable-options -p libsignal-jni --release --target x86_64-unknown-linux-gnu --out-dir=$DESKTOP_LIB_DIR
|
||||
elif [ "$1" = 'android' ];
|
||||
then
|
||||
cargo ndk --target armv7-linux-androideabi --platform 19 -- build -Z unstable-options -p libsignal-jni --release --out-dir=$ANDROID_LIB_DIR/armeabi-v7a
|
||||
cargo ndk --target aarch64-linux-android --platform 21 -- build -Z unstable-options -p libsignal-jni --release --out-dir=$ANDROID_LIB_DIR/arm64-v8a
|
||||
cargo ndk --target i686-linux-android --platform 19 -- build -Z unstable-options -p libsignal-jni --release --out-dir=$ANDROID_LIB_DIR/x86
|
||||
cargo ndk --target x86_64-linux-android --platform 21 -- build -Z unstable-options -p libsignal-jni --release --out-dir=$ANDROID_LIB_DIR/x86_64
|
||||
else
|
||||
echo "Unknown target (use 'desktop' or 'android')"
|
||||
fi
|
||||
|
||||
|
||||
@@ -156,5 +156,5 @@ artifacts {
|
||||
}
|
||||
|
||||
tasks.withType(JavaCompile) {
|
||||
compileTask -> compileTask.dependsOn ':makeJniLibraries'
|
||||
compileTask -> compileTask.dependsOn ':makeJniLibrariesDesktop'
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user