mirror of
https://github.com/typesense/typesense.git
synced 2025-05-22 06:40:30 +08:00
34 lines
1.3 KiB
CMake
34 lines
1.3 KiB
CMake
# Download and build H2O
|
|
|
|
set(H2O_VERSION 2.0.4)
|
|
set(H2O_NAME h2o-${H2O_VERSION})
|
|
set(H2O_TAR_PATH ${CMAKE_SOURCE_DIR}/external/${H2O_NAME}.tar.gz)
|
|
|
|
if(NOT EXISTS ${CMAKE_SOURCE_DIR}/external/${H2O_NAME})
|
|
message(STATUS "Downloading and extracting ${H2O_NAME}...")
|
|
file(DOWNLOAD https://github.com/h2o/h2o/archive/v${H2O_VERSION}.tar.gz ${H2O_TAR_PATH})
|
|
execute_process(COMMAND ${CMAKE_COMMAND} -E tar xvzf ${H2O_TAR_PATH} WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}/external/)
|
|
endif()
|
|
|
|
if(NOT EXISTS ${CMAKE_SOURCE_DIR}/external/${H2O_NAME}/build)
|
|
message("Configuring ${H2O_NAME}...")
|
|
file(MAKE_DIRECTORY ${CMAKE_SOURCE_DIR}/external/${H2O_NAME}/build)
|
|
execute_process(COMMAND ${CMAKE_COMMAND}
|
|
"-DWITH_BUNDLED_SSL=on"
|
|
"-H${CMAKE_SOURCE_DIR}/external/${H2O_NAME}"
|
|
"-B${CMAKE_SOURCE_DIR}/external/${H2O_NAME}/build"
|
|
RESULT_VARIABLE
|
|
H2O_CONFIGURE)
|
|
if(NOT H2O_CONFIGURE EQUAL 0)
|
|
message(FATAL_ERROR "${H2O_NAME} configure failed!")
|
|
endif()
|
|
|
|
message("Building ${H2O_NAME} locally...")
|
|
execute_process(COMMAND ${CMAKE_COMMAND} --build
|
|
"${CMAKE_SOURCE_DIR}/external/${H2O_NAME}/build"
|
|
RESULT_VARIABLE
|
|
H2O_BUILD)
|
|
if(NOT H2O_BUILD EQUAL 0)
|
|
message(FATAL_ERROR "${H2O_NAME} build failed!")
|
|
endif()
|
|
endif() |