diff --git a/Dockerfile b/Dockerfile index 9c53152..f07dcd0 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,13 +1,17 @@ FROM debian:latest RUN apt-get update && apt-get install -y \ - build-essential \ - cmake \ - git \ - nlohmann-json3-dev wget curl cmake ninja-build mold build-essential nodejs npm jq ccache \ + build-essential cmake git wget tar curl ninja-build mold nodejs npm perl jq ccache nlohmann-json3-dev \ && rm -rf /var/lib/apt/lists/* -#RUN curl -fsSL https://get.docker.com | sh +RUN echo "deb http://deb.debian.org/debian testing main" | tee /etc/apt/sources.list.d/testing-temp.list + +RUN apt-get update && apt-get -t testing install -y upx-ucl && \ + rm -rf /var/lib/apt/lists/* && \ + rm /etc/apt/sources.list.d/testing-temp.list && \ + apt-get update + +RUN curl -fsSL https://get.docker.com | sh COPY --chmod=0755 ./src/* /usr/local/bin/ diff --git a/src/build.x86_64/openssl-3.5.0.tar.gz b/src/build.x86_64/openssl-3.5.0.tar.gz new file mode 100644 index 0000000..475463d Binary files /dev/null and b/src/build.x86_64/openssl-3.5.0.tar.gz differ diff --git a/src/dropshell-build-install-requirements b/src/dropshell-build-install-requirements index c15c1eb..dd20d92 100755 --- a/src/dropshell-build-install-requirements +++ b/src/dropshell-build-install-requirements @@ -197,6 +197,13 @@ function install_openssl_musl() { local MUSL_PATH="${INSTALL_DIR}/${FULLARCH}" [ -d "$MUSL_PATH" ] || _die "MUSL_PATH does not exist: $MUSL_PATH" + LIBPATH="$MUSL_PATH/${ARCH_SHORT_PREFIX}/sysroot/usr/lib" + [ -d "$LIBPATH" ] || LIBPATH="$MUSL_PATH/${ARCH_SHORT_PREFIX}/sysroot/usr/lib64" + if [ -f "$LIBPATH/libssl.a" ]; then + echo "OpenSSL $ARCH is already installed" + return + fi + local BUILD_DIR="${SCRIPT_DIR}/build.$ARCH" mkdir -p "$BUILD_DIR" @@ -213,8 +220,11 @@ function install_openssl_musl() { OPENSSL_TARGET=$(toolchain_to_openssl_target "$FULLARCH") local SYSROOT="$MUSL_PATH/${ARCH_SHORT_PREFIX}/sysroot" local CC="$MUSL_PATH/bin/${ARCH_SHORT_PREFIX}-gcc" + [ -f "$CC" ] || CC="$MUSL_PATH/bin/gcc" local AR="$MUSL_PATH/bin/${ARCH_SHORT_PREFIX}-ar" + [ -f "$AR" ] || AR="$MUSL_PATH/bin/ar" local RANLIB="$MUSL_PATH/bin/${ARCH_SHORT_PREFIX}-ranlib" + [ -f "$RANLIB" ] || RANLIB="$MUSL_PATH/bin/ranlib" DEST_PATH="$SYSROOT/usr/lib/libssl.a" if [ -f "$DEST_PATH" ]; then @@ -243,7 +253,7 @@ function install_openssl_musl() { cd "$PREVDIR" - echo "OpenSSL built and installed for all detected musl toolchains." + echo "OpenSSL built and installed for $FULLARCH" }