Add macOS support #34
All checks were successful
BlockStorage/repertory/pipeline/head This commit looks good
All checks were successful
BlockStorage/repertory/pipeline/head This commit looks good
This commit is contained in:
@@ -28,6 +28,7 @@ cppvsdbg
|
||||
create_notraverse
|
||||
crypto_aead_xchacha20poly1305_ietf_npubbytes
|
||||
cstdint
|
||||
curl_zstd
|
||||
curle_couldnt_resolve_host
|
||||
curlopt_aws_sigv4
|
||||
cxxflags
|
||||
@@ -54,6 +55,7 @@ dcurl_staticlib
|
||||
dcurl_use_libpsl
|
||||
dcurl_use_libssh2
|
||||
dcurl_zlib
|
||||
dcurl_zstd
|
||||
ddebug
|
||||
decmult_gen_prec_bits
|
||||
decmult_window_size
|
||||
@@ -86,6 +88,7 @@ dspdlog_fmt_external
|
||||
dthreads_prefer_pthread_flag
|
||||
dunw_local_only
|
||||
duse_libidn2
|
||||
duse_nghttp2
|
||||
duuid_build_tests
|
||||
dwith_benchmark
|
||||
dwith_gflags
|
||||
|
@@ -7,6 +7,8 @@ set(SFML_STATIC_LIBRARIES ${PROJECT_STATIC_LINK})
|
||||
set(ZLIB_USE_STATIC_LIBS ${PROJECT_STATIC_LINK})
|
||||
set(wxWidgets_USE_STATIC ${PROJECT_STATIC_LINK})
|
||||
|
||||
include(cmake/libraries/zlib.cmake)
|
||||
|
||||
include(cmake/libraries/openssl.cmake)
|
||||
|
||||
include(cmake/libraries/boost.cmake)
|
||||
|
@@ -142,6 +142,9 @@ if(PROJECT_ENABLE_BOOST)
|
||||
if (NOT CMAKE_HOST_WIN32)
|
||||
add_dependencies(boost_project openssl_project)
|
||||
endif()
|
||||
if (PROJECT_IS_DARWIN)
|
||||
add_dependencies(boost_project zlib_project)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
@@ -15,6 +15,7 @@ if(PROJECT_ENABLE_CPP_HTTPLIB)
|
||||
CMAKE_ARGS ${PROJECT_EXTERNAL_CMAKE_FLAGS}
|
||||
-DBUILD_SHARED_LIBS=${PROJECT_BUILD_SHARED_LIBS}
|
||||
-DBUILD_STATIC_LIBS=ON
|
||||
-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
|
||||
-DHTTPLIB_REQUIRE_BROTLI=OFF
|
||||
-DHTTPLIB_REQUIRE_OPENSSL=ON
|
||||
-DHTTPLIB_REQUIRE_ZLIB=ON
|
||||
@@ -31,5 +32,8 @@ if(PROJECT_ENABLE_CPP_HTTPLIB)
|
||||
if (NOT CMAKE_HOST_WIN32)
|
||||
add_dependencies(cpphttplib_project openssl_project)
|
||||
endif()
|
||||
if (PROJECT_IS_DARWIN)
|
||||
add_dependencies(cpphttplib_project zlib_project)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
@@ -27,8 +27,8 @@ if(PROJECT_ENABLE_CURL)
|
||||
-DBUILD_SHARED_LIBS=${PROJECT_BUILD_SHARED_LIBS}
|
||||
-DBUILD_STATIC_CURL=ON
|
||||
-DBUILD_STATIC_LIBS=ON
|
||||
-DBUILD_STATIC_LIBS=ON
|
||||
-DBUILD_TESTING=OFF
|
||||
-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
|
||||
-DCURL_BROTLI=OFF
|
||||
-DCURL_CA_BUNDLE=./cacert.pem
|
||||
-DCURL_CA_FALLBACK=ON
|
||||
@@ -37,11 +37,13 @@ if(PROJECT_ENABLE_CURL)
|
||||
-DCURL_USE_LIBSSH2=OFF
|
||||
-DCURL_USE_OPENSSL=${PROJECT_ENABLE_OPENSSL}
|
||||
-DCURL_ZLIB=ON
|
||||
-DCURL_ZSTD=OFF
|
||||
-DENABLE_CURL_MANUAL=OFF
|
||||
-DENABLE_THREADED_RESOLVER=ON
|
||||
-DOPENSSL_ROOT_DIR=${OPENSSL_ROOT_DIR}
|
||||
-DOPENSSL_USE_STATIC_LIBS=${OPENSSL_USE_STATIC_LIBS}
|
||||
-DUSE_LIBIDN2=OFF
|
||||
-DUSE_NGHTTP2=OFF
|
||||
-DZLIB_USE_STATIC_LIBS=${ZLIB_USE_STATIC_LIBS}
|
||||
)
|
||||
|
||||
@@ -50,5 +52,9 @@ if(PROJECT_ENABLE_CURL)
|
||||
if (NOT CMAKE_HOST_WIN32)
|
||||
add_dependencies(curl_project openssl_project)
|
||||
endif()
|
||||
|
||||
if (PROJECT_IS_DARWIN)
|
||||
add_dependencies(curl_project zlib_project)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
@@ -18,11 +18,16 @@ if(PROJECT_ENABLE_JSON)
|
||||
CMAKE_ARGS ${PROJECT_EXTERNAL_CMAKE_FLAGS}
|
||||
-DBUILD_SHARED_LIBS=${PROJECT_BUILD_SHARED_LIBS}
|
||||
-DBUILD_STATIC_LIBS=ON
|
||||
-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
|
||||
-DJSON_BuildTests=OFF
|
||||
-DJSON_Install=ON
|
||||
-DJSON_MultipleHeaders=OFF
|
||||
)
|
||||
|
||||
list(APPEND PROJECT_DEPENDENCIES json_project)
|
||||
|
||||
if (PROJECT_IS_DARWIN)
|
||||
add_dependencies(json_project zlib_project)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
@@ -44,5 +44,9 @@ if(PROJECT_ENABLE_LIBSODIUM)
|
||||
)
|
||||
|
||||
list(APPEND PROJECT_DEPENDENCIES libsodium_project)
|
||||
|
||||
if (PROJECT_IS_DARWIN)
|
||||
add_dependencies(libsodium_project zlib_project)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
@@ -55,5 +55,8 @@ if(PROJECT_ENABLE_OPENSSL)
|
||||
)
|
||||
|
||||
list(APPEND PROJECT_DEPENDENCIES openssl_project)
|
||||
if (PROJECT_IS_DARWIN)
|
||||
add_dependencies(openssl_project zlib_project)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
@@ -20,8 +20,13 @@ if(PROJECT_ENABLE_PUGIXML)
|
||||
CMAKE_ARGS ${PROJECT_EXTERNAL_CMAKE_FLAGS}
|
||||
-DBUILD_SHARED_LIBS=${PROJECT_BUILD_SHARED_LIBS}
|
||||
-DBUILD_STATIC_LIBS=ON
|
||||
-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
|
||||
)
|
||||
|
||||
list(APPEND PROJECT_DEPENDENCIES pugixml_project)
|
||||
|
||||
if (PROJECT_IS_DARWIN)
|
||||
add_dependencies(pugixml_project zlib_project)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
@@ -14,6 +14,7 @@ if(PROJECT_ENABLE_ROCKSDB)
|
||||
CMAKE_ARGS ${PROJECT_EXTERNAL_CMAKE_FLAGS}
|
||||
-DBUILD_SHARED_LIBS=OFF
|
||||
-DBUILD_STATIC_LIBS=ON
|
||||
-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
|
||||
-DFAIL_ON_WARNINGS=OFF
|
||||
-DPORTABLE=1
|
||||
-DROCKSDB_BUILD_SHARED=OFF
|
||||
@@ -32,5 +33,9 @@ if(PROJECT_ENABLE_ROCKSDB)
|
||||
)
|
||||
|
||||
list(APPEND PROJECT_DEPENDENCIES rocksdb_project)
|
||||
|
||||
if (PROJECT_IS_DARWIN)
|
||||
add_dependencies(rocksdb_project zlib_project)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
@@ -15,11 +15,16 @@ if(PROJECT_ENABLE_SPDLOG)
|
||||
LIST_SEPARATOR |
|
||||
CMAKE_ARGS ${PROJECT_EXTERNAL_CMAKE_FLAGS}
|
||||
-DBUILD_SHARED_LIBS=${PROJECT_BUILD_SHARED_LIBS}
|
||||
-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
|
||||
-DSPDLOG_BUILD_EXAMPLE=OFF
|
||||
-DSPDLOG_FMT_EXTERNAL=OFF
|
||||
-DSPDLOG_FMT_EXTERNAL_HO=OFF
|
||||
)
|
||||
|
||||
list(APPEND PROJECT_DEPENDENCIES spdlog_project)
|
||||
|
||||
if (PROJECT_IS_DARWIN)
|
||||
add_dependencies(spdlog_project zlib_project)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
@@ -25,5 +25,9 @@ if(PROJECT_ENABLE_SQLITE)
|
||||
)
|
||||
|
||||
list(APPEND PROJECT_DEPENDENCIES sqlite_project)
|
||||
|
||||
if (PROJECT_IS_DARWIN)
|
||||
add_dependencies(sqlite_project zlib_project)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
@@ -16,11 +16,16 @@ if(PROJECT_ENABLE_STDUUID)
|
||||
CMAKE_ARGS ${PROJECT_EXTERNAL_CMAKE_FLAGS}
|
||||
-DBUILD_SHARED_LIBS=${PROJECT_BUILD_SHARED_LIBS}
|
||||
-DBUILD_STATIC_LIBS=ON
|
||||
-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
|
||||
-DUUID_BUILD_TESTS=OFF
|
||||
-DUUID_ENABLE_INSTALL=ON
|
||||
-DUUID_USING_CXX20_SPAN=ON
|
||||
)
|
||||
|
||||
list(APPEND PROJECT_DEPENDENCIES stduuid_project)
|
||||
|
||||
if (PROJECT_IS_DARWIN)
|
||||
add_dependencies(stduuid_project zlib_project)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
@@ -10,8 +10,13 @@ if (PROJECT_ENABLE_TESTING)
|
||||
CMAKE_ARGS ${PROJECT_EXTERNAL_CMAKE_FLAGS}
|
||||
-DBUILD_SHARED_LIBS=${PROJECT_BUILD_SHARED_LIBS}
|
||||
-DBUILD_STATIC_LIBS=ON
|
||||
-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
|
||||
)
|
||||
|
||||
list(APPEND PROJECT_DEPENDENCIES gtest_project)
|
||||
|
||||
if (PROJECT_IS_DARWIN)
|
||||
add_dependencies(gtest_project zlib_project)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
16
cmake/libraries/zlib.cmake
Normal file
16
cmake/libraries/zlib.cmake
Normal file
@@ -0,0 +1,16 @@
|
||||
if(PROJECT_IS_DARWIN)
|
||||
if(NOT PROJECT_BUILD)
|
||||
ExternalProject_Add(zlib_project
|
||||
PREFIX external
|
||||
URL ${PROJECT_3RD_PARTY_DIR}/mingw64/zlib-${ZLIB_VERSION}.tar.gz
|
||||
URL_HASH SHA256=${ZLIB_HASH}
|
||||
LIST_SEPARATOR |
|
||||
CMAKE_ARGS ${PROJECT_EXTERNAL_CMAKE_FLAGS}
|
||||
-DBUILD_SHARED_LIBS=${PROJECT_BUILD_SHARED_LIBS}
|
||||
-DBUILD_STATIC_LIBS=ON
|
||||
-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
|
||||
)
|
||||
|
||||
list(APPEND PROJECT_DEPENDENCIES zlib_project)
|
||||
endif()
|
||||
endif()
|
@@ -9,3 +9,11 @@ endif()
|
||||
if(PROJECT_REQUIRE_ALPINE AND NOT PROJECT_IS_ALPINE AND PROJECT_IS_MINGW AND PROJECT_IS_MINGW_UNIX)
|
||||
message(FATAL_ERROR "Project requires Alpine Linux to build")
|
||||
endif()
|
||||
|
||||
if (PROJECT_IS_DARWIN)
|
||||
if (PROJECT_IS_ARM64)
|
||||
set(CMAKE_OSX_ARCHITECTURES "arm64")
|
||||
else()
|
||||
set(CMAKE_OSX_ARCHITECTURES "x86_64")
|
||||
endif()
|
||||
endif()
|
||||
|
@@ -38,10 +38,6 @@ if(PROJECT_IS_MINGW)
|
||||
/mingw64/lib
|
||||
/mingw64/lib64
|
||||
)
|
||||
elseif(PROJECT_IS_DARWIN)
|
||||
list(PREPEND CMAKE_PREFIX_PATH
|
||||
/opt/homebrew/opt/zlib
|
||||
)
|
||||
endif()
|
||||
|
||||
include_directories(BEFORE SYSTEM
|
||||
|
5
support/3rd_party/libsodium_configure.sh
vendored
5
support/3rd_party/libsodium_configure.sh
vendored
@@ -2,6 +2,11 @@
|
||||
|
||||
if [ "$1" == "mingw64" ]; then
|
||||
HOST_CFG=--host=x86_64-w64-mingw32
|
||||
elif [ "$(uname -s)" == "Darwin" ] && [ "$(uname -m)" == "arm64" ] &&
|
||||
[ "${PROJECT_IS_ARM64}" == "0" ]; then
|
||||
HOST_CFG="--host=x86_64-apple-darwin"
|
||||
export CC="clang -arch x86_64"
|
||||
export CXX="clang++ -arch x86_64"
|
||||
fi
|
||||
|
||||
CFLAGS="-O3 -fomit-frame-pointer -march=$2 -mtune=generic" ./configure \
|
||||
|
Reference in New Issue
Block a user