externalproject_add(<name> [<option>...])
externalproject_add(<name> [<option>...])
ExternalProject_Add(
mir2x_data
GIT_REPOSITORY "https://github.com/etorth/mir2x_data.git"
GIT_TAG "main"
SOURCE_DIR "${MIR2X_3RD_PARTY_DIR}/mir2x_data"
UPDATE_COMMAND ""
PATCH_COMMAND ""
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND ""
TEST_COMMAND ""
)
ExternalProject_Add(
rp_${projectname}
INSTALL_DIR ${CMAKE_INSTALL_PREFIX}
BINARY_DIR ${RP_PACKAGE_BUILD_DIR}
DOWNLOAD_EXTRACT_TIMESTAMP ON
LIST_SEPARATOR |
CMAKE_ARGS
-DCMAKE_INSTALL_PREFIX:STRING=${CMAKE_INSTALL_PREFIX}
-DCMAKE_PREFIX_PATH:STRING=${CMAKE_INSTALL_PREFIX}
-DCMAKE_C_COMPILER:STRING=${CMAKE_C_COMPILER}
-DCMAKE_CXX_COMPILER:STRING=${CMAKE_CXX_COMPILER}
-DBUILD_SHARED_LIBS:BOOL=${BUILD_SHARED_LIBS}
# -DCMAKE_CONFIGURATION_TYPES:STRING=${}
-DCMAKE_MODULE_PATH:STRING=${_module_paths}
-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON
"${_configs_line}"
"${_postfix_line}"
${P_ARGS_CMAKE_ARGS}
${P_ARGS_UNPARSED_ARGUMENTS}
)
ExternalProject_Add(\n"
" Hunter\n"
" URL\n"
" \"${HUNTER_GATE_URL}\"\n"
" URL_HASH\n"
" SHA1=${HUNTER_GATE_SHA1}\n"
" DOWNLOAD_DIR\n"
" \"${dir}\"\n"
" TLS_VERIFY\n"
" ${HUNTER_TLS_VERIFY}\n"
" SOURCE_DIR\n"
" \"${dir}/Unpacked\"\n"
" CONFIGURE_COMMAND\n"
" \"\"\n"
" BUILD_COMMAND\n"
" \"\"\n"
" INSTALL_COMMAND\n"
" \"\"\n"
")
ExternalProject_Add (PackageTool
SOURCE_DIR ${CMAKE_SOURCE_DIR}/Source/Tools/PackageTool
CMAKE_ARGS -D URHO3D_DEPLOYMENT_TARGET=generic -D DEST_RUNTIME_DIR=${CMAKE_BINARY_DIR}/bin/tool -D BAKED_CMAKE_SOURCE_DIR=${CMAKE_SOURCE_DIR} -D BAKED_CMAKE_BINARY_DIR=${CMAKE_BINARY_DIR} -D CMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}
${ALTERNATE_COMMAND})
ExternalProject_Add(${ZLIB_TARGET}
URL https://www.zlib.net/zlib-1.3.1.tar.gz
URL_HASH SHA256=9a93b2b7dfdac77ceba5a558a580e74667dd6fede4585b91eefb60f03b72df23
DOWNLOAD_DIR ${BUILD_DIR}/download/zlib
PREFIX ${BUILD_DIR}
BUILD_IN_SOURCE 0
BUILD_ALWAYS 0
UPDATE_COMMAND ""
SOURCE_DIR ${CMAKE_CURRENT_BINARY_DIR}/zlib
BINARY_DIR ${BUILD_DIR}/zlib_build
INSTALL_DIR ${CMAKE_INSTALL_PREFIX}
CONFIGURE_COMMAND
${CMAKE_COMMAND}
${CMAKE_CORE_BUILD_FLAGS}
-DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
<SOURCE_DIR>
BUILD_COMMAND $(MAKE) -j${AV_BUILD_DEPENDENCIES_PARALLEL}
)
ExternalProject_Add(
dep_${projectname}
INSTALL_DIR ${${PROJECT_NAME}_DEP_INSTALL_PREFIX}
DOWNLOAD_DIR ${${PROJECT_NAME}_DEP_DOWNLOAD_DIR}/${projectname}
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/builds/${projectname}
CMAKE_ARGS
-DCMAKE_INSTALL_PREFIX:STRING=${${PROJECT_NAME}_DEP_INSTALL_PREFIX}
-DCMAKE_MODULE_PATH:STRING=${CMAKE_MODULE_PATH}
-DCMAKE_PREFIX_PATH:STRING=${${PROJECT_NAME}_DEP_INSTALL_PREFIX}
-DCMAKE_DEBUG_POSTFIX:STRING=${CMAKE_DEBUG_POSTFIX}
-DCMAKE_C_COMPILER:STRING=${CMAKE_C_COMPILER}
-DCMAKE_CXX_COMPILER:STRING=${CMAKE_CXX_COMPILER}
-DCMAKE_CXX_FLAGS_${_build_type_upper}:STRING=${CMAKE_CXX_FLAGS_${_build_type_upper}}
-DCMAKE_C_FLAGS_${_build_type_upper}:STRING=${CMAKE_C_FLAGS_${_build_type_upper}}
-DCMAKE_TOOLCHAIN_FILE:STRING=${CMAKE_TOOLCHAIN_FILE}
-DBUILD_SHARED_LIBS:BOOL=${BUILD_SHARED_LIBS}
"${_configs_line}"
${DEP_CMAKE_OPTS}
${P_ARGS_CMAKE_ARGS}
${P_ARGS_UNPARSED_ARGUMENTS}
BUILD_COMMAND ${CMAKE_COMMAND} --build . --config ${CMAKE_BUILD_TYPE} -- ${_build_j} ${_verbose_switch}
INSTALL_COMMAND ${CMAKE_COMMAND} --build . --target install --config ${CMAKE_BUILD_TYPE}
)
ExternalProject_Add(${NAME}
PREFIX ${NAME}
SOURCE_DIR "${examples_dir}"
BINARY_DIR ${NAME}
STAMP_DIR ${NAME}/logs
INSTALL_COMMAND "" #Skip
LOG_CONFIGURE 1
CMAKE_CACHE_ARGS "-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}"
"-Dprotobuf_VERBOSE:BOOL=${protobuf_VERBOSE}"
${ARGN}
)
ExternalProject_Add(
dep_${projectname}
EXCLUDE_FROM_ALL ON
INSTALL_DIR ${DESTDIR}/usr/local
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/${projectname}
${_gen}
CMAKE_ARGS
-DCMAKE_INSTALL_PREFIX:STRING=${DESTDIR}/usr/local
-DCMAKE_MODULE_PATH:STRING=${PROJECT_SOURCE_DIR}/../cmake/modules
-DCMAKE_PREFIX_PATH:STRING=${DESTDIR}/usr/local
-DCMAKE_DEBUG_POSTFIX:STRING=d
-DCMAKE_C_COMPILER:STRING=${CMAKE_C_COMPILER}
-DCMAKE_CXX_COMPILER:STRING=${CMAKE_CXX_COMPILER}
-DCMAKE_TOOLCHAIN_FILE:STRING=${CMAKE_TOOLCHAIN_FILE}
-DBUILD_SHARED_LIBS:BOOL=OFF
${_cmake_osx_arch}
"${_configs_line}"
${DEP_CMAKE_OPTS}
${P_ARGS_CMAKE_ARGS}
${P_ARGS_UNPARSED_ARGUMENTS}
BUILD_COMMAND ${CMAKE_COMMAND} --build . --config Release -- ${_build_j}
INSTALL_COMMAND ${CMAKE_COMMAND} --build . --target install --config Release
)
ExternalProject_Add(
dep_${projectname}
EXCLUDE_FROM_ALL ON
INSTALL_DIR ${DESTDIR}
DOWNLOAD_DIR ${DEP_DOWNLOAD_DIR}/${projectname}
${_gen}
CMAKE_ARGS
-DCMAKE_INSTALL_PREFIX:STRING=${DESTDIR}
-DCMAKE_MODULE_PATH:STRING=${PROJECT_SOURCE_DIR}/../cmake/modules
-DCMAKE_PREFIX_PATH:STRING=${DESTDIR}
-DCMAKE_DEBUG_POSTFIX:STRING=d
-DCMAKE_C_COMPILER:STRING=${CMAKE_C_COMPILER}
-DCMAKE_CXX_COMPILER:STRING=${CMAKE_CXX_COMPILER}
-DCMAKE_TOOLCHAIN_FILE:STRING=${CMAKE_TOOLCHAIN_FILE}
-DBUILD_SHARED_LIBS:BOOL=OFF
${_cmake_osx_arch}
"${_configs_line}"
${DEP_CMAKE_OPTS}
${P_ARGS_CMAKE_ARGS}
${P_ARGS_UNPARSED_ARGUMENTS}
BUILD_COMMAND ${CMAKE_COMMAND} --build . --config Release -- ${_build_j}
INSTALL_COMMAND ${CMAKE_COMMAND} --build . --target install --config Release
)
ExternalProject_Add(gtest
URL https://github.com/google/googletest/archive/release-1.8.0.zip
PREFIX ${CMAKE_CURRENT_BINARY_DIR}/gtest
INSTALL_COMMAND ""
)
externalproject_add(ext_mapmap
PREFIX ext_mapmap
GIT_REPOSITORY https://github.com/dthuerck/mapmap_cpu.git
GIT_TAG fa526e0
UPDATE_COMMAND ""
SOURCE_DIR ${CMAKE_SOURCE_DIR}/elibs/mapmap
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND ""
)
ExternalProject_Add(
${LIBNAME}_download
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}/${LIBNAME}
GIT_REPOSITORY ${REPOSITORY}
# For shallow git clone (without downloading whole history) GIT_SHALLOW 1 For point at
# certain tag
GIT_TAG ${GIT_TAG}
# disables auto update on every build
UPDATE_DISCONNECTED 1
# disable following
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_DIR ""
INSTALL_COMMAND ""
)
ExternalProject_Add(
googletest
SOURCE_DIR "@GOOGLETEST_DOWNLOAD_ROOT@/googletest-src"
BINARY_DIR "@GOOGLETEST_DOWNLOAD_ROOT@/googletest-build"
GIT_REPOSITORY
https://github.com/google/googletest.git
GIT_TAG
release-1.8.0
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND ""
TEST_COMMAND ""
)
ExternalProject_Add(\n"
" Hunter\n"
" URL\n"
" \"${HUNTER_GATE_URL}\"\n"
" URL_HASH\n"
" SHA1=${HUNTER_GATE_SHA1}\n"
" DOWNLOAD_DIR\n"
" \"${dir}\"\n"
" TLS_VERIFY\n"
" ${HUNTER_TLS_VERIFY}\n"
" SOURCE_DIR\n"
" \"${dir}/Unpacked\"\n"
" CONFIGURE_COMMAND\n"
" \"\"\n"
" BUILD_COMMAND\n"
" \"\"\n"
" INSTALL_COMMAND\n"
" \"\"\n"
")
ExternalProject_Add(gflags
PREFIX ${gflags_PREFIX}
GIT_REPOSITORY "https://github.com/gflags/gflags.git"
GIT_TAG "v2.1.2"
UPDATE_COMMAND ""
INSTALL_DIR ${gflags_INSTALL}
CMAKE_ARGS -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_INSTALL_PREFIX=${gflags_INSTALL}
-DBUILD_SHARED_LIBS=OFF
-DBUILD_STATIC_LIBS=ON
-DBUILD_PACKAGING=OFF
-DBUILD_TESTING=OFF
-DBUILD_NC_TESTS=OFF
-BUILD_CONFIG_TESTS=OFF
-DINSTALL_HEADERS=ON
-DCMAKE_C_FLAGS=${GFLAGS_C_FLAGS}
-DCMAKE_CXX_FLAGS=${GFLAGS_CXX_FLAGS}
LOG_DOWNLOAD 1
LOG_INSTALL 1
)
ExternalProject_Add(\n"
" Hunter\n"
" URL\n"
" \"${HUNTER_GATE_URL}\"\n"
" URL_HASH\n"
" SHA1=${HUNTER_GATE_SHA1}\n"
" DOWNLOAD_DIR\n"
" \"${dir}\"\n"
" TLS_VERIFY\n"
" ${HUNTER_TLS_VERIFY}\n"
" SOURCE_DIR\n"
" \"${dir}/Unpacked\"\n"
" CONFIGURE_COMMAND\n"
" \"\"\n"
" BUILD_COMMAND\n"
" \"\"\n"
" INSTALL_COMMAND\n"
" \"\"\n"
")
ExternalProject_add(
${target}
PREFIX ${CMAKE_BINARY_DIR}/${target}
GIT_REPOSITORY ${repository}
GIT_TAG ${tag}
CONFIGURE_COMMAND echo \"\"
BUILD_COMMAND echo \"\"
LOG_DOWNLOAD ON
LOG_INSTALL ON
CMAKE_ARGS ${ARGN}
INSTALL_COMMAND \"\"
)
ExternalProject_Add(
extern_glog
GIT_REPOSITORY ${GLOG_REPOSITORY}
GIT_TAG ${GLOG_TAG}
GIT_SHALLOW TRUE
PREFIX ${GLOG_PREFIX_DIR}
SOURCE_DIR ${GLOG_SOURCE_DIR}
INSTALL_DIR ${GLOG_INSTALL_DIR}
BUILD_IN_SOURCE 1
UPDATE_COMMAND ""
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${GLOG_INSTALL_DIR}
-DCMAKE_INSTALL_LIBDIR=${GLOG_INSTALL_DIR}/lib
-DCMAKE_BUILD_TYPE=${THIRD_PARTY_BUILD_TYPE}
-DCMAKE_POSITION_INDEPENDENT_CODE=ON
-DWITH_GFLAGS=OFF
-DWITH_GTEST=OFF
-DBUILD_TESTING=OFF)
ExternalProject_Add(
cmocka_cloned
GIT_REPOSITORY https://gitlab.com/cmocka/cmocka.git
GIT_TAG cmocka-1.1.5
SOURCE_DIR "${CMAKE_BINARY_DIR}/cmocka-src"
BINARY_DIR "${CMAKE_BINARY_DIR}/cmocka-build"
CMAKE_ARGS "${CMOCKA_ARGS}"
INSTALL_COMMAND ""
STEP_TARGETS build
EXCLUDE_FROM_ALL TRUE
)
ExternalProject_Add(PATCHELF
PREFIX "${PATCHELF_PREFIX_DIR}"
URL "http://nixos.org/releases/patchelf/patchelf-0.9/patchelf-0.9.tar.bz2"
URL_MD5 d02687629c7e1698a486a93a0d607947
DOWNLOAD_DIR "${DOWNLOAD_DIR}"
SOURCE_DIR "${PATCHELF_SOURCE_DIR}"
BINARY_DIR "${PATCHELF_SOURCE_DIR}"
INSTALL_DIR "${PATCHELF_INSTALL_DIR}"
STAMP_DIR "${PATCHELF_STAMP_DIR}"
TMP_DIR "${PATCHELF_TMP_DIR}"
CONFIGURE_COMMAND
${PATCHELF_ENV_COMMAND}
${PATCHELF_SOURCE_DIR}/configure
INSTALL_COMMAND ""
LOG_DOWNLOAD 1
LOG_CONFIGURE 1
LOG_BUILD 1
LOG_INSTALL 1
)
ExternalProject_Add(gflags
PREFIX ${gflags_PREFIX}
GIT_REPOSITORY "https://github.com/gflags/gflags.git"
GIT_TAG "v2.1.2"
UPDATE_COMMAND ""
INSTALL_DIR ${gflags_INSTALL}
CMAKE_ARGS -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_INSTALL_PREFIX=${gflags_INSTALL}
-DBUILD_SHARED_LIBS=OFF
-DBUILD_STATIC_LIBS=ON
-DBUILD_PACKAGING=OFF
-DBUILD_TESTING=OFF
-DBUILD_NC_TESTS=OFF
-BUILD_CONFIG_TESTS=OFF
-DINSTALL_HEADERS=ON
-DCMAKE_C_FLAGS=${GFLAGS_C_FLAGS}
-DCMAKE_CXX_FLAGS=${GFLAGS_CXX_FLAGS}
LOG_DOWNLOAD 1
LOG_INSTALL 1
)
ExternalProject_Add(${proj}
DEPENDS ${${LOCAL_PROJECT_NAME}_DEPENDENCIES}
DOWNLOAD_COMMAND ""
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}
BINARY_DIR ${LOCAL_PROJECT_NAME}-build
CMAKE_GENERATOR ${gen}
CMAKE_ARGS
--no-warn-unused-cli # HACK Only expected variables should be passed down.
${CMAKE_OSX_EXTERNAL_PROJECT_ARGS}
${COMMON_EXTERNAL_PROJECT_ARGS}
-D${LOCAL_PROJECT_NAME}_SUPERBUILD:BOOL=OFF
-DCMAKE_GENERATOR_PLATFORM:STRING=${CMAKE_GENERATOR_PLATFORM}
INSTALL_COMMAND ""
)
ExternalProject_Add(KAGUYA_BUILD_SOURCE
BUILD_IN_SOURCE TRUE
BUILD_ALWAYS FALSE
# # Use Git to get what we need
GIT_SHALLOW TRUE
GIT_SUBMODULES ""
GIT_REPOSITORY https://github.com/satoren/kaguya.git
GIT_TAG main
PREFIX ${kaguya_build_toplevel}
SOURCE_DIR ${kaguya_build_toplevel}
DOWNLOAD_DIR ${kaguya_build_toplevel}
TMP_DIR "${kaguya_build_toplevel}-tmp"
STAMP_DIR "${kaguya_build_toplevel}-stamp"
INSTALL_DIR "${kaguya_build_toplevel}/local"
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND ""
TEST_COMMAND ""
BUILD_BYPRODUCTS "${kaguya_sources}")
ExternalProject_Add(i18n
GIT_REPOSITORY https://github.com/openchemistry/avogadro-i18n
SOURCE_DIR "${AvogadroApp_SOURCE_DIR}/../avogadro-i18n"
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND ""
)
ExternalProject_Add (
FREEGLUT-PRJ
URL https://github.com/FreeGLUTProject/freeglut/releases/download/v3.4.0/freeglut-3.4.0.tar.gz
URL_MD5 f1621464e6525d0368976870cab8f418
CMAKE_GENERATOR ${CMAKE_GENERATOR}
CMAKE_GENERATOR_TOOLSET ${CMAKE_GENERATOR_TOOLSET}
CMAKE_GENERATOR_PLATFORM ${CMAKE_GENERATOR_PLATFORM}
CMAKE_ARGS -DCMAKE_BUILD_TYPE=Release
-DFREEGLUT_BUILD_SHARED_LIBS=OFF
-DFREEGLUT_BUILD_STATIC_LIBS=ON
-DFREEGLUT_BUILD_DEMOS=OFF
PREFIX ${CMAKE_CURRENT_BINARY_DIR}/freeglut
# BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/freeglut-build
# BUILD_IN_SOURCE ON
# UPDATE_COMMAND ""
INSTALL_COMMAND ""
# CONFIGURE_COMMAND ""
# BUILD_COMMAND ""
)
ExternalProject_Add(Apr1StaticLib
URL ${aprlib_url}
UPDATE_COMMAND ""
PATCH_COMMAND ""
CONFIGURE_COMMAND
<SOURCE_DIR>/configure
${EXTERNAL_STATICLIB_CONFIGURE_DEFINITIONS_OPTIMIZED}
--prefix=${aprlib_install_prefix}
${aprlib_config_options}
CFLAGS=${aprlib_cflags}
BUILD_COMMAND
make -f Makefile all
INSTALL_COMMAND
make -f Makefile install
)
ExternalProject_Add (
benchmark
GIT_REPOSITORY "https://github.com/google/benchmark.git"
CMAKE_ARGS "-DBENCHMARK_ENABLE_TESTING=OFF;-DCMAKE_BUILD_TYPE=Release"
SOURCE_DIR "${PROJECT_BINARY_DIR}/benchmark"
BINARY_DIR "${PROJECT_BINARY_DIR}/benchmark"
INSTALL_COMMAND ""
TEST_COMMAND ""
)
ExternalProject_Add(
antlr4_runtime
PREFIX antlr4_runtime
URL ${ANTLR4_ZIP_REPOSITORY}
DOWNLOAD_DIR ${CMAKE_CURRENT_BINARY_DIR}
BUILD_COMMAND ""
BUILD_IN_SOURCE 1
SOURCE_DIR ${ANTLR4_ROOT}
SOURCE_SUBDIR runtime/Cpp
CMAKE_CACHE_ARGS
-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-DWITH_STATIC_CRT:BOOL=${ANTLR4_WITH_STATIC_CRT}
INSTALL_COMMAND ""
EXCLUDE_FROM_ALL 1)
externalproject_add(googletest
GIT_REPOSITORY https://github.com/google/googletest.git
GIT_TAG release-1.12.0
CMAKE_ARGS -DBUILD_GTEST=ON -DBUILD_SHARED_LIBS=ON
INSTALL_COMMAND ""
LOG_DOWNLOAD ON
LOG_CONFIGURE ON
LOG_BUILD ON
LOG_TEST ON)
ExternalProject_Add(Boost_Project
BUILD_IN_SOURCE 1
INSTALL_COMMAND ""
PREFIX "${BOOST_DIR}"
BUILD_IN_SOURCE 1
URL ${BOOST_URL}
URL_HASH ${BOOST_HASH}
UPDATE_COMMAND ""
PATCH_COMMAND ${CMAKE_COMMAND} -E copy "${CMAKE_CURRENT_LIST_DIR}/os.jam" "tools/build/src/util/os.jam"
CONFIGURE_COMMAND ${BOOST_BOOTSTRAP_COMMAND} --prefix=${BOOST_DIR}/lib
BUILD_COMMAND ${BOOST_B2_COMMAND} install -j8 -d0 --prefix=${BOOST_DIR} --with-filesystem --with-system --with-thread --with-serialization --with-date_time address-model=${BOOST_ADDRESS_MODEL} link=static runtime-link=shared ${BOOST_TOOLSET}
INSTALL_COMMAND ""
)
ExternalProject_Add (netgen_project
SOURCE_DIR ${PROJECT_SOURCE_DIR}/external_dependencies/netgen
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/netgen
CONFIGURE_COMMAND ""
LIST_SEPARATOR |
${SUBPROJECT_ARGS}
BUILD_COMMAND ${COMMON_BUILD_COMMAND}
CMAKE_ARGS
${NETGEN_CMAKE_ARGS}
${SUBPROJECT_CMAKE_ARGS}
INSTALL_COMMAND ""
)
ExternalProject_Add(
boost_${Component}
PREFIX ${CMAKE_BINARY_DIR}/${BoostFolderName}
SOURCE_DIR ${BoostSourceDir}
BINARY_DIR ${BoostSourceDir}
CONFIGURE_COMMAND ""
BUILD_COMMAND "${b2Args}" --with-${Component}
INSTALL_COMMAND ""
LOG_BUILD ON
)
ExternalProject_Add(cef
URL ${CASPARCG_DOWNLOAD_MIRROR}/cef/cef_binary_131.4.1%2Bg437feba%2Bchromium-131.0.6778.265_linux64_minimal.tar.bz2
URL_HASH SHA1=cbe52ac3c39ef93fdc5021588e12c466e801d9af
DOWNLOAD_DIR ${CASPARCG_DOWNLOAD_CACHE}
CMAKE_ARGS -DUSE_SANDBOX=Off
INSTALL_COMMAND ""
BUILD_BYPRODUCTS
"<SOURCE_DIR>/Release/libcef.so"
"<BINARY_DIR>/libcef_dll_wrapper/libcef_dll_wrapper.a"
)
ExternalProject_Add(libjpeg-src
GIT_REPOSITORY https://github.com/libjpeg-turbo/libjpeg-turbo.git
GIT_TAG 3.0.1
SOURCE_DIR "${libjpeg_dir}"
BINARY_DIR "${libjpeg_dir}"
CMAKE_ARGS "-DCMAKE_TOOLCHAIN_FILE:FILEPATH=${CMAKE_TOOLCHAIN_FILE}"
"-DCMAKE_INSTALL_PREFIX=${libjpeg_dir}/install" # unused, have to specify
"-DCMAKE_C_FLAGS=${universal_cflags}"
"-DENABLE_SHARED=FALSE"
"-DWITH_TURBOJPEG=FALSE"
"-Wno-dev"
INSTALL_COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/include/jpeg/;
COMMAND ${CMAKE_COMMAND} -E copy ${libjpeg_dir}/jpeglib.h
${libjpeg_dir}/jerror.h
${libjpeg_dir}/jconfig.h
${libjpeg_dir}/jmorecfg.h
${libjpeg_dir}/jpegint.h
${CMAKE_BINARY_DIR}/include/jpeg/
BUILD_BYPRODUCTS "${libjpeg_dir}/${libjpeg_binary}"
"${CMAKE_BINARY_DIR}/include/jpeg/jpeglib.h"
"${CMAKE_BINARY_DIR}/include/jpeg/jerror.h"
USES_TERMINAL_DOWNLOAD TRUE
USES_TERMINAL_UPDATE TRUE
USES_TERMINAL_CONFIGURE TRUE
USES_TERMINAL_BUILD TRUE
UPDATE_DISCONNECTED TRUE
)
ExternalProject_Add(ACE_Project
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}
INSTALL_DIR ${CMAKE_INSTALL_PREFIX}
DOWNLOAD_COMMAND ""
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND ""
)
ExternalProject_Add(
extern_boost
DOWNLOAD_DIR ${THIRD_PARTY_PATH}
DOWNLOAD_COMMAND wget https://dl.bintray.com/boostorg/release/1.64.0/source/boost_1_64_0.tar.gz -O boost_1_64_0.tar.gz
CONFIGURE_COMMAND cd ${THIRD_PARTY_PATH}/ && tar xzf boost_1_64_0.tar.gz && cd boost_1_64_0 &&
./bootstrap.sh --with-libraries=system,regex,filesystem,python,test,random --with-python=${PYTHON_CMD} --with-python-root=${PYTHON_INSTALL_DIR} --with-python-version=2.7
BUILD_COMMAND cd ${THIRD_PARTY_PATH}/boost_1_64_0 && ./b2 cxxflags=-fPIC --with-system --with-regex --with-filesystem --with-test --with-random --with-python include=${PYTHON_INCLUDE_DIR}/python2.7
INSTALL_COMMAND rm -rf ./include/boost && cd ${THIRD_PARTY_PATH} && cp -r boost_1_64_0/boost ./include/
)
ExternalProject_Add(nvshmem_device_project
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/device
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/device
CMAKE_ARGS -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DNVSHMEM_PREFIX=${NVSHMEM_PREFIX}
-DNVSHMEM_DEBUG=${NVSHMEM_DEBUG}
-DNVSHMEM_DEVICELIB_CUDA_HOME=${NVSHMEM_DEVICELIB_CUDA_HOME}
-DNVSHMEM_ENABLE_ALL_DEVICE_INLINING=${NVSHMEM_ENABLE_ALL_DEVICE_INLINING}
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
-DCMAKE_CUDA_HOST_COMPILER=${CMAKE_CUDA_HOST_COMPILER}
-DPROJECT_VERSION=${PROJECT_VERSION}
$ENV{CMAKE_CCACHE_FLAGS}
CMAKE_CACHE_ARGS ${my_cmake_cache_args}
STEP_TARGETS build install
BUILD_ALWAYS TRUE
BUILD_BYPRODUCTS ${CMAKE_CURRENT_BINARY_DIR}/lib/libnvshmem_device.a
)
ExternalProject_Add(sdbus-cpp
PREFIX sdbus-cpp
SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/sdbus-cpp"
INSTALL_COMMAND ""
CMAKE_CACHE_ARGS
-DBUILD_CODE_GEN:BOOL=ON
-DBUILD_SHARED_LIBS:BOOL=OFF
)
ExternalProject_Add(
nccl_stub
SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/nccl_stub"
BUILD_COMMAND ${CMAKE_COMMAND} --build .
INSTALL_COMMAND "")
ExternalProject_Add(avro-c
URL ${AVRO_C_URL}
URL_HASH SHA256=50ceefe582193ef8a92a8891bac1520df778f5c260f2ba68f4c9ae41417e3777
SOURCE_DIR ${CMAKE_BINARY_DIR}/avro-c/
PATCH_COMMAND sed -i -e "s/find_package(Snappy)//" -e "s/add_subdirectory(examples)//" -e "s/add_subdirectory(tests)//" lang/c/CMakeLists.txt
SOURCE_SUBDIR lang/c/
CMAKE_ARGS
-DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/avro-c/install
-DCMAKE_C_FLAGS=-fPIC
-DCMAKE_CXX_FLAGS=-fPIC
-DJANSSON_FOUND=Y -DJANSSON_INCLUDE_DIRS=${JANSSON_INCLUDE_DIR}
-DJANSSON_LIBRARY_DIRS=${JANSSON_LIBRARY_DIR}
-DJANSSON_LIBRARIES=${JANSSON_LIBRARIES}
BINARY_DIR ${CMAKE_BINARY_DIR}/avro-c/
INSTALL_DIR ${CMAKE_BINARY_DIR}/avro-c/install
UPDATE_COMMAND ""
LOG_OUTPUT_ON_FAILURE 1
LOG_DOWNLOAD 1
LOG_UPDATE 1
LOG_CONFIGURE 1
LOG_BUILD 1
LOG_INSTALL 1)
ExternalProject_Add(volk_gnsssdr_module
PREFIX ${GNSSSDR_BINARY_DIR}/volk_gnsssdr_module
SOURCE_DIR ${GNSSSDR_SOURCE_DIR}/src/algorithms/libs/volk_gnsssdr_module/volk_gnsssdr
BINARY_DIR ${GNSSSDR_BINARY_DIR}/volk_gnsssdr_module/build
CMAKE_ARGS ${VOLK_GNSSSDR_CMAKE_ARGS}
-DCMAKE_BUILD_TYPE=$<$<CONFIG:None>:None>$<$<CONFIG:Debug>:Debug>$<$<CONFIG:Release>:Release>$<$<CONFIG:RelWithDebInfo>:RelWithDebInfo>$<$<CONFIG:MinSizeRel>:MinSizeRel>$<$<CONFIG:NoOptWithASM>:NoOptWithASM>$<$<CONFIG:Coverage>:Coverage>$<$<CONFIG:O2WithASM>:O2WithASM>$<$<CONFIG:O3WithASM>:O3WithASM>$<$<CONFIG:ASAN>:ASAN>
-DCMAKE_INSTALL_LIBDIR=${CMAKE_INSTALL_LIBDIR}
DOWNLOAD_COMMAND ""
UPDATE_COMMAND ""
PATCH_COMMAND ""
BUILD_COMMAND ${VOLK_GNSSSDR_BUILD_COMMAND}
INSTALL_DIR ${GNSSSDR_BINARY_DIR}/volk_gnsssdr_module/install
)
ExternalProject_add("${COMPILE_FDB_TARGET}Project"
URL "https://github.com/apple/foundationdb/archive/refs/tags/7.1.27.tar.gz"
URL_HASH SHA256=406200e98ea64883dcd99a9a6b9c0f07aac76a11f0b416b5863c562ec85d9583
BUILD_COMMAND cmake --build ${FDB_BIN_DIR}
BUILD_IN_SOURCE OFF
CMAKE_GENERATOR Ninja
CONFIGURE_COMMAND cmake -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_INSTALL_PREFIX=${FDB_INSTALL_DIR} -B ${FDB_BIN_DIR} -S ${FDB_SRC_DIR} -G Ninja
SOURCE_DIR ${FDB_SRC_DIR}
BINARY_DIR ${FDB_BIN_DIR}
LOG_DIR ${FDB_LOG_DIR}
DOWNLOAD_DIR ${FDB_DOWNLOAD_DIR}
INSTALL_DIR ${FDB_INSTALL_DIR}
INSTALL_COMMAND cmake --install ${FDB_BIN_DIR}
UPDATE_COMMAND ""
DOWNLOAD_EXTRACT_TIMESTAMP ON
BUILD_BYPRODUCTS "${FDB_INSTALL_DIR}/lib/libfdb_c.so"
"${FDB_INSTALL_DIR}/include/foundationdb/fdb_c.h"
"${FDB_INSTALL_DIR}/include/foundationdb/fdb_c_options.g.h"
"${FDB_INSTALL_DIR}/include/foundationdb/fdb_c_types.h"
"${FDB_INSTALL_DIR}/include/foundationdb/fdb.options"
"${FDB_SRC_DIR}/flow/error_definitions.h")
ExternalProject_Add(
faustlibs
PREFIX ""
GIT_REPOSITORY https://github.com/grame-cncm/faustlibraries
GIT_TAG 730eff6dc336973553829235e0b31b24c47a2f69
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND ""
)
ExternalProject_Add(psi4-core
DEPENDS lapack_external
hdf5_external
ambit_external
bse_external
chemps2_external
cppe_external
dkh_external
ecpint_external
libefp_external
einsums_external
gau2grid_external
gdma_external
libint2_external
pcmsolver_external
ddx_external
pybind11_external
pylibefp_external
qcelemental_external
qcengine_external
qcmanybody_external
openorbitaloptimizer_external
optking_external
simint_external
libxc_external
mdi_external
brianqc_external
integratorxx_external
gauxc_external
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/psi4
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${STAGED_INSTALL_PREFIX}
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
-DCMAKE_C_FLAGS=${CMAKE_C_FLAGS}
-DCMAKE_CXX_STANDARD=${psi4_CXX_STANDARD}
-Dpsi4_CXX_STANDARD_Libint2=${psi4_CXX_STANDARD_Libint2}
-DCMAKE_CXX_STANDARD_REQUIRED=ON
-DCMAKE_CXX_EXTENSIONS=OFF
-DFORCE_PEDANTIC=${FORCE_PEDANTIC}
-DCMAKE_OSX_SYSROOT=${CMAKE_OSX_SYSROOT}
-DCMAKE_VERBOSE_MAKEFILE=${CMAKE_VERBOSE_MAKEFILE}
-DCMAKE_Fortran_COMPILER=${CMAKE_Fortran_COMPILER}
-DCMAKE_Fortran_FLAGS=${CMAKE_Fortran_FLAGS}
-DCMAKE_INSTALL_LIBDIR=${CMAKE_INSTALL_LIBDIR}
-DCMAKE_INSTALL_BINDIR=${CMAKE_INSTALL_BINDIR}
-DCMAKE_INSTALL_DATADIR=${CMAKE_INSTALL_DATADIR}
-DCMAKE_INSTALL_INCLUDEDIR=${CMAKE_INSTALL_INCLUDEDIR}
-Dpsi4_INSTALL_CMAKEDIR=${psi4_INSTALL_CMAKEDIR}
-DCMAKE_INSTALL_MESSAGE=${CMAKE_INSTALL_MESSAGE}
-DPYMOD_INSTALL_LIBDIR=${PYMOD_INSTALL_LIBDIR}
-DMAX_AM_ERI=${MAX_AM_ERI}
-DPython_EXECUTABLE=${Python_EXECUTABLE}
-DPython_INCLUDE_DIR=${Python_INCLUDE_DIRS}
-DPython_LIBRARY=${Python_LIBRARIES}
-DPython_NumPy_INCLUDE_DIR=${Python_NumPy_INCLUDE_DIR}
-DPSI4_ROOT=${CMAKE_CURRENT_SOURCE_DIR}
-DENABLE_ambit=${ENABLE_ambit}
-DENABLE_CheMPS2=${ENABLE_CheMPS2}
-DENABLE_cppe=${ENABLE_cppe}
-DENABLE_dkh=${ENABLE_dkh}
-DENABLE_IntegratorXX=${ENABLE_IntegratorXX}
-DENABLE_gauxc=${ENABLE_gauxc}
-DENABLE_ecpint=${ENABLE_ecpint}
-DENABLE_libefp=${ENABLE_libefp}
-DENABLE_Einsums=${ENABLE_Einsums}
-DENABLE_simint=${ENABLE_simint}
-DENABLE_gdma=${ENABLE_gdma}
-DENABLE_PCMSolver=${ENABLE_PCMSolver}
-DENABLE_ddx=${ENABLE_ddx}
-DENABLE_mdi=${ENABLE_mdi}
-DENABLE_BrianQC=${ENABLE_BrianQC}
-DENABLE_OpenOrbitalOptimizer=${ENABLE_OpenOrbitalOptimizer}
-DENABLE_OPENMP=${ENABLE_OPENMP}
-DTargetLAPACK_DIR=${TargetLAPACK_DIR}
-DTargetHDF5_DIR=${TargetHDF5_DIR}
-DEigen3_DIR=${Eigen3_DIR}
-Dambit_DIR=${ambit_DIR}
-DCheMPS2_DIR=${CheMPS2_DIR}
-Ddkh_DIR=${dkh_DIR}
-Decpint_DIR=${ecpint_DIR}
-Dlibefp_DIR=${libefp_DIR}
-DEinsums_DIR=${Einsums_DIR}
-Dgau2grid_DIR=${gau2grid_DIR}
-Dgdma_DIR=${gdma_DIR}
-DLibint2_DIR=${Libint2_DIR}
-DOpenOrbitalOptimizer_DIR=${OpenOrbitalOptimizer_DIR}
-DPCMSolver_DIR=${PCMSolver_DIR}
-Dmdi_DIR=${mdi_DIR}
-Dpybind11_DIR=${pybind11_DIR}
-DIntegratorXX_DIR=${IntegratorXX_DIR}
-Dgauxc_DIR=${gauxc_DIR}
-Dpylibefp_DIR=${pylibefp_DIR}
-Dsimint_DIR=${simint_DIR}
-DLibxc_DIR=${Libxc_DIR}
-DBrianQC_DIR=${BrianQC_DIR}
-DFortran_ENABLED=${Fortran_ENABLED}
-DLIBC_INTERJECT=${LIBC_INTERJECT}
-DRESTRICT_KEYWORD=${RESTRICT_KEYWORD}
-DFC_SYMBOL=${FC_SYMBOL}
-DOpenMP_LIBRARY_DIRS=${OpenMP_LIBRARY_DIRS}
-DOpenMP_C_FLAGS=${OpenMP_C_FLAGS}
-DOpenMP_CXX_FLAGS=${OpenMP_CXX_FLAGS}
-DOpenMP_omp_LIBRARY=${OpenMP_omp_LIBRARY}
-DOpenMP_gomp_LIBRARY=${OpenMP_gomp_LIBRARY}
-DOpenMP_libiomp5md_LIBRARY=${OpenMP_libiomp5md_LIBRARY}
-DOpenMP_pthread_LIBRARY=${OpenMP_pthread_LIBRARY}
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON
-DENABLE_CYTHONIZE=${ENABLE_CYTHONIZE}
-Dpsi4_SHGSHELL_ORDERING=${psi4_SHGSHELL_ORDERING}
CMAKE_CACHE_ARGS -DCMAKE_PREFIX_PATH:PATH=${_cmake_CMAKE_PREFIX_PATH}
-DCMAKE_C_COMPILER_ARG1:STRING=${CMAKE_C_COMPILER_ARG1}
-DCMAKE_CXX_COMPILER_ARG1:STRING=${CMAKE_CXX_COMPILER_ARG1}
-DCMAKE_Fortran_COMPILER_ARG1:STRING=${CMAKE_Fortran_COMPILER_ARG1}
# CMAKE_<lang>_COMPILER_ARG1 vars pass args thru when CMAKE_<lang>_COMPILER set as "compiler --vital-args"
-DOpenMP_C_LIB_NAMES:STRING=${OpenMP_C_LIB_NAMES}
-DOpenMP_CXX_LIB_NAMES:STRING=${OpenMP_CXX_LIB_NAMES}
USES_TERMINAL_BUILD 1
BUILD_ALWAYS 1)
ExternalProject_Add(
build32
SOURCE_DIR "${CMAKE_SOURCE_DIR}"
STAMP_DIR "${CMAKE_BINARY_DIR}/stamp32"
BINARY_DIR "${CMAKE_BINARY_DIR}/build32"
INSTALL_DIR "${CMAKE_BINARY_DIR}/install32"
BUILD_ALWAYS ON
EXCLUDE_FROM_ALL ON
DOWNLOAD_COMMAND ""
CONFIGURE_COMMAND
"${CMAKE_COMMAND}"
-S "<SOURCE_DIR>"
-B "<BINARY_DIR>"
-G "${CMAKE_GENERATOR}"
"-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}"
-A Win32
"-DBUILD_OUT_PREFIX=${BUILD_OUT_PREFIX}"
-DWITH_ASAN=${WITH_ASAN}
BUILD_COMMAND
"${CMAKE_COMMAND}"
--build "<BINARY_DIR>"
--config "$<CONFIG>"
--target build32
--parallel
INSTALL_COMMAND
""
)
ExternalProject_Add(${COMPONENT_NAME}
PREFIX ${COMPONENT_NAME}
DOWNLOAD_COMMAND ""
STAMP_DIR ${COMPONENT_NAME}/stamp
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../..
BINARY_DIR ${COMPONENT_NAME}/build
LIST_SEPARATOR | # Use the alternate list separator
CMAKE_ARGS
-DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
-DCMAKE_INSTALL_PREFIX:PATH=${COMPONENT_PATH}
-DCMAKE_INSTALL_INCLUDEDIR=${CMAKE_INSTALL_INCLUDEDIR}
-DCMAKE_INSTALL_LIBDIR=${CMAKE_INSTALL_LIBDIR}
-DCMAKE_INSTALL_DOCDIR=${CMAKE_INSTALL_DOCDIR}
-DCMAKE_INSTALL_BINDIR=${CMAKE_INSTALL_BINDIR}
-DOSPRAY_ENABLE_APPS=${BUILD_OSPRAY_APPS}
-DOSPRAY_APPS_ENABLE_GLM=${BUILD_OSPRAY_GLM}
-DOSPRAY_BUILD_ISA=ALL
-DOSPRAY_ENABLE_VOLUMES=${BUILD_OPENVKL}
-DOSPRAY_MODULE_BILINEAR_PATCH=${BUILD_OSPRAY_CI_EXTRAS}
-DOSPRAY_MODULE_DENOISER=${BUILD_OIDN}
-DOSPRAY_INSTALL_DEPENDENCIES=${INSTALL_DEPENDENCIES}
-DOSPRAY_STRICT_BUILD=${BUILD_OSPRAY_CI_EXTRAS}
-DOSPRAY_WARN_AS_ERRORS=${BUILD_OSPRAY_CI_EXTRAS}
-DOSPRAY_MODULE_MPI=${BUILD_OSPRAY_MODULE_MPI}
-DOSPRAY_MODULE_GPU=${BUILD_GPU_SUPPORT}
-DOSPRAY_MODULE_MULTIDEVICE=${BUILD_OSPRAY_MODULE_MULTIDEVICE}
$<$<BOOL:${DOWNLOAD_TBB}>:-DRKCOMMON_TBB_ROOT=${TBB_PATH}>
$<$<BOOL:${DOWNLOAD_ISPC}>:-DISPC_EXECUTABLE=${ISPC_PATH}>
-DCMAKE_OSX_ARCHITECTURES=${CMAKE_OSX_ARCHITECTURES}
-DCMAKE_OSX_DEPLOYMENT_TARGET=${CMAKE_OSX_DEPLOYMENT_TARGET}
-DOSPRAY_MODULE_PATH=${CMAKE_CURRENT_BINARY_DIR} # FIXME WA for OSPRay to build with GNU-style options
BUILD_COMMAND ${DEFAULT_BUILD_COMMAND}
BUILD_ALWAYS OFF
)
externalproject_add(
googleapis_download
EXCLUDE_FROM_ALL ON
PREFIX "${EXTERNAL_GOOGLEAPIS_PREFIX}"
PATCH_COMMAND ""
DOWNLOAD_COMMAND ""
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND ""
BUILD_BYPRODUCTS ${EXTERNAL_GOOGLEAPIS_BYPRODUCTS}
LOG_DOWNLOAD OFF)
ExternalProject_Add(
nvImageCodec
GIT_REPOSITORY https://github.com/NVIDIA/nvImageCodec.git
GIT_TAG v0.6.0
GIT_SUBMODULES "external/pybind11"
"external/NVTX"
"external/googletest"
"external/dlpack"
"external/boost/preprocessor"
CMAKE_ARGS "-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}"
"-DCMAKE_INSTALL_PREFIX=${NVIMGCODEC_INSTALL_PREFIX}"
"-DBUILD_TEST=OFF"
"-DBUILD_SAMPLES=OFF"
"-DBUILD_PYTHON=OFF"
"-DBUILD_NVJPEG2K_EXT=${BUILD_NVJPEG2K}"
"-DWITH_DYNAMIC_NVJPEG2K=OFF"
"-DBUILD_NVJPEG_EXT=${BUILD_NVJPEG}"
"-DWITH_DYNAMIC_NVJPEG=${WITH_DYNAMIC_NVJPEG}"
"-DBUILD_NVTIFF_EXT=OFF"
"-DWITH_DYNAMIC_NVTIFF=OFF"
"-DBUILD_NVBMP_EXT=OFF"
"-DBUILD_NVPNM_EXT=OFF"
"-DBUILD_LIBJPEG_TURBO_EXT=${BUILD_LIBJPEG_TURBO}"
"-DBUILD_LIBTIFF_EXT=${BUILD_LIBTIFF}"
"-DBUILD_OPENCV_EXT=${BUILD_OPENCV}"
"-DBUILD_DOCS=OFF"
"${EXTRA_CMAKE_OPTIONS_LIST}"
PREFIX "${NVIMGCODEC_INSTALL_PREFIX}"
)
ExternalProject_Add(
tl-sbuild
PREFIX ${CMAKE_CURRENT_BINARY_DIR}/tl-sbuild
DEPENDS ${TLRENDER_DEPS}
GIT_REPOSITORY ${TLRENDER_GIT_REPOSITORY}
GIT_TAG ${TLRENDER_GIT_TAG}
INSTALL_COMMAND ""
SOURCE_SUBDIR etc/SuperBuild
LIST_SEPARATOR |
CMAKE_ARGS ${TLRENDER_ARGS})
ExternalProject_Add(icu
URL https://github.com/unicode-org/icu/archive/refs/tags/release-70-1.zip
URL_HASH MD5=49d5e2e5bab93ae1a4b56e916150544c
SOURCE_DIR fetched/icu
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E env ${ICU_ENV}
<SOURCE_DIR>/icu4c/source/configure --enable-static --disable-shared
--disable-tests --disable-samples --disable-icuio --disable-extras ${ICU_ADDITIONAL_OPTS}
BUILD_COMMAND make
INSTALL_COMMAND ""
)
ExternalProject_Add(
onnxruntime
GIT_REPOSITORY https://github.com/microsoft/onnxruntime
GIT_TAG origin/rel-1.14.0
SOURCE_DIR ${DEP_ROOT_DIR}/${ONNX_NAME}
PATCH_COMMAND cd ${DEP_ROOT_DIR}/${ONNX_NAME} && git apply ${CMAKE_CURRENT_SOURCE_DIR}/cmake/onnx.patch || git apply ${CMAKE_CURRENT_SOURCE_DIR}/cmake/onnx.patch -R --check && git submodule sync && git submodule foreach 'git fetch --tags' && git submodule update --init --remote
BINARY_DIR ${DEP_ROOT_DIR}/${ONNX_NAME}-build
CONFIGURE_COMMAND ${CMAKE_COMMAND} ${DEP_ROOT_DIR}/${ONNX_NAME}/cmake -B${DEP_ROOT_DIR}/${ONNX_NAME}-build -Donnxruntime_RUN_ONNX_TESTS=OFF -Donnxruntime_GENERATE_TEST_REPORTS=ON -Donnxruntime_USE_MIMALLOC=OFF -Donnxruntime_ENABLE_PYTHON=OFF -Donnxruntime_BUILD_CSHARP=OFF -Donnxruntime_BUILD_JAVA=OFF -Donnxruntime_BUILD_NODEJS=OFF -Donnxruntime_BUILD_OBJC=OFF -Donnxruntime_BUILD_SHARED_LIB=OFF -Donnxruntime_BUILD_APPLE_FRAMEWORK=OFF -Donnxruntime_USE_DNNL=OFF -Donnxruntime_USE_NNAPI_BUILTIN=OFF -Donnxruntime_USE_RKNPU=OFF -Donnxruntime_USE_LLVM=OFF -Donnxruntime_ENABLE_MICROSOFT_INTERNAL=OFF -Donnxruntime_USE_VITISAI=OFF -Donnxruntime_USE_TENSORRT=OFF -Donnxruntime_SKIP_AND_PERFORM_FILTERED_TENSORRT_TESTS=ON -Donnxruntime_USE_TENSORRT_BUILTIN_PARSER=OFF -Donnxruntime_TENSORRT_PLACEHOLDER_BUILDER=OFF -Donnxruntime_USE_TVM=OFF -Donnxruntime_TVM_CUDA_RUNTIME=OFF -Donnxruntime_TVM_USE_HASH=OFF -Donnxruntime_USE_MIGRAPHX=OFF -Donnxruntime_CROSS_COMPILING=OFF -Donnxruntime_DISABLE_CONTRIB_OPS=OFF -Donnxruntime_DISABLE_ML_OPS=OFF -Donnxruntime_DISABLE_RTTI=OFF -Donnxruntime_DISABLE_EXCEPTIONS=OFF -Donnxruntime_MINIMAL_BUILD=OFF -Donnxruntime_EXTENDED_MINIMAL_BUILD=OFF -Donnxruntime_MINIMAL_BUILD_CUSTOM_OPS=OFF -Donnxruntime_REDUCED_OPS_BUILD=OFF -Donnxruntime_ENABLE_LANGUAGE_INTEROP_OPS=OFF -Donnxruntime_USE_DML=OFF -Donnxruntime_USE_WINML=OFF -Donnxruntime_BUILD_MS_EXPERIMENTAL_OPS=OFF -Donnxruntime_USE_TELEMETRY=OFF -Donnxruntime_ENABLE_LTO=OFF -Donnxruntime_USE_ACL=OFF -Donnxruntime_USE_ACL_1902=OFF -Donnxruntime_USE_ACL_1905=OFF -Donnxruntime_USE_ACL_1908=OFF -Donnxruntime_USE_ACL_2002=OFF -Donnxruntime_USE_ARMNN=OFF -Donnxruntime_ARMNN_RELU_USE_CPU=ON -Donnxruntime_ARMNN_BN_USE_CPU=ON -Donnxruntime_ENABLE_NVTX_PROFILE=OFF -Donnxruntime_ENABLE_TRAINING=OFF -Donnxruntime_ENABLE_TRAINING_OPS=OFF -Donnxruntime_ENABLE_TRAINING_APIS=OFF -Donnxruntime_ENABLE_CPU_FP16_OPS=OFF -Donnxruntime_USE_NCCL=OFF -Donnxruntime_BUILD_BENCHMARKS=OFF -Donnxruntime_USE_ROCM=OFF -Donnxruntime_GCOV_COVERAGE=OFF -Donnxruntime_USE_MPI=ON -Donnxruntime_ENABLE_MEMORY_PROFILE=OFF -Donnxruntime_ENABLE_CUDA_LINE_NUMBER_INFO=OFF -Donnxruntime_BUILD_WEBASSEMBLY=OFF -Donnxruntime_BUILD_WEBASSEMBLY_STATIC_LIB=OFF -Donnxruntime_ENABLE_WEBASSEMBLY_EXCEPTION_CATCHING=ON -Donnxruntime_ENABLE_WEBASSEMBLY_API_EXCEPTION_CATCHING=OFF -Donnxruntime_ENABLE_WEBASSEMBLY_EXCEPTION_THROWING=ON -Donnxruntime_ENABLE_WEBASSEMBLY_THREADS=OFF -Donnxruntime_ENABLE_WEBASSEMBLY_DEBUG_INFO=OFF -Donnxruntime_ENABLE_WEBASSEMBLY_PROFILING=OFF -Donnxruntime_ENABLE_EAGER_MODE=OFF -Donnxruntime_ENABLE_LAZY_TENSOR=OFF -Donnxruntime_ENABLE_EXTERNAL_CUSTOM_OP_SCHEMAS=OFF -Donnxruntime_ENABLE_CUDA_PROFILING=OFF -Donnxruntime_ENABLE_ROCM_PROFILING=OFF -Donnxruntime_USE_XNNPACK=OFF -Donnxruntime_USE_CANN=OFF -DCMAKE_TLS_VERIFY=ON -DFETCHCONTENT_QUIET=OFF -Donnxruntime_PYBIND_EXPORT_OPSCHEMA=OFF -Donnxruntime_ENABLE_MEMLEAK_CHECKER=OFF -DCMAKE_BUILD_TYPE=Release
BUILD_COMMAND ${CMAKE_COMMAND} --build ${DEP_ROOT_DIR}/${ONNX_NAME}-build --config Release -- -j8
)
ExternalProject_Add(SpecFilePreview
BINARY_DIR "${CMAKE_BINARY_DIR}/SpecFilePreview"
URL ${CMAKE_CURRENT_SOURCE_DIR}/../macOsQuickLook/SpecFilePreview/SpecFilePreview/
CMAKE_GENERATOR "Unix Makefiles"
CMAKE_CACHE_ARGS -DCMAKE_PREFIX_PATH:PATH=${CMAKE_PREFIX_PATH}
#-DWt_INCLUDE_DIR:PATH=${Wt_INCLUDE_DIR}
#-DBOOST_ROOT:PATH=${Boost_INCLUDE_DIR}/..
-DInterSpec_BASE_DIR:PATH=${CMAKE_CURRENT_SOURCE_DIR}/../../
#-DBOOST_INCLUDEDIR:PATH=${Boost_INCLUDE_DIR}
-DCMAKE_BUILD_TYPE:STRING=RELEASE
-DSpecUtils_ENABLE_D3_CHART:BOOL=OFF
INSTALL_COMMAND ""
)
ExternalProject_Add(${LOCAL_PROJECT_NAME}
DEPENDS ${${LOCAL_PROJECT_NAME}_DEPENDENCIES}
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}
BINARY_DIR ${LOCAL_PROJECT_NAME}-${CMAKE_BUILD_TYPE}-EP${EXTERNAL_PROJECT_BUILD_TYPE}-build
DOWNLOAD_COMMAND ""
UPDATE_COMMAND ""
CMAKE_GENERATOR ${gen}
CMAKE_ARGS
--no-warn-unused-cli # HACK Only expected variables should be passed down.
CMAKE_CACHE_ARGS
-D${LOCAL_PROJECT_NAME}_SUPERBUILD:BOOL=OFF # This must be here
-DBUILD_TESTING:BOOL=${${LOCAL_PROJECT_NAME}_BUILD_TESTING}
-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-DBUILD_EXAMPLES:BOOL=${${LOCAL_PROJECT_NAME}_BUILD_TESTING}
-DCMAKE_INSTALL_PREFIX_SET:BOOL=TRUE
-DCMAKE_INSTALL_PREFIX:PATH=${CMAKE_INSTALL_PREFIX}
${MYBRAINSTools_EP_ARGS} # This appends the "mark_as_superbuild" variables to the written out cache for clion use
#INSTALL_COMMAND ""
LOG_CONFIGURE ON
LOG_BUILD ON
)
ExternalProject_Add(gmp
SOURCE_DIR "${PROJECT_SOURCE_DIR}/external/gmp"
BINARY_DIR "${CMAKE_BINARY_DIR}/gmp"
CONFIGURE_COMMAND CC=${CMAKE_C_COMPILER} CXX=${CMAKE_CXX_COMPILER} ${PROJECT_SOURCE_DIR}/external/gmp/configure --enable-cxx --enable-shared=no --enable-static=yes --with-readline=no --with-pic --prefix=${CMAKE_BINARY_DIR}/gmp-prefix
DOWNLOAD_COMMAND ""
UPDATE_COMMAND ""
BUILD_BYPRODUCTS "${GMP_LIBRARY};${GMPXX_LIBRARY}"
#LOG_CONFIGURE 1
#LOG_OUTPUT_ON_FAILURE 1
)
ExternalProject_Add(${name}
DEPENDS ${name}-clobber ${LIBCXX_DEPS}
PREFIX ${prefix}
SOURCE_DIR ${COMPILER_RT_SOURCE_DIR}/cmake/Modules/CustomLibcxx
STAMP_DIR ${STAMP_DIR}
BINARY_DIR ${BINARY_DIR}
CMAKE_ARGS ${CMAKE_PASSTHROUGH_VARIABLES}
${compiler_args}
-DCMAKE_C_FLAGS=${LIBCXX_C_FLAGS}
-DCMAKE_CXX_FLAGS=${LIBCXX_CXX_FLAGS}
-DCMAKE_BUILD_TYPE=Release
-DCMAKE_TRY_COMPILE_TARGET_TYPE=STATIC_LIBRARY
-DLLVM_PATH=${LLVM_MAIN_SRC_DIR}
-DLLVM_BINARY_DIR=${prefix}
-DLLVM_LIBRARY_OUTPUT_INTDIR=${prefix}/lib
-DCOMPILER_RT_LIBCXX_PATH=${COMPILER_RT_LIBCXX_PATH}
-DCOMPILER_RT_LIBCXXABI_PATH=${COMPILER_RT_LIBCXXABI_PATH}
${LIBCXX_CMAKE_ARGS}
INSTALL_COMMAND ""
STEP_TARGETS configure build
BUILD_ALWAYS 1
USES_TERMINAL_CONFIGURE 1
USES_TERMINAL_BUILD 1
USES_TERMINAL_INSTALL 1
EXCLUDE_FROM_ALL TRUE
BUILD_BYPRODUCTS "${prefix}/lib/libc++.a" "${prefix}/lib/libc++abi.a"
)
ExternalProject_Add (
api_stability_${test_suite}
URL ${SEQAN3_LAST_STABLE_SOURCE_URL}
URL_HASH SHA256=${SEQAN3_LAST_STABLE_SOURCE_SHA256}
SOURCE_SUBDIR "test/${test_suite}"
CMAKE_ARGS ${SEQAN3_EXTERNAL_PROJECT_CMAKE_ARGS}
-DCMAKE_CXX_FLAGS=${SEQAN3_API_STABILITY_CXX_FLAGS}
-DCMAKE_CXX_COMPILER_LAUNCHER=${CMAKE_CXX_COMPILER_LAUNCHER}
-DCMAKE_PREFIX_PATH=${CMAKE_CURRENT_LIST_DIR}/../../cmake
-DSEQAN3_GENERATE_SNIPPETS=OFF
-DSEQAN3_VERBOSE_TESTS=OFF
PATCH_COMMAND ${CMAKE_COMMAND} -E echo "<SOURCE_DIR>"
COMMAND ${CMAKE_COMMAND} -E remove_directory "<SOURCE_DIR>/include"
COMMAND ${CMAKE_COMMAND} -E remove_directory "<SOURCE_DIR>/submodules"
COMMAND ${CMAKE_COMMAND} -E remove_directory "<SOURCE_DIR>/build_system"
COMMAND ${CMAKE_COMMAND} -E remove_directory "<SOURCE_DIR>/cmake"
COMMAND sh -c "${git_apply}"
TEST_BEFORE_INSTALL TRUE
TEST_COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure -j
INSTALL_COMMAND "")
ExternalProject_Add(Externals
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/Externals
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/Externals-build
DOWNLOAD_COMMAND ""
UPDATE_COMMAND ""
INSTALL_COMMAND ""
CMAKE_CACHE_ARGS
-DCMAKE_CXX_COMPILER:STRING=${CMAKE_CXX_COMPILER}
-DCMAKE_C_COMPILER:STRING=${CMAKE_C_COMPILER}
-DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS}
-DCMAKE_C_FLAGS:STRING=${CMAKE_C_FLAGS}
-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-DCMAKE_MACOSX_RPATH:BOOL=ON
-DBUILD_TESTING:BOOL=OFF
-DBUILD_EXAMPLES:BOOL=OFF
-DSV_USE_MITK:BOOL=${SV_CMAKE_DOWLOAD_MITK_EXTERNAL}
-DSV_GIT_PULL_SUBMODULES:BOOL=${SV_GIT_PULL_SUBMODULES}
-DSV_EXTERNALS_VERSION_NUMBER:STRING=${SV_EXTERNALS_VERSION_NUMBER}
# External packages directories
-DSV_FREETYPE_DIR:PATH=${SV_FREETYPE_DIR}
-DSV_GDCM_DIR:PATH=${SV_GDCM_DIR}
-DSV_HDF5_DIR:PATH=${SV_HDF5_DIR}
-DSV_ITK_DIR:PATH=${SV_ITK_DIR}
-DSV_MMG_DIR:PATH=${SV_MMG_DIR}
-DSV_MITK_DIR:PATH=${SV_MITK_DIR}
-DSV_ML_DIR:PATH=${SV_ML_DIR}
-DSV_OpenCASCADE_DIR:PATH=${SV_OpenCASCADE_DIR}
-DSV_PYTHON_DIR:PATH=${SV_PYTHON_DIR}
-DSV_TINYXML2_DIR:PATH=${SV_TINYXML2_DIR}
-DSV_Qt6_DIR:PATH=${SV_Qt6_DIR}
-DSV_VTK_DIR:PATH=${SV_VTK_DIR}
#
-DSV_EXTERNALS_USE_PREBUILT_QT:BOOL=${SV_EXTERNALS_USE_PREBUILT_QT}
-DSV_EXTERNALS_PREBUILT_QT_PATH:PATH=${SV_EXTERNALS_PREBUILT_QT_PATH}
-DQt6_DIR:PATH=${SV_EXTERNALS_PREBUILT_QT_PATH}
-DSV_EXTERNALS_TOPLEVEL_BIN_DIR:PATH=${SV_EXTERNALS_TOPLEVEL_BIN_DIR}
${SV_EXTERNALS_ADDITIONAL_CMAKE_ARGS}
)
ExternalProject_Add(igraph_0_10
PREFIX "${IGRAPH_INSTALL}"
URL "https://github.com/igraph/igraph/releases/download/0.10.12/igraph-0.10.12.tar.gz"
SOURCE_DIR "${IGRAPH_DOWNLOAD}"
CMAKE_ARGS "-DCMAKE_INSTALL_PREFIX=${IGRAPH_INSTALL}" "-DBUILD_SHARED_LIBS=ON" "-DCMAKE_INSTALL_LIBDIR=${IGRAPH_INSTALL}/lib" "-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}" "-Wno-deprecated" "-DIGRAPH_VERSION=0.10.12"
BINARY_DIR "${IGRAPH_BUILD}"
PATCH_COMMAND echo "No patch for igraph-0.10.x required"
INSTALL_DIR "${IGRAPH_INSTALL}"
BUILD_BYPRODUCTS "${IGRAPH_LIB}"
)
ExternalProject_Add(${name}
DEPENDS ${ARG_DEPENDS} llvm-config
${name}-clobber
PREFIX ${CMAKE_BINARY_DIR}/projects/${name}
SOURCE_DIR ${source_dir}
STAMP_DIR ${STAMP_DIR}
BINARY_DIR ${BINARY_DIR}
${exclude}
CMAKE_ARGS ${${nameCanon}_CMAKE_ARGS}
${compiler_args}
-DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX}
${sysroot_arg}
-DLLVM_BINARY_DIR=${PROJECT_BINARY_DIR}
-DLLVM_CONFIG_PATH=${llvm_config_path}
-DLLVM_ENABLE_WERROR=${LLVM_ENABLE_WERROR}
-DLLVM_HOST_TRIPLE=${LLVM_HOST_TRIPLE}
-DLLVM_HAVE_LINK_VERSION_SCRIPT=${LLVM_HAVE_LINK_VERSION_SCRIPT}
-DPACKAGE_VERSION=${PACKAGE_VERSION}
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}
-DCMAKE_EXPORT_COMPILE_COMMANDS=1
${ARG_CMAKE_ARGS}
${PASSTHROUGH_VARIABLES}
INSTALL_COMMAND ""
STEP_TARGETS configure build
BUILD_ALWAYS 1
USES_TERMINAL_CONFIGURE 1
USES_TERMINAL_BUILD 1
USES_TERMINAL_INSTALL 1
LIST_SEPARATOR |
)
ExternalProject_Add(gtest-parallel_ext
SOURCE_DIR "${gtest_parallel_source_dir}"
GIT_REPOSITORY "https://github.com/google/gtest-parallel.git"
GIT_TAG "master"
GIT_SHALLOW TRUE
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND "")
ExternalProject_Add(${DEP_NAME}
DEPENDS ${DEP_DEPENDS}
TMP_DIR ${BINARY_DIR}/tmp
STAMP_DIR ${BINARY_DIR}/stamp
GIT_REPOSITORY ${DEP_GIT_URL}
GIT_TAG ${DEP_GIT_TAG}
SOURCE_DIR ${SOURCE_DIR}
CMAKE_CACHE_ARGS ${CMAKE_ARGS}
BINARY_DIR ${BINARY_DIR}/build
INSTALL_DIR ${INSTALL_DIR})
ExternalProject_add(FFTW
URL ${FFTW_URL_PRE}${FFTW_VERSION}${FFTW_URL_POST}
URL_MD5 ${FFTW_MD5}
SOURCE_DIR ${CMAKE_CURRENT_BINARY_DIR}/fftw/src
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/fftw/src
INSTALL_DIR ${FFTW_INSTALL_DIR}
UPDATE_COMMAND ""
CONFIGURE_COMMAND <SOURCE_DIR>/configure
${FFTW_SHARED_FLAG}
${FFTW_OPTIMIZATION_CONFIGURATION}
${FFTW_THREADS_CONFIGURATION}
--disable-fortran
--prefix=<INSTALL_DIR>
${FFTW_COMPILER_FLAGS}
)
ExternalProject_Add( project_secp256k1
PREFIX ${CMAKE_CURRENT_BINARY_DIR}/vendor/secp256k1-zkp
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/vendor/secp256k1-zkp
CONFIGURE_COMMAND ${CMAKE_CURRENT_SOURCE_DIR}/vendor/secp256k1-zkp/configure --prefix=${CMAKE_CURRENT_BINARY_DIR}/vendor/secp256k1-zkp --with-bignum=no --host=x86_64-w64-mingw32
BUILD_COMMAND make
INSTALL_COMMAND true
BUILD_BYPRODUCTS ${CMAKE_CURRENT_BINARY_DIR}/vendor/secp256k1-zkp/src/project_secp256k1-build/.libs/libsecp256k1.a
)
ExternalProject_Add(
BUILTIN_CFITSIO
PREFIX ${CFITSIO_PREFIX}
URL https://lcgpackages.web.cern.ch/tarFiles/sources/cfitsio-${CFITSIO_VERSION}.tar.gz
URL_HASH SHA256=95900cf95ae760839e7cb9678a7b2fad0858d6ac12234f934bd1cb6bfc246ba9
CMAKE_ARGS -G ${CMAKE_GENERATOR}
-DCMAKE_POLICY_VERSION_MINIMUM=3.5
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_C_FLAGS=${CFITSIO_C_FLAGS}
-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
-DCMAKE_INSTALL_LIBDIR=<INSTALL_DIR>/lib
-DBUILD_SHARED_LIBS=OFF
-DUSE_CURL=OFF
-DZLIB_FOUND=TRUE
-DZLIB_INCLUDE_DIR=${ZLIB_INCLUDE_DIRS}
-DZLIB_LIBRARIES=$<TARGET_FILE:ZLIB::ZLIB>
# Skip the find_package(ZLIB REQUIRED), because we feed CFITSIO our own ZLIB flags.
PATCH_COMMAND git apply --ignore-space-change --ignore-whitespace
${CMAKE_CURRENT_SOURCE_DIR}/cfitsio-no-find-zlib.diff
${CMAKE_CURRENT_SOURCE_DIR}/no-fortran-wrapper.diff
BUILD_COMMAND ${CMAKE_COMMAND} --build . ${CFITSIO_BUILD_COMMAND_FLAGS}
INSTALL_COMMAND ${CMAKE_COMMAND} --build . ${CFITSIO_BUILD_COMMAND_FLAGS} --target install
LOG_DOWNLOAD 1 LOG_CONFIGURE 1 LOG_BUILD 1 LOG_INSTALL 1 LOG_OUTPUT_ON_FAILURE 1
BUILD_BYPRODUCTS ${CFITSIO_LIBRARIES}
TIMEOUT 600
)
ExternalProject_Add(Seastar
SOURCE_DIR "${PROJECT_SOURCE_DIR}/seastar"
CONFIGURE_COMMAND ""
BUILD_COMMAND ${CMAKE_COMMAND} --build "${seastar_build_dir}"
--target seastar
--target seastar_testing
--target seastar_perf_testing
--target app_iotune
BUILD_ALWAYS ON
BUILD_BYPRODUCTS
${seastar_build_dir}/libseastar.$<IF:$<CONFIG:Debug,Dev>,so,a>
${seastar_build_dir}/libseastar_testing.$<IF:$<CONFIG:Debug,Dev>,so,a>
${seastar_build_dir}/libseastar_perf_testing.$<IF:$<CONFIG:Debug,Dev>,so,a>
${seastar_build_dir}/apps/iotune/iotune
${seastar_build_dir}/gen/include/seastar/http/chunk_parsers.hh
${seastar_build_dir}/gen/include/seastar/http/request_parser.hh
${seastar_build_dir}/gen/include/seastar/http/response_parser.hh
INSTALL_COMMAND "")
ExternalProject_Add(opencv
PREFIX ${ROOT_DIR}/deps/opencv
GIT_REPOSITORY https://github.com/opencv/opencv.git
GIT_SHALLOW 1
GIT_TAG 3.1.0
CMAKE_GENERATOR ${gen}
CMAKE_ARGS
-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
-DCMAKE_INCLUDE_PATH=${ROOT_DIR}/deps/local/include
-DCMAKE_LIBRARY_PATH=${ROOT_DIR}/deps/local/lib
-DBUILD_WITH_STATIC_CRT:BOOL=ON
-DBUILD_SHARED_LIBS:BOOL=OFF
-DBUILD_DOCS:BOOL=OFF
-DBUILD_EXAMPLES:BOOL=OFF
-DBUILD_TESTS:BOOL=OFF
-DBUILD_PERF_TESTS:BOOL=OFF
#-DCMAKE_BUILD_TYPE:STRING=Release
-DWITH_FFMPEG:BOOL=OFF
-DWITH_OPENEXR:BOOL=OFF
-DWITH_JASPER:BOOL=OFF
-DWITH_TIFF:BOOL=OFF
-DWITH_IPP:BOOL=OFF
-DBUILD_opencv_apps:BOOL=OFF
-DBUILD_opencv_calib3d:BOOL=ON
-DBUILD_opencv_flann:BOOL=ON
-DBUILD_opencv_features2d:BOOL=ON
-DBUILD_opencv_objdetect:BOOL=ON
-DBUILD_opencv_photo:BOOL=ON
-DBUILD_opencv_ts:BOOL=OFF
-DBUILD_opencv_ml:BOOL=ON
-DBUILD_opencv_video:BOOL=ON
-DBUILD_opencv_java:BOOL=OFF
-DBUILD_opencv_python2:BOOL=OFF
-DBUILD_opencv_python3:BOOL=OFF
-DPYTHON2_LIBRARY:STRING=C:/Python27/libs/python27.lib
-DPYTHON3_LIBRARY:STRING=C:/Python35/libs/python35.lib
INSTALL_DIR ${ROOT_DIR}/deps/local/
)
ExternalProject_Add(
ICU
URL ${VELOX_ICU4C_SOURCE_URL}
URL_HASH ${VELOX_ICU4C_BUILD_SHA256_CHECKSUM}
SOURCE_DIR ${CMAKE_CURRENT_BINARY_DIR}/icu-src
BINARY_DIR ${CMAKE_CURRENT_BINARY_DIR}/icu-bld
CONFIGURE_COMMAND
<SOURCE_DIR>/source/configure --prefix=${ICU_DIR} --libdir=${ICU_LIBRARIES} ${ICU_CFG}
BUILD_COMMAND ${MAKE_PROGRAM} -j ${NUM_JOBS}
INSTALL_COMMAND ${HOST_ENV_CMAKE} ${MAKE_PROGRAM} install
)
ExternalProject_Add(${proj}
${${proj}_EP_ARGS}
DEPENDS ${Slicer_DEPENDENCIES} ${Slicer_REMOTE_DEPENDENCIES}
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}
BINARY_DIR ${CMAKE_BINARY_DIR}/${Slicer_BINARY_INNER_SUBDIR}
DOWNLOAD_COMMAND ""
UPDATE_COMMAND ""
CMAKE_CACHE_ARGS
-DCMAKE_CXX_COMPILER:FILEPATH=${CMAKE_CXX_COMPILER}
-DCMAKE_CXX_FLAGS:STRING=${ep_common_cxx_flags}
-DCMAKE_C_COMPILER:FILEPATH=${CMAKE_C_COMPILER}
-DCMAKE_C_FLAGS:STRING=${ep_common_c_flags}
-DCMAKE_CXX_STANDARD:STRING=${CMAKE_CXX_STANDARD}
-DCMAKE_CXX_STANDARD_REQUIRED:BOOL=${CMAKE_CXX_STANDARD_REQUIRED}
-DCMAKE_CXX_EXTENSIONS:BOOL=${CMAKE_CXX_EXTENSIONS}
-DADDITIONAL_C_FLAGS:STRING=${ADDITIONAL_C_FLAGS}
-DADDITIONAL_CXX_FLAGS:STRING=${ADDITIONAL_CXX_FLAGS}
-DSlicer_REQUIRED_C_FLAGS:STRING=${Slicer_REQUIRED_C_FLAGS}
-DSlicer_REQUIRED_CXX_FLAGS:STRING=${Slicer_REQUIRED_CXX_FLAGS}
-DSlicer_SUPERBUILD:BOOL=OFF
-DSlicer_SUPERBUILD_DIR:PATH=${CMAKE_BINARY_DIR}
-D${Slicer_MAIN_PROJECT}_APPLICATION_NAME:STRING=${${Slicer_MAIN_PROJECT}_APPLICATION_NAME}
-DSlicer_EXTENSION_SOURCE_DIRS:STRING=${Slicer_EXTENSION_SOURCE_DIRS}
-DSlicer_EXTENSION_INSTALL_DIRS:STRING=${Slicer_EXTENSION_INSTALL_DIRS}
-DExternalData_OBJECT_STORES:PATH=${ExternalData_OBJECT_STORES}
${EXTERNAL_PROJECT_OPTIONAL_ARGS}
INSTALL_COMMAND ""
)
ExternalProject_Add(matrix
GIT_REPOSITORY "https://github.com/PX4/Matrix.git"
GIT_TAG f981cea2aebfc9cfd930dce73ba6d4d6681e99c1
UPDATE_COMMAND ""
PATCH_COMMAND ""
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
INSTALL_COMMAND ""
)
ExternalProject_Add(googletest
${EXCLUDE_FROM_ALL_OPT} ${EXCLUDE_FROM_ALL_VALUE}
GIT_REPOSITORY https://github.com/google/googletest.git
GIT_TAG master
PREFIX "${CMAKE_BINARY_DIR}/googletest"
INSTALL_DIR "${CMAKE_BINARY_DIR}/googletest"
CMAKE_CACHE_ARGS
-DCMAKE_BUILD_TYPE:STRING=${GTEST_BUILD_TYPE}
-DCMAKE_C_COMPILER:STRING=${CMAKE_C_COMPILER}
-DCMAKE_CXX_COMPILER:STRING=${CMAKE_CXX_COMPILER}
-DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
-DCMAKE_INSTALL_LIBDIR:PATH=<INSTALL_DIR>/lib
-DCMAKE_CXX_FLAGS:STRING=${GTEST_FLAGS}
-Dgtest_force_shared_crt:BOOL=ON
)
ExternalProject_Add(project_mpich
PREFIX ${CMAKE_INSTALL_PREFIX}
URL ${MPICH_URL}
STAMP_DIR ${MPICH_BINARY_DIR}/stamp
BUILD_IN_SOURCE 1
SOURCE_DIR ${MPICH_SOURCE_DIR}
TMP_DIR ${MPICH_BINARY_DIR}/tmp
INSTALL_DIR ${CMAKE_INSTALL_PREFIX}
CONFIGURE_COMMAND ${MPICH_SOURCE_DIR}/configure --prefix=<INSTALL_DIR> --CC=${CMAKE_C_COMPILER} --CXX=${CMAKE_CXX_COMPILER} ${TRY_TO_PASS_FC}
UPDATE_COMMAND ""
BUILD_COMMAND ${CMAKE_MAKE_PROGRAM}
INSTALL_COMMAND ${CMAKE_MAKE_PROGRAM} install
)
ExternalProject_Add(${project_name}
GIT_REPOSITORY ${target_url}
GIT_TAG ${git_tag}
CMAKE_ARGS "${CMAKE_ARGS};-DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX};${my_cmake_args};"
BINARY_DIR "${target_bin_dir}"
INSTALL_DIR "${PROJECT_BINARY_DIR}/lib"
INSTALL_COMMAND ${install_cmd}
)
EXTERNALPROJECT_ADD(tcmalloc_ext
SOURCE_DIR ${TCMALLOC_SOURCE_DIR}
CMAKE_ARGS ${TCMALLOC_CMAKE_ARGS}
BUILD_BYPRODUCTS
"${CMAKE_BINARY_DIR}/lib/libtcmalloc.so"
"${CMAKE_BINARY_DIR}/lib/libtcmalloc.so.9.16.5"
"${CMAKE_BINARY_DIR}/lib/libtcmalloc_debug.so"
"${CMAKE_BINARY_DIR}/lib/libtcmalloc_debug.so.9.16.5"
)
ExternalProject_Add(
${project_name}_build
SOURCE_DIR ${source_dir}
BINARY_DIR ${build_dir}
CONFIGURE_COMMAND ${CMAKE_COMMAND} -P ${build_dir}/config_mingw.cmake
BUILD_COMMAND ${CMAKE_COMMAND} -P ${build_dir}/build_mingw.cmake
INSTALL_COMMAND "")
ExternalProject_Add(sipXtapi
GIT_REPOSITORY https://github.com/sipXtapi/sipXtapi.git
CONFIGURE_COMMAND ""
BUILD_COMMAND ""
UPDATE_COMMAND ""
INSTALL_COMMAND ""
)
ExternalProject_Add(oneDPL
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/oneDPL
BINARY_DIR ${ONEDPL_BUILD}
CMAKE_ARGS ${CMAKE_ARGS_ONEDPL}
BUILD_COMMAND cmake --build ${ONEDPL_BUILD}
INSTALL_COMMAND cmake --install ${ONEDPL_BUILD} --prefix ${ONEDPL_INSTALL_DIR}
USES_TERMINAL_BUILD 1
COMMENT "Building oneDPL..."
)
EXTERNALPROJECT_ADD(tcmalloc_ext
SOURCE_DIR ${TCMALLOC_SOURCE_DIR}
CMAKE_ARGS ${TCMALLOC_CMAKE_ARGS}
BUILD_BYPRODUCTS
"${CMAKE_BINARY_DIR}/lib/libtcmalloc.so"
"${CMAKE_BINARY_DIR}/lib/libtcmalloc.so.9.16.5"
"${CMAKE_BINARY_DIR}/lib/libtcmalloc_debug.so"
"${CMAKE_BINARY_DIR}/lib/libtcmalloc_debug.so.9.16.5"
)
ExternalProject_Add(zdnn
GIT_REPOSITORY ${ZDNN_GITHUB_URL}
GIT_TAG ${version}
GIT_SUBMODULES ""
PREFIX ${ZDNN_PREFIX}
BUILD_IN_SOURCE ON
CONFIGURE_COMMAND sh -c "autoconf && ./configure"
# We build libzdnn.so so that obj/*.o are compiled with -fPIC
# Then we create libzdnn.a ourselves from these PIC .o since
# we want to embed libzdnn.a into model.so.
#
# Note we use sh to run the command. Otherwise, cmake will
# generate quotes around ${ZDNN_OBJDIR}/*.o due to the *
# in the path, which breaks ar.
#
# Set MAKEFLAGS to remove -j option passed down from the top
# level make which produces a warning about jobserver unavailable.
#
# Run make -q first to skip build if libzdnn.so is already
# up to date.
BUILD_COMMAND sh -c "export MAKEFLAGS=--no-print-directory && \
make -q -C zdnn lib/libzdnn.so && true || \
(MAKEFLAGS=--no-print-directory \
make -j$(nproc) -C zdnn lib/libzdnn.so && \
ar -rc ${ZDNN_LIBDIR}/libzdnn.a ${ZDNN_OBJDIR}/*.o)"
INSTALL_COMMAND ""
)
ExternalProject_Add(gflags
PREFIX ${gflags_PREFIX}
GIT_REPOSITORY "https://github.com/gflags/gflags.git"
GIT_TAG "v2.1.2"
UPDATE_COMMAND ""
INSTALL_DIR ${gflags_INSTALL}
CMAKE_ARGS -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_INSTALL_PREFIX=${gflags_INSTALL}
-DBUILD_SHARED_LIBS=OFF
-DBUILD_STATIC_LIBS=ON
-DBUILD_PACKAGING=OFF
-DBUILD_TESTING=OFF
-DBUILD_NC_TESTS=OFF
-BUILD_CONFIG_TESTS=OFF
-DINSTALL_HEADERS=ON
-DCMAKE_C_FLAGS=${GFLAGS_C_FLAGS}
-DCMAKE_CXX_FLAGS=${GFLAGS_CXX_FLAGS}
LOG_DOWNLOAD 1
LOG_INSTALL 1
)
ExternalProject_Add(${NAME}
PREFIX ${NAME}
SOURCE_DIR "${examples_dir}"
BINARY_DIR ${NAME}
STAMP_DIR ${NAME}/logs
INSTALL_COMMAND "" #Skip
LOG_CONFIGURE 1
CMAKE_CACHE_ARGS "-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}"
"-Dprotobuf_VERBOSE:BOOL=${protobuf_VERBOSE}"
${ARGN}
)
ExternalProject_Add(
ArgParse
GIT_REPOSITORY https://github.com/p-ranav/argparse
GIT_TAG v2.1 # v2.2 contains invalid constexpr usage
SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/ArgParse
USES_TERMINAL_INSTALL 0
UPDATE_DISCONNECTED ${ThirdPartyDisconnected}
CMAKE_ARGS
-DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/External
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}
-DARGPARSE_BUILD_TESTS=OFF
-G ${CMAKE_GENERATOR}
)
ExternalProject_Add(fletch
PREFIX ${TELESCULPTOR_BINARY_DIR}
GIT_REPOSITORY "https://github.com/Kitware/fletch.git"
GIT_TAG 94870a290a06db845e80816863bb6d1b9cb12085
#GIT_SHALLOW 1
SOURCE_DIR ${TELESCULPTOR_EXTERNAL_DIR}/fletch
BINARY_DIR ${TELESCULPTOR_EXTERNAL_DIR}/fletch-build
STAMP_DIR ${TELESCULPTOR_STAMP_DIR}
CMAKE_CACHE_ARGS
-DBUILD_SHARED_LIBS:BOOL=ON
-Dfletch_BUILD_CXX11:BOOL=ON
-Dfletch_BUILD_WITH_PYTHON:BOOL=${TELESCULPTOR_ENABLE_PYTHON}
-Dfletch_ENABLE_Boost:BOOL=${TELESCULPTOR_ENABLE_FLETCH_BOOST}
-DBoost_SELECT_VERSION:STRING=1.65.1
-Dfletch_ENABLE_Caffe:BOOL=OFF
-Dfletch_ENABLE_Caffe_Segnet:BOOL=OFF
-Dfletch_ENABLE_Ceres:BOOL=${TELESCULPTOR_ENABLE_FLETCH_CERES}
-Dfletch_ENABLE_CppDB:BOOL=OFF
-Dfletch_ENABLE_Darknet:BOOL=OFF
-Dfletch_ENABLE_Darknet_OpenCV:BOOL=OFF
-Dfletch_ENABLE_Eigen:BOOL=${TELESCULPTOR_ENABLE_FLETCH_EIGEN}
-Dfletch_ENABLE_FFmpeg:BOOL=${TELESCULPTOR_ENABLE_FLETCH_FFMPEG}
-DFFmpeg_SELECT_VERSION:STRING=3.3.3
-Dfletch_ENABLE_GDAL:BOOL=${TELESCULPTOR_ENABLE_FLETCH_GDAL}
-Dfletch_ENABLE_GEOS:BOOL=${TELESCULPTOR_ENABLE_FLETCH_GEOS}
-Dfletch_ENABLE_GFlags:BOOL=OFF
-Dfletch_ENABLE_GLog:BOOL=${TELESCULPTOR_ENABLE_FLETCH_CERES}
-Dfletch_ENABLE_GTest:BOOL=${TELESCULPTOR_ENABLE_TESTING}
-Dfletch_ENABLE_GeographicLib:BOOL=OFF
-Dfletch_ENABLE_HDF5:BOOL=OFF
-Dfletch_ENABLE_ITK:BOOL=OFF
-Dfletch_ENABLE_LMDB:BOOL=OFF
-Dfletch_ENABLE_LevelDB:BOOL=OFF
-Dfletch_ENABLE_OpenBLAS:BOOL=OFF
-Dfletch_ENABLE_OpenCV:BOOL=${TELESCULPTOR_ENABLE_FLETCH_OPENCV}
-DOpenCV_SELECT_VERSION:STRING=4.5.1
-Dfletch_ENABLE_OpenCV_FFmpeg:BOOL=ON
-Dfletch_ENABLE_OpenCV_contrib:BOOL=ON
-Dfletch_ENABLE_OpenCV_highgui:BOOL=ON
-Dfletch_ENABLE_PDAL:BOOL=${TELESCULPTOR_ENABLE_FLETCH_PDAL}
-Dfletch_ENABLE_PNG:BOOL=${TELESCULPTOR_ENABLE_FLETCH_PNG}
-Dfletch_ENABLE_PROJ:BOOL=${TELESCULPTOR_ENABLE_FLETCH_PROJ}
-Dfletch_ENABLE_PostGIS:BOOL=OFF
-Dfletch_ENABLE_PostgresSQL:BOOL=OFF
-Dfletch_ENABLE_Protobuf:BOOL=OFF
-Dfletch_ENABLE_Qt:BOOL=${TELESCULPTOR_ENABLE_FLETCH_QT}
-DBUILD_Qt_MINIMAL:BOOL=ON
-DQt_SELECT_VERSION:STRING=5.12.8
-Dfletch_ENABLE_Snappy:BOOL=OFF
-Dfletch_ENABLE_SQLite3:BOOL=${TELESCULPTOR_ENABLE_FLETCH_PROJ}
-Dfletch_ENABLE_SuiteSparse:BOOL=${TELESCULPTOR_ENABLE_FLETCH_CERES}
-Dfletch_ENABLE_TinyXML:BOOL=OFF
-Dfletch_ENABLE_VTK:BOOL=${TELESCULPTOR_ENABLE_FLETCH_VTK}
-DVTK_SELECT_VERSION:STRING=9.0
-Dfletch_ENABLE_VXL:BOOL=ON
-Dfletch_ENABLE_YAMLcpp:BOOL=OFF
-Dfletch_ENABLE_ZLib:BOOL=${TELESCULPTOR_ENABLE_FLETCH_ZLIB}
-Dfletch_ENABLE_libgeotiff:BOOL=${TELESCULPTOR_ENABLE_FLETCH_GEOTIFF}
-Dfletch_ENABLE_libjpeg-turbo:BOOL=${TELESCULPTOR_ENABLE_FLETCH_JPEG}
-Dfletch_ENABLE_libjson:BOOL=OFF
-Dfletch_ENABLE_libkml:BOOL=OFF
-Dfletch_ENABLE_libtiff:BOOL=${TELESCULPTOR_ENABLE_FLETCH_TIFF}
-Dfletch_ENABLE_log4cplus:BOOL=ON
-Dfletch_ENABLE_openjpeg:BOOL=OFF
-Dfletch_ENABLE_qtExtensions:BOOL=ON
-Dfletch_ENABLE_pybind11:BOOL=${TELESCULPTOR_ENABLE_PYTHON}
-Dfletch_ENABLE_shapelib:BOOL=OFF
-Dfletch_BUILD_WITH_CUDA:BOOL=${TELESCULPTOR_ENABLE_CUDA}
-DCUDA_TOOLKIT_ROOT_DIR:PATH=${CUDA_TOOLKIT_ROOT_DIR}
-Dfletch_PYTHON_MAJOR_VERSION:STRING=3
-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}
-DCMAKE_CONFIGURATION_TYPES:STRING=${CMAKE_CONFIGURATION_TYPES}
-DCMAKE_CXX_COMPILER:FILEPATH=${CMAKE_CXX_COMPILER}
-DCMAKE_CXX_FLAGS:STRING=${CMAKE_CXX_FLAGS}
-DCMAKE_C_COMPILER:FILEPATH=${CMAKE_C_COMPILER}
-DCMAKE_C_FLAGS:STRING=${CMAKE_C_FLAGS}
${CMAKE_CXX_COMPILER_LAUNCHER_FLAG}
${CMAKE_C_COMPILER_LAUNCHER_FLAG}
-DCMAKE_EXE_LINKER_FLAGS:STRING=${CMAKE_EXE_LINKER_FLAGS}
-DCMAKE_SHARED_LINKER_FLAGS:STRING=${CMAKE_SHARED_LINKER_FLAGS}
-DADDITIONAL_C_FLAGS:STRING=${ADDITIONAL_C_FLAGS}
-DADDITIONAL_CXX_FLAGS:STRING=${ADDITIONAL_CXX_FLAGS}
${FLETCH_ADDITIONAL_OPTIONS}
INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "Skipping install step."
USES_TERMINAL_BUILD 1
)
ExternalProject_Add(third-party-boost
URL ${URL}
##URL_HASH SHA1=230782c7219882d0fab5f1effbe86edb85238bf4 # ignored to support older cmake
SOURCE_DIR ${EXTERN_BUILD_DIR}/src/boost
PREFIX ${EXTERN_BUILD_DIR}/boost
STAMP_DIR ${EXTERN_STAMP_DIR}/boost
INSTALL_DIR ${THIRD_PARTY_ROOT}
BUILD_IN_SOURCE 1
CONFIGURE_COMMAND
./bootstrap.sh
--with-libraries=filesystem
--with-libraries=system
--with-libraries=test
--with-libraries=random
--prefix=<INSTALL_DIR>
BUILD_COMMAND
./b2 install --link=static --variant=release --threading=single --runtime-link=static
INSTALL_COMMAND ""
)
ExternalProject_Add(${NAME}
PREFIX ${NAME}
SOURCE_DIR "${examples_dir}"
BINARY_DIR ${NAME}
STAMP_DIR ${NAME}/logs
INSTALL_COMMAND "" #Skip
LOG_CONFIGURE 1
CMAKE_CACHE_ARGS "-DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE}"
"-Dprotobuf_VERBOSE:BOOL=${protobuf_VERBOSE}"
${ARGN}
)
ExternalProject_Add(bcos_wasm_project
PREFIX ${CMAKE_CURRENT_SOURCE_DIR}/deps
# DOWNLOAD_NO_PROGRESS 1
GIT_REPOSITORY https://${URL_BASE}/FISCO-BCOS/bcos-wasm.git
GIT_TAG 976b899355e1e485948d4d755304bfb8c8c09b87
GIT_SHALLOW false
BUILD_IN_SOURCE 1
CONFIGURE_COMMAND ""
BUILD_COMMAND ${CARGO_COMMAND} build && ${CARGO_COMMAND} build --release #&& ${CMAKE_AR_D} <SOURCE_DIR>/target/release/libbcos_wasm.a ${ZSTD_DUP_OBJECT} && ${CMAKE_AR_D} <SOURCE_DIR>/target/debug/libbcos_wasm.a ${ZSTD_DUP_OBJECT}
INSTALL_COMMAND ""
LOG_DOWNLOAD 1
LOG_CONFIGURE 1
LOG_BUILD 0
LOG_INSTALL 1
BUILD_BYPRODUCTS <SOURCE_DIR>/target/${BCOS_WASM_BUILD_MODE}/libbcos_wasm.a <SOURCE_DIR>/FBWASM.h
)
ExternalProject_Add(
SimpleAssets_project
SOURCE_DIR ${CMAKE_SOURCE_DIR}/src
BINARY_DIR ${CMAKE_BINARY_DIR}/SimpleAssets
CMAKE_ARGS -DCMAKE_TOOLCHAIN_FILE=${EOSIO_CDT_ROOT}/lib/cmake/eosio.cdt/EosioWasmToolchain.cmake
UPDATE_COMMAND ""
PATCH_COMMAND ""
TEST_COMMAND ""
INSTALL_COMMAND ""
BUILD_ALWAYS 1
)
ExternalProject_Add(YAML_CPP_EXTERNAL_PROJECT
PREFIX ${YAML_CPP_ROOT}
GIT_REPOSITORY "https://github.com/jbeder/yaml-cpp.git"
GIT_TAG "master"
UPDATE_COMMAND ""
PATCH_COMMAND ""
BINARY_DIR ${YAML_CPP_ROOT}/src/yaml_cpp
SOURCE_DIR ${YAML_CPP_ROOT}/src/yaml_cpp
INSTALL_DIR ${YAML_CPP_ROOT}/bin
BUILD_ALWAYS False
CMAKE_ARGS -DYAML_CPP_BUILD_TESTS=OFF -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
BUILD_COMMAND make
)
ExternalProject_Add(jemalloc
PREFIX extra/jemalloc
SOURCE_DIR ${SOURCE_DIR}
BINARY_DIR ${BINARY_DIR}
STAMP_DIR ${BINARY_DIR}
CONFIGURE_COMMAND "${SOURCE_DIR}/configure" ${JEMALLOC_CONFIGURE_OPTS}
BUILD_COMMAND ${MAKE_COMMAND} "build_lib_static"
INSTALL_COMMAND ""
)
ExternalProject_Add(gflags
PREFIX ${gflags_PREFIX}
GIT_REPOSITORY "https://github.com/gflags/gflags.git"
GIT_TAG "v2.1.2"
UPDATE_COMMAND ""
INSTALL_DIR ${gflags_INSTALL}
CMAKE_ARGS -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_INSTALL_PREFIX=${gflags_INSTALL}
-DBUILD_SHARED_LIBS=OFF
-DBUILD_STATIC_LIBS=ON
-DBUILD_PACKAGING=OFF
-DBUILD_TESTING=OFF
-DBUILD_NC_TESTS=OFF
-BUILD_CONFIG_TESTS=OFF
-DINSTALL_HEADERS=ON
-DCMAKE_C_FLAGS=${GFLAGS_C_FLAGS}
-DCMAKE_CXX_FLAGS=${GFLAGS_CXX_FLAGS}
LOG_DOWNLOAD 1
LOG_INSTALL 1
)
ExternalProject_add(
googletest
GIT_REPOSITORY https://github.com/google/googletest.git
GIT_TAG d1467f5813f4d363cfd11aba99c4e9fe47a85e99
UPDATE_COMMAND ""
INSTALL_COMMAND ""
LOG_DOWNLOAD ON
LOG_CONFIGURE ON
LOG_BUILD ON
)
ExternalProject_Add(${PACKAGE_NAME}
DEPENDS ${SUPER_BUILD_TARGET_DEPENDENCIES}
SOURCE_DIR ${${PACKAGE_NAME}_DIR}
CMAKE_ARGS
-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
-DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}
-DCMAKE_C_FLAGS=${CMAKE_C_FLAGS}
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
${${PACKAGE_NAME}_CMAKE_MODULE_PATH}
${BASIS_SUPER_BUILD_ARGS}
CMAKE_CHACHE_ARGS
-DCMAKE_PREFIX_PATH:STRING=${CMAKE_PREFIX_PATH_PIPE}
CMAKE_GENERATOR
${CMAKE_GENERATOR}
CMAKE_TOOLSET
${CMAKE_TOOLSET}
BINARY_DIR
${${PACKAGE_NAME}_BINARY_DIR}
INSTALL_DIR
${${PACKAGE_NAME}_CMAKE_INSTALL_PREFIX}
)
ExternalProject_Add(
gflags_src
PREFIX "vendor/gflags"
GIT_REPOSITORY "https://github.com/gflags/gflags.git"
GIT_TAG f8a0efe03aa69b3336d8e228b37d4ccb17324b88
TIMEOUT 10
CMAKE_ARGS
-DCMAKE_INSTALL_PREFIX=${CMAKE_BINARY_DIR}/vendor/gflags
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-DCMAKE_CXX_FLAGS=${CMAKE_CXX_FLAGS}
UPDATE_COMMAND ""
)
ExternalProject_Add(
cubeb_pulse_rs
DOWNLOAD_COMMAND ""
CONFIGURE_COMMAND ""
BUILD_COMMAND cargo build --features=gecko-in-tree "$<IF:$<CONFIG:Release,RelWithDebInfo,MinSizeRel>,--release,>"
BUILD_ALWAYS ON
BINARY_DIR "${PROJECT_SOURCE_DIR}/src/cubeb-pulse-rs"
INSTALL_COMMAND ""
LOG_BUILD ON
LOG_OUTPUT_ON_FAILURE ON)
ExternalProject_Add(
compiler
DOWNLOAD_COMMAND ""
CONFIGURE_COMMAND ""
BUILD_COMMAND ${COMPILER_CARGO_COMMAND}
BINARY_DIR "${CMAKE_SOURCE_DIR}/compiler"
INSTALL_COMMAND ""
BUILD_ALWAYS ON
USE_TERMINAL_BUILD ON
)
ExternalProject_Add(${arg_NAME}
EXCLUDE_FROM_ALL TRUE
SOURCE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/${subdir}"
PREFIX "${CMAKE_CURRENT_BINARY_DIR}/${subdir}-ep"
STAMP_DIR "${CMAKE_CURRENT_BINARY_DIR}/${subdir}-ep/stamp"
BINARY_DIR "${ep_binary_dir}"
INSTALL_DIR "${example_install_path}"
INSTALL_COMMAND ""
${build_command}
TEST_COMMAND ""
DEPENDS ${deps}
CMAKE_CACHE_ARGS ${var_defs}
-DQT_INTERNAL_IS_EXAMPLE_EP_BUILD:BOOL=TRUE
-DCMAKE_INSTALL_PREFIX:STRING=<INSTALL_DIR>
-DQT_INTERNAL_SET_EXAMPLE_INSTALL_DIR_TO_DOT:BOOL=TRUE
${terminal_args}
)
ExternalProject_Add(compiler-rt
PREFIX ${COMPILER_RT_PREFIX}
SOURCE_DIR ${COMPILER_RT_SRC_ROOT}
CMAKE_ARGS -DCMAKE_C_COMPILER=${LLVM_RUNTIME_OUTPUT_INTDIR}/clang
-DCMAKE_CXX_COMPILER=${LLVM_RUNTIME_OUTPUT_INTDIR}/clang++
-DCMAKE_BUILD_TYPE=Release
-DLLVM_CONFIG_PATH=${LLVM_RUNTIME_OUTPUT_INTDIR}/llvm-config
-DCOMPILER_RT_OUTPUT_DIR=${LLVM_LIBRARY_OUTPUT_INTDIR}/clang/${CLANG_VERSION}
-DCOMPILER_RT_EXEC_OUTPUT_DIR=${LLVM_RUNTIME_OUTPUT_INTDIR}
-DCOMPILER_RT_INSTALL_PATH=lib${LLVM_LIBDIR_SUFFIX}/clang/${CLANG_VERSION}
-DCOMPILER_RT_INCLUDE_TESTS=${LLVM_INCLUDE_TESTS}
-DCOMPILER_RT_ENABLE_WERROR=ON
INSTALL_COMMAND ""
STEP_TARGETS configure build
)
ExternalProject_Add(yaml-cpp
GIT_REPOSITORY https://github.com/jbeder/yaml-cpp.git
GIT_TAG "0.8.0"
GIT_SHALLOW true
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${EXTERNAL_INSTALL_LOCATION}
-DYAML_MSVC_SHARED_RT=ON
-DYAML_CPP_BUILD_TESTS=OFF
-DYAML_CPP_BUILD_TOOLS=OFF
-DCMAKE_POLICY_VERSION_MINIMUM=3.14
)
ExternalProject_Add(${SUBPROJECT_NAME}
PREFIX ${SUBPROJECT_NAME}
DOWNLOAD_DIR ${SUBPROJECT_NAME}
STAMP_DIR ${SUBPROJECT_STAMP_PATH}
SOURCE_DIR ${SUBPROJECT_SOURCE_PATH}
BINARY_DIR ${SUBPROJECT_BUILD_PATH}
URL ${BUILD_SUBPROJECT_URL}
LIST_SEPARATOR | # Use the alternate list separator
CMAKE_ARGS
-DCMAKE_BUILD_TYPE=Release
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-DCMAKE_INSTALL_PREFIX:PATH=${SUBPROJECT_INSTALL_PATH}
-DCMAKE_INSTALL_INCLUDEDIR=${CMAKE_INSTALL_INCLUDEDIR}
-DCMAKE_INSTALL_LIBDIR=${CMAKE_INSTALL_LIBDIR}
-DCMAKE_INSTALL_DOCDIR=${CMAKE_INSTALL_DOCDIR}
-DCMAKE_INSTALL_BINDIR=${CMAKE_INSTALL_BINDIR}
-DCMAKE_PREFIX_PATH=${CMAKE_PREFIX_PATH}
${BUILD_SUBPROJECT_BUILD_ARGS}
BUILD_COMMAND ${DEFAULT_BUILD_COMMAND}
BUILD_ALWAYS OFF
)
ExternalProject_Add(${name}
DEPENDS ${ARG_DEPENDS} llvm-config
${name}-clobber
PREFIX ${CMAKE_BINARY_DIR}/projects/${name}
SOURCE_DIR ${source_dir}
STAMP_DIR ${STAMP_DIR}
BINARY_DIR ${BINARY_DIR}
${exclude}
CMAKE_ARGS ${${nameCanon}_CMAKE_ARGS}
${compiler_args}
-DCMAKE_INSTALL_PREFIX=${CMAKE_INSTALL_PREFIX}
-DLLVM_BINARY_DIR=${PROJECT_BINARY_DIR}
-DLLVM_CONFIG_PATH=$<TARGET_FILE:llvm-config>
-DLLVM_ENABLE_WERROR=${LLVM_ENABLE_WERROR}
-DPACKAGE_VERSION=${PACKAGE_VERSION}
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}
${ARG_CMAKE_ARGS}
${PASSTHROUGH_VARIABLES}
INSTALL_COMMAND ""
STEP_TARGETS configure build
BUILD_ALWAYS 1
USES_TERMINAL_CONFIGURE 1
USES_TERMINAL_BUILD 1
USES_TERMINAL_INSTALL 1
)
ExternalProject_Add(
googletest
GIT_REPOSITORY https://github.com/google/googletest.git
GIT_TAG release-1.7.0
PREFIX ${CMAKE_CURRENT_BINARY_DIR}/gtest
CMAKE_ARGS "-DBUILD_SHARED_LIBS=ON"
SOURCE_DIR ${CMAKE_CURRENT_BINARY_DIR}/gtest/googletest/googletest
INSTALL_COMMAND ""
LOG_DOWNLOAD ON
LOG_CONFIGURE ON
LOG_BUILD ON
)