This commit is contained in:
Andrea Cavalli 2022-02-19 00:43:53 +01:00
parent 89b3f04f0a
commit 857902fb2b
3 changed files with 25 additions and 19 deletions

View File

@ -12,7 +12,8 @@ RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
RUN apt update && apt upgrade -y RUN apt update && apt upgrade -y
RUN apt install -y sudo build-essential openjdk-11-jdk locales wget cmake gperf ccache maven RUN apt install -y sudo build-essential openjdk-11-jdk locales wget cmake gperf ccache maven \
libssl-dev libssl1.1 zlib1g-dev zlib1g
RUN sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && \ RUN sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && \
dpkg-reconfigure --frontend=noninteractive locales && \ dpkg-reconfigure --frontend=noninteractive locales && \
@ -27,9 +28,6 @@ ADD src /usr/src/tdlight-java-natives/src
WORKDIR /usr/src/tdlight-java-natives/ WORKDIR /usr/src/tdlight-java-natives/
ENV JAVA_HOME="$(find "/usr/lib/jvm/" -maxdepth 1 -type d -iname "java*jdk*" | head -n 1)/"
ENV JAVA_INCLUDE_PATH="$JAVA_HOME/include"
RUN /bin/bash /usr/src/tdlight-java-natives/scripts/continuous-integration/docker/build-natives.sh RUN /bin/bash /usr/src/tdlight-java-natives/scripts/continuous-integration/docker/build-natives.sh
#WORKDIR /usr/src/tdlight-java-natives/generated/ #WORKDIR /usr/src/tdlight-java-natives/generated/

View File

@ -1,3 +1,4 @@
#!/bin/bash -e
source ./scripts/continuous-integration/github-workflows/setup-variables.sh source ./scripts/continuous-integration/github-workflows/setup-variables.sh
# Check variables correctness # Check variables correctness
if [ -z "${CPU_ARCH_DPKG}" ]; then if [ -z "${CPU_ARCH_DPKG}" ]; then
@ -12,7 +13,7 @@ fi
CROSS_OPENJDK_PATH="" CROSS_OPENJDK_PATH=""
fix_jdk_path() { fix_jdk_path() {
# Setup OpenJDK path # Setup OpenJDK path
CROSS_OPENJDK_PATH="$(find "$CROSS_BUILD_DEPS_DIR/usr/lib/jvm/" -maxdepth 1 -type d -iname "java*jdk*" | head -n 1)" CROSS_OPENJDK_PATH=$(find "$CROSS_BUILD_DEPS_DIR/usr/lib/jvm/" -maxdepth 1 -type d -iname "java*jdk*" | head -n 1)
} }
check_jdk_existance() { check_jdk_existance() {
@ -22,10 +23,15 @@ check_jdk_existance() {
fi fi
} }
PWD_BEFORE_CROSS_DEPS=$(pwd)
if [[ ! -f "$CROSS_BUILD_DEPS_DIR/ok-012" ]]; then if [[ ! -f "$CROSS_BUILD_DEPS_DIR/ok-012" ]]; then
rm -rf "$CROSS_BUILD_DEPS_DIR" || true rm -rf "$CROSS_BUILD_DEPS_DIR" || true
mkdir -p "$CROSS_BUILD_DEPS_DIR" mkdir -p "$CROSS_BUILD_DEPS_DIR"
cd "$CROSS_BUILD_DEPS_DIR" || exit 1 cd "$CROSS_BUILD_DEPS_DIR"
dpkg --add-architecture arm64
apt-get update
# LibZ-Dev # LibZ-Dev
apt-get download "zlib1g-dev:${CPU_ARCH_DPKG}" apt-get download "zlib1g-dev:${CPU_ARCH_DPKG}"
ZLIB1G_DEV_DEB=$(find . -name "zlib1g-dev_*.deb") ZLIB1G_DEV_DEB=$(find . -name "zlib1g-dev_*.deb")
@ -42,33 +48,33 @@ if [[ ! -f "$CROSS_BUILD_DEPS_DIR/ok-012" ]]; then
dpkg -x "$LIBSSL_DEV_DEB" "$CROSS_BUILD_DEPS_DIR" dpkg -x "$LIBSSL_DEV_DEB" "$CROSS_BUILD_DEPS_DIR"
rm "$LIBSSL_DEV_DEB" rm "$LIBSSL_DEV_DEB"
# LibSSL # LibSSL
apt-get download "libssl:${CPU_ARCH_DPKG}" apt-get download "libssl1.1:${CPU_ARCH_DPKG}"
LIBSSL_DEB=$(find . -name "libssl_*.deb") LIBSSL_DEB=$(find . -name "libssl1.1_*.deb")
dpkg -x "$LIBSSL_DEB" "$CROSS_BUILD_DEPS_DIR" dpkg -x "$LIBSSL_DEB" "$CROSS_BUILD_DEPS_DIR"
rm "$LIBSSL_DEB" rm "$LIBSSL_DEB"
# Java Common # Java Common
apt-get download "java-common:${CPU_ARCH_DPKG}" apt-get download "java-common"
JC_DEB=$(find . -name "java-common_*.deb") JC_DEB=$(find . -name "java-common_*.deb")
dpkg -x "$JC_DEB" "$CROSS_BUILD_DEPS_DIR" dpkg -x "$JC_DEB" "$CROSS_BUILD_DEPS_DIR"
rm "$JC_DEB" rm "$JC_DEB"
# OpenJDK-JRE-Headless # OpenJDK-JRE-Headless
apt-get download "jdk-11-jre-headless:${CPU_ARCH_DPKG}" apt-get download "openjdk-11-jre-headless:${CPU_ARCH_DPKG}"
OJDKRH_DEB=$(find . -name "jdk-11-jre-headless_*.deb") OJDKRH_DEB=$(find . -name "openjdk-11-jre-headless_*.deb")
dpkg -x "$OJDKRH_DEB" "$CROSS_BUILD_DEPS_DIR" dpkg -x "$OJDKRH_DEB" "$CROSS_BUILD_DEPS_DIR"
rm "$OJDKRH_DEB" rm "$OJDKRH_DEB"
# OpenJDK-JRE # OpenJDK-JRE
apt-get download "jdk-11-jre:${CPU_ARCH_DPKG}" apt-get download "openjdk-11-jre:${CPU_ARCH_DPKG}"
OJDKR_DEB=$(find . -name "jdk-11-jre_*.deb") OJDKR_DEB=$(find . -name "openjdk-11-jre_*.deb")
dpkg -x "$OJDKR_DEB" "$CROSS_BUILD_DEPS_DIR" dpkg -x "$OJDKR_DEB" "$CROSS_BUILD_DEPS_DIR"
rm "$OJDKR_DEB" rm "$OJDKR_DEB"
# OpenJDK-JDK # OpenJDK-JDK
apt-get download "jdk-11-jdk-headless:${CPU_ARCH_DPKG}" apt-get download "openjdk-11-jdk-headless:${CPU_ARCH_DPKG}"
OJDKJ_DEB=$(find . -name "jdk-11-jdk-headless_*.deb") OJDKJ_DEB=$(find . -name "openjdk-11-jdk-headless_*.deb")
dpkg -x "$OJDKJ_DEB" "$CROSS_BUILD_DEPS_DIR" dpkg -x "$OJDKJ_DEB" "$CROSS_BUILD_DEPS_DIR"
rm "$OJDKJ_DEB" rm "$OJDKJ_DEB"
# OpenJDK-GUI # OpenJDK-GUI
apt-get download "jdk-11-jdk:${CPU_ARCH_DPKG}" apt-get download "openjdk-11-jdk:${CPU_ARCH_DPKG}"
OJDKG_DEB=$(find . -name "jdk-11-jdk_*.deb") OJDKG_DEB=$(find . -name "openjdk-11-jdk_*.deb")
dpkg -x "$OJDKG_DEB" "$CROSS_BUILD_DEPS_DIR" dpkg -x "$OJDKG_DEB" "$CROSS_BUILD_DEPS_DIR"
rm "$OJDKG_DEB" rm "$OJDKG_DEB"
@ -84,6 +90,7 @@ if [[ ! -f "$CROSS_BUILD_DEPS_DIR/ok-012" ]]; then
fi fi
fix_jdk_path fix_jdk_path
check_jdk_existance check_jdk_existance
cd "${PWD_BEFORE_CROSS_DEPS}"
source ./scripts/continuous-integration/github-workflows/install-dependencies.sh source ./scripts/continuous-integration/github-workflows/install-dependencies.sh
sudo apt install -y "crossbuild-essential-${CPU_ARCH_DPKG}" sudo apt install -y "crossbuild-essential-${CPU_ARCH_DPKG}"

View File

@ -49,12 +49,13 @@ echo "CMake extra arguments: '${CMAKE_EXTRA_ARGUMENTS}'"
echo "Cross build deps dir: '${CROSS_BUILD_DEPS_DIR}'" echo "Cross build deps dir: '${CROSS_BUILD_DEPS_DIR}'"
if [[ "$OPERATING_SYSTEM_NAME" == "linux" ]]; then if [[ "$OPERATING_SYSTEM_NAME" == "linux" ]]; then
if [ -z "${CROSS_BUILD_DEPS_DIR}" ]; then if [ -n "${CROSS_BUILD_DEPS_DIR}" ]; then
CROSS_OPENJDK_PATH="" CROSS_OPENJDK_PATH=""
fix_jdk_path() { fix_jdk_path() {
# Setup OpenJDK path # Setup OpenJDK path
CROSS_OPENJDK_PATH="$(find "$CROSS_BUILD_DEPS_DIR/usr/lib/jvm/" -maxdepth 1 -type d -iname "java*jdk*" | head -n 1)" CROSS_OPENJDK_PATH=$(find "$CROSS_BUILD_DEPS_DIR/usr/lib/jvm/" -maxdepth 1 -type d -iname "java*jdk*" | head -n 1)
echo "Fixed cross openjdk path: '${CROSS_OPENJDK_PATH}'"
} }
check_jdk_existance() { check_jdk_existance() {