diff --git a/CMakeLists.txt b/CMakeLists.txt index 97b9e3b0ec634458b5f8646d7c39a09ed938a3b5..b4b01bdf2af890a977bafc39a94399f84ae38b93 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -67,6 +67,9 @@ opt(PETSC4PY "Enable petsc4py wrappers for petsc matrices" ON) opt(OCC "Enable Open CASCADE geometrical models" ${DEFAULT}) opt(ONELAB "Enable ONELAB solver interface" ${DEFAULT}) opt(ONELAB2 "Enable experimental ONELAB-Cloud solver interface" OFF) +if(ENABLE_ONELAB2) + opt(UDT "Enable UDT library for ONELAB-Cloud" ON) +endif(ENABLE_ONELAB2) opt(ONELAB_METAMODEL "Enable ONELAB metamodels (experimental)" ${DEFAULT}) opt(OPENMP "Enable OpenMP (experimental)" OFF) opt(OPTHOM "Enable high-order mesh optimization tools" ${DEFAULT}) @@ -513,6 +516,26 @@ if(ENABLE_NATIVE_FILE_CHOOSER) set_config_option(HAVE_NATIVE_FILE_CHOOSER "NativeFileChooser") endif(ENABLE_NATIVE_FILE_CHOOSER) +if(ENABLE_ONELAB2) + if(ENABLE_UDT) + set_config_option(HAVE_UDT "UDT") + find_package(Threads REQUIRED) + find_path(UDT_INCLUDE_DIR NAMES udt.h PATH_SUFFIXES udt/) + find_library(UDT_LIBRARY NAMES udt) + if(UDT_INCLUDE_DIR AND UDT_LIBRARY AND CMAKE_THREAD_LIBS_INIT) + list(APPEND EXTERNAL_LIBRARIES ${CMAKE_THREAD_LIBS_INIT}) + list(APPEND EXTERNAL_LIBRARIES ${UDT_LIBRARY}) + list(APPEND EXTERNAL_INCLUDES ${UDT_INCLUDE_DIR}) + else(UDT_INCLUDE_DIR AND UDT_LIBRARY AND CMAKE_THREAD_LIBS_INIT) + message(FATAL_ERROR "Unable to find UDT library") + endif(UDT_INCLUDE_DIR AND UDT_LIBRARY AND CMAKE_THREAD_LIBS_INIT) + endif(ENABLE_UDT) + set_config_option(HAVE_ONELAB2 "ONELAB2") + set(GMSH_SRC ${GMSH_SRC};Fltk/onelab2Group.cpp;Fltk/onelab2Group.h) + add_subdirectory(contrib/onelab2) + include_directories(contrib/onelab2) +endif(ENABLE_ONELAB2) + if(ENABLE_ONELAB) set_config_option(HAVE_ONELAB "ONELAB") if(ENABLE_ONELAB_METAMODEL) @@ -524,10 +547,6 @@ if(ENABLE_ONELAB) DESTINATION ${CMAKE_CURRENT_BINARY_DIR}) endif(ENABLE_ONELAB) -if(ENABLE_ONELAB2) - set_config_option(HAVE_ONELAB2 "ONELAB2") -endif(ENABLE_ONELAB2) - if(ENABLE_BUILD_IOS) find_file(CMAKE_TOOLCHAIN_FILE "ios.cmake") if(NOT CMAKE_TOOLCHAIN_FILE)