diff --git a/Cargo.toml b/Cargo.toml index 19006c7..43eb08a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -53,3 +53,6 @@ escargot = "0.5.0" [profile.release] lto = true codegen-units = 1 + +[package.metadata.cross.target.x86_64-unknown-linux-musl] +dockerfile = "Dockerfile.lambda" diff --git a/Dockerfile.lambda b/Dockerfile.lambda new file mode 100644 index 0000000..171e91d --- /dev/null +++ b/Dockerfile.lambda @@ -0,0 +1,16 @@ +ARG CROSS_BASE_IMAGE +FROM ${CROSS_BASE_IMAGE} +# Note that we're assuming an Ubuntu-based image in all cases though + +ARG CFLAGS="" +ARG LDFLAGS="" + +ARG OPENSSL_BUILD_VER=3.0.12 +RUN cd /usr/local/src/ && curl -sLO https://www.openssl.org/source/openssl-${OPENSSL_BUILD_VER}.tar.gz && \ + tar xzvf openssl-${OPENSSL_BUILD_VER}.tar.gz && cd openssl-${OPENSSL_BUILD_VER} && \ + CROSS_COMPILE="x86_64-linux-musl-" ./Configure --prefix=/usr/local/openssl-${OPENSSL_BUILD_VER} linux-x86_64 && make && make install + +ENV OPENSSL_DIR="/usr/local/openssl-${OPENSSL_BUILD_VER}" +ENV OPENSSL_STATIC="/usr/local/openssl-${OPENSSL_BUILD_VER}/lib" +ENV CFLAGS="${CFLAGS} -I/usr/local/openssl-${OPENSSL_BUILD_VER}/include" +ENV LDFLAGS="${LDFLAGS} -L/usr/local/openssl-${OPENSSL_BUILD_VER}/lib64"