mirror of https://github.com/oxen-io/lokinet
track libcurl and libuv with cmake, add libuv submodule
parent
d0a3d6beae
commit
64157d5d44
@ -0,0 +1,46 @@
|
||||
set(LIBCURL_PREFIX ${CMAKE_BINARY_DIR}/libcurl)
|
||||
set(LIBCURL_URL https://github.com/curl/curl/releases/download/curl-7_67_0/curl-7.67.0.tar.xz)
|
||||
set(LIBCURL_HASH SHA256=f5d2e7320379338c3952dcc7566a140abb49edb575f9f99272455785c40e536c)
|
||||
|
||||
if(CURL_TARBALL_URL)
|
||||
# make a build time override of the tarball url so we can fetch it if the original link goes away
|
||||
set(LIBCURL_URL ${CURL_TARBALL_URL})
|
||||
endif()
|
||||
|
||||
|
||||
file(MAKE_DIRECTORY ${LIBCURL_PREFIX}/include)
|
||||
|
||||
include(ExternalProject)
|
||||
include(ProcessorCount)
|
||||
|
||||
set(CURL_CONFIGURE_FLAGS_COMMON --prefix=${LIBCURL_PREFIX} --without-ssl --without-nss --without-ca-bundle --without-libidn2 --without-zlib --without-librtmp --without-ca-fallback --without-ca-path --enable-static --disable-shared CC=${CMAKE_C_COMPILER})
|
||||
|
||||
if (CMAKE_C_COMPILER_ARG1)
|
||||
set(CURL_CONFIGURE_FLAGS_COMMON ${CURL_CONFIGURE_FLAGS_COMMON} CPPFLAGS=${CMAKE_C_COMPILER_ARG1})
|
||||
endif()
|
||||
|
||||
set(CURL_CONFIGURE ./configure ${CURL_CONFIGURE_FLAGS_COMMON})
|
||||
|
||||
|
||||
if (CROSS_TARGET)
|
||||
set(CURL_CONFIGURE ${CURL_CONFIGURE} --target=${CROSS_TARGET} --host=${CROSS_TARGET})
|
||||
endif()
|
||||
|
||||
|
||||
ExternalProject_Add(libcurl_external
|
||||
BUILD_IN_SOURCE ON
|
||||
PREFIX ${LIBCURL_PREFIX}
|
||||
URL ${LIBCURL_URL}
|
||||
URL_HASH ${LIBCURL_HASH}
|
||||
CONFIGURE_COMMAND ${CURL_CONFIGURE}
|
||||
BUILD_COMMAND make -j${PROCESSOR_COUNT}
|
||||
INSTALL_COMMAND ${MAKE}
|
||||
BUILD_BYPRODUCTS ${LIBCURL_PREFIX}/lib/libcurl.a ${LIBCURL_PREFIX}/include
|
||||
)
|
||||
|
||||
add_library(curl_vendor STATIC IMPORTED GLOBAL)
|
||||
add_dependencies(curl_vendor curl_external)
|
||||
set_target_properties(curl_vendor PROPERTIES
|
||||
IMPORTED_LOCATION ${LIBCURL_PREFIX}/lib/libcurl.a
|
||||
INTERFACE_INCLUDE_DIRECTORIES ${LIBCURL_PREFIX}/include
|
||||
)
|
@ -0,0 +1,12 @@
|
||||
set(CMAKE_SYSTEM_NAME Linux)
|
||||
set(TOOLCHAIN_PREFIX aarch64-linux-gnu)
|
||||
#set(TOOLCHAIN_SUFFIX)
|
||||
|
||||
set(CMAKE_FIND_ROOT_PATH /usr/${TOOLCHAIN_PREFIX})
|
||||
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||
|
||||
set(CMAKE_C_COMPILER ${TOOLCHAIN_PREFIX}-gcc${TOOLCHAIN_SUFFIX})
|
||||
set(CMAKE_CXX_COMPILER ${TOOLCHAIN_PREFIX}-g++${TOOLCHAIN_SUFFIX})
|
@ -0,0 +1 @@
|
||||
Subproject commit f52786b4badf82e1bfad06b52ade0397b61cd14e
|
Loading…
Reference in New Issue