Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 44 additions & 0 deletions builtins/vdt/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
set(ROOT_VDT_VERSION 0.4.6)
set(VDT_FOUND True)
set(VDT_LIBRARIES "${CMAKE_BINARY_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}vdt${CMAKE_SHARED_LIBRARY_SUFFIX}")
ExternalProject_Add(
BUILTIN_VDT
URL ${lcgpackages}/vdt-${ROOT_VDT_VERSION}.tar.gz
URL_HASH SHA256=1820feae446780763ec8bbb60a0dbcf3ae1ee548bdd01415b1fb905fd4f90c54
INSTALL_DIR ${CMAKE_BINARY_DIR}
CMAKE_ARGS
-DCMAKE_POLICY_VERSION_MINIMUM=3.5
-DSSE=OFF # breaks on ARM without this
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-DCMAKE_C_FLAGS=${CMAKE_C_FLAGS}
-DCMAKE_CXX_FLAGS=${ROOT_EXTERNAL_CXX_FLAGS}
-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
LOG_DOWNLOAD 1 LOG_CONFIGURE 1 LOG_BUILD 1 LOG_INSTALL 1 LOG_OUTPUT_ON_FAILURE 1
BUILD_BYPRODUCTS ${VDT_LIBRARIES}
TIMEOUT 600
)
ExternalProject_Add_Step(
BUILTIN_VDT copy2externals
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_BINARY_DIR}/include/vdt ${CMAKE_BINARY_DIR}/ginclude/vdt
DEPENDEES install
)
set(VDT_INCLUDE_DIR ${CMAKE_BINARY_DIR}/ginclude)
set(VDT_INCLUDE_DIRS ${CMAKE_BINARY_DIR}/ginclude)

add_library(VDT::VDT SHARED IMPORTED GLOBAL)
add_dependencies(VDT::VDT BUILTIN_VDT)
set_target_properties(VDT::VDT PROPERTIES IMPORTED_LOCATION ${VDT_LIBRARIES})
target_include_directories(VDT::VDT INTERFACE $<BUILD_INTERFACE:${VDT_INCLUDE_DIR}> $<INSTALL_INTERFACE:include/>)

install(FILES ${VDT_LIBRARIES}
DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries)
install(DIRECTORY ${CMAKE_BINARY_DIR}/include/vdt
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} COMPONENT extra-headers)
set_property(GLOBAL APPEND PROPERTY ROOT_BUILTIN_TARGETS VDT::VDT)

set(VDT_VERSION ${ROOT_VDT_VERSION} PARENT_SCOPE)
set(VDT_FOUND ${VDT_FOUND} PARENT_SCOPE)
set(VDT_LIBRARIES ${VDT_LIBRARIES} PARENT_SCOPE)
set(VDT_INCLUDE_DIRS ${VDT_INCLUDE_DIRS} PARENT_SCOPE)
43 changes: 2 additions & 41 deletions cmake/modules/SearchInstalledSoftware.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -1030,47 +1030,8 @@ if(vdt OR builtin_vdt)
endif()
endif()
if(builtin_vdt)
set(vdt_version 0.4.6)
set(VDT_FOUND True)
set(VDT_LIBRARIES ${CMAKE_BINARY_DIR}/lib/${CMAKE_STATIC_LIBRARY_PREFIX}vdt${CMAKE_SHARED_LIBRARY_SUFFIX})
ExternalProject_Add(
BUILTIN_VDT
URL ${lcgpackages}/vdt-${vdt_version}.tar.gz
URL_HASH SHA256=1820feae446780763ec8bbb60a0dbcf3ae1ee548bdd01415b1fb905fd4f90c54
INSTALL_DIR ${CMAKE_BINARY_DIR}
CMAKE_ARGS
-DCMAKE_POLICY_VERSION_MINIMUM=3.5
-DSSE=OFF # breaks on ARM without this
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
-DCMAKE_C_FLAGS=${CMAKE_C_FLAGS}
-DCMAKE_CXX_FLAGS=${ROOT_EXTERNAL_CXX_FLAGS}
-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
LOG_DOWNLOAD 1 LOG_CONFIGURE 1 LOG_BUILD 1 LOG_INSTALL 1 LOG_OUTPUT_ON_FAILURE 1
BUILD_BYPRODUCTS ${VDT_LIBRARIES}
TIMEOUT 600
)
ExternalProject_Add_Step(
BUILTIN_VDT copy2externals
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_BINARY_DIR}/include/vdt ${CMAKE_BINARY_DIR}/ginclude/vdt
DEPENDEES install
)
set(VDT_INCLUDE_DIR ${CMAKE_BINARY_DIR}/ginclude)
set(VDT_INCLUDE_DIRS ${CMAKE_BINARY_DIR}/ginclude)

add_library(VDT::VDT SHARED IMPORTED GLOBAL)
add_dependencies(VDT::VDT BUILTIN_VDT)
set_target_properties(VDT::VDT PROPERTIES IMPORTED_LOCATION "${VDT_LIBRARIES}")
target_include_directories(VDT::VDT INTERFACE $<BUILD_INTERFACE:${VDT_INCLUDE_DIR}> $<INSTALL_INTERFACE:include/>)

install(FILES ${VDT_LIBRARIES}
DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT libraries)
install(DIRECTORY ${CMAKE_BINARY_DIR}/include/vdt
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} COMPONENT extra-headers)
set_property(GLOBAL APPEND PROPERTY ROOT_BUILTIN_TARGETS VDT::VDT)
else()
BUILD_ROOT_INCLUDE_PATH("${VDT_INCLUDE_DIR}")
list(APPEND ROOT_BUILTINS VDT)
add_subdirectory(builtins/vdt)
endif()
endif()

Expand Down
4 changes: 1 addition & 3 deletions roottest/root/math/vdt/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,10 @@ if (vdt AND NOT ROOT_CLASSIC_BUILD AND NOT "${CMAKE_CXX_COMPILER_ID}" STREQUAL "
set (testname stressVdt)
set(additional_compile_flags "-O3")

include_directories(${VDT_INCLUDE_DIRS})

ROOTTEST_GENERATE_EXECUTABLE(${testname}
${testname}.cxx
COMPILE_FLAGS ${additional_compile_flags}
LIBRARIES Core Hist Gpad MathCore ${VDT_LIBRARIES}
LIBRARIES Core Hist Gpad MathCore VDT::VDT
FIXTURES_SETUP root-math-vdt-stressVdt-fixture)

ROOTTEST_ADD_TEST(${testname}
Expand Down
Loading