diff --git a/deps/luaopenssl-unixbuild.sh b/deps/luaopenssl-unixbuild.sh index 895a4f36..fb70048e 100755 --- a/deps/luaopenssl-unixbuild.sh +++ b/deps/luaopenssl-unixbuild.sh @@ -8,15 +8,13 @@ OUT_DIR=$(pwd)/ninjabuild-unix LUAJIT_SRC_DIR=$(pwd)/deps/LuaJIT/LuaJIT/src LUAJIT_LIBRARY_PATH=$OUT_DIR/libluajit.a +STATIC_LUAJIT_FLAGS="-DLUAJIT_INCLUDE_DIRS=$LUAJIT_SRC_DIR -DLUA_INCLUDE_DIR=$LUAJIT_SRC_DIR -DLUAJIT_LIBRARY=$LUAJIT_LIBRARY_PATH " OPENSSL_DIR=$OUT_DIR -OPENSSL_INCLUDE_DIR=deps/openssl/openssl/include -LIBCRYPTO=$OUT_DIR/libcrypto.a -LIBSSL=$OUT_DIR/libssl.a +OPENSSL_INCLUDE_DIR=$(pwd)/deps/openssl/openssl/include +STATIC_OPENSSL_FLAGS="-DOPENSSL_INCLUDE_DIR=$OPENSSL_INCLUDE_DIR -DOPENSSL_USE_STATIC_LIBS=ON -DOPENSSL_ROOT_DIR=$OPENSSL_DIR" -unset PKG_CONFIG_PATH # Prevent CMake from using the system OpenSSL (which may not necessarily be compatible) - -cmake -S $SRC_DIR -B $BUILD_DIR -G Ninja -DOPENSSL_LIBRARIES=$OUT_DIR -DBUILD_SHARED_LUA_OPENSSL=OFF -DOPENSSL_ROOT_DIR=$OPENSSL_DIR -DOPENSSL_INCLUDE_DIR=$OPENSSL_INCLUDE_DIR -DLUAJIT_INCLUDE_DIRS=$LUAJIT_SRC_DIR -DLUAJIT_LIBRARIES=$LUAJIT_SRC_DIR -DLUA_INCLUDE_DIR=$LUAJIT_SRC_DIR -DLUAJIT_LIBRARIES=$LUAJIT_LIBRARY_PATH -DCMAKE_C_COMPILER=gcc -DOPENSSL_CRYPTO_LIBRARY=$LIBCRYPTO -DOPENSSL_SSL_LIBRARY=$LIBSSL -DLUA_OPENSSL_LIBTYPE=STATIC -DOPENSSL_USE_STATIC_LIBS=ON +cmake -S $SRC_DIR -B $BUILD_DIR -G Ninja -DBUILD_SHARED_LUA_OPENSSL=OFF -DCMAKE_C_COMPILER=gcc -DLUA_OPENSSL_LIBTYPE=STATIC $STATIC_OPENSSL_FLAGS $STATIC_LUAJIT_FLAGS cmake --build $BUILD_DIR --clean-first cp $BUILD_DIR/openssl.a $OUT_DIR diff --git a/deps/luaopenssl-windowsbuild.sh b/deps/luaopenssl-windowsbuild.sh index 983462db..d34fab46 100755 --- a/deps/luaopenssl-windowsbuild.sh +++ b/deps/luaopenssl-windowsbuild.sh @@ -8,13 +8,13 @@ OUT_DIR=$(pwd)/ninjabuild-windows LUAJIT_SRC_DIR=$(pwd)/deps/LuaJIT/LuaJIT/src LUAJIT_LIBRARY_PATH=$OUT_DIR/libluajit.a +STATIC_LUAJIT_FLAGS="-DLUAJIT_INCLUDE_DIRS=$LUAJIT_SRC_DIR -DLUA_INCLUDE_DIR=$LUAJIT_SRC_DIR -DLUAJIT_LIBRARY=$LUAJIT_LIBRARY_PATH " OPENSSL_DIR=$OUT_DIR -OPENSSL_INCLUDE_DIR=deps/openssl/openssl/include -LIBCRYPTO=$OUT_DIR/libcrypto.a -LIBSSL=$OUT_DIR/libssl.a +OPENSSL_INCLUDE_DIR=$(pwd)/deps/openssl/openssl/include +STATIC_OPENSSL_FLAGS="-DOPENSSL_INCLUDE_DIR=$OPENSSL_INCLUDE_DIR -DOPENSSL_USE_STATIC_LIBS=ON -DOPENSSL_ROOT_DIR=$OPENSSL_DIR" -cmake -S $SRC_DIR -B $BUILD_DIR -G Ninja -DOPENSSL_LIBRARIES=$OUT_DIR -DBUILD_SHARED_LUA_OPENSSL=OFF -DOPENSSL_ROOT_DIR=$OPENSSL_DIR -DOPENSSL_INCLUDE_DIR=$OPENSSL_INCLUDE_DIR -DLUAJIT_INCLUDE_DIRS=$LUAJIT_SRC_DIR -DLUAJIT_LIBRARIES=$LUAJIT_SRC_DIR -DLUA_INCLUDE_DIR=$LUAJIT_SRC_DIR -DLUAJIT_LIBRARIES=$LUAJIT_LIBRARY_PATH -DCMAKE_C_COMPILER=gcc -DOPENSSL_CRYPTO_LIBRARY=$LIBCRYPTO -DOPENSSL_SSL_LIBRARY=$LIBSSL -DLUA_OPENSSL_LIBTYPE=STATIC -DOPENSSL_USE_STATIC_LIBS=ON +cmake -S $SRC_DIR -B $BUILD_DIR -G Ninja -DBUILD_SHARED_LUA_OPENSSL=OFF -DCMAKE_C_COMPILER=gcc -DLUA_OPENSSL_LIBTYPE=STATIC $STATIC_OPENSSL_FLAGS $STATIC_LUAJIT_FLAGS cmake --build $BUILD_DIR --clean-first cp $BUILD_DIR/openssl.a $OUT_DIR diff --git a/deps/openssl-unixbuild.sh b/deps/openssl-unixbuild.sh index 54e4ef8d..9a8790d9 100755 --- a/deps/openssl-unixbuild.sh +++ b/deps/openssl-unixbuild.sh @@ -9,7 +9,12 @@ OPENSSL_DIR=deps/openssl/openssl cd $OPENSSL_DIR -./config no-tests no-shared no-dso +OPENSSL_STATIC_FLAGS="no-pinshared no-shared" +OPENSSL_UNUSED_FEATURES="no-dso no-module no-ui-console" +OPENSSL_UNUSED_TARGETS="no-apps no-docs no-makedepend no-tests" +OPENSSL_OPTIONAL_FEATURES="enable-ec_nistp_64_gcc_128 enable-ktls enable-tfo" +OPENSSL_FEATURE_FLAGS="$OPENSSL_UNUSED_FEATURES $OPENSSL_OPTIONAL_FEATURES $OPENSSL_UNUSED_TARGETS" +./config $OPENSSL_STATIC_FLAGS $OPENSSL_FEATURE_FLAGS make clean make -j $NUM_PARALLEL_JOBS diff --git a/deps/openssl-windowsbuild.sh b/deps/openssl-windowsbuild.sh index 831b24b9..cd04246c 100755 --- a/deps/openssl-windowsbuild.sh +++ b/deps/openssl-windowsbuild.sh @@ -10,7 +10,12 @@ OPENSSL_DIR=deps/openssl/openssl cd $OPENSSL_DIR -perl Configure mingw64 no-tests no-shared no-dso +OPENSSL_STATIC_FLAGS="no-pinshared no-shared" +OPENSSL_UNUSED_FEATURES="no-dso no-module no-ui-console" +OPENSSL_UNUSED_TARGETS="no-apps no-docs no-makedepend no-tests" +OPENSSL_OPTIONAL_FEATURES="enable-ec_nistp_64_gcc_128 enable-ktls enable-tfo" +OPENSSL_FEATURE_FLAGS="$OPENSSL_UNUSED_FEATURES $OPENSSL_OPTIONAL_FEATURES $OPENSSL_UNUSED_TARGETS" +perl Configure mingw64 $OPENSSL_STATIC_FLAGS $OPENSSL_FEATURE_FLAGS make clean make -j $NUM_PARALLEL_JOBS