CMakeLists.txt 1.22 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
find_package(Git QUIET)
if (GIT_FOUND AND EXISTS "${PROJECT_SOURCE_DIR}/.git")
# Update submodules as needed
  option(GIT_SUBMODULE "Check submodules during build" ON)
  if (GIT_SUBMODULE)
    execute_process(COMMAND ${GIT_EXECUTABLE} submodule update --init --recursive
                    WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
                    RESULT_VARIABLE GIT_SUBMOD_RESULT)
    if(NOT GIT_SUBMOD_RESULT EQUAL "0")
      message(FATAL_ERROR "git submodule update --init failed with ${GIT_SUBMOD_RESULT}, please checkout submodules")
    endif()
  endif()
endif()

15
if (NOT EXISTS "${PROJECT_SOURCE_DIR}/libs/fmt/CMakeLists.txt")
16
17
18
19
  message(FATAL_ERROR "The submodules were not downloaded! GIT_SUBMODULE was turned off or failed. Please update submodules and try again.")
endif()


20
dune_library_add_sources(fmt SOURCES
21
  fmt/src/format.cc
22
23
24
25
  fmt/src/posix.cc
)

target_include_directories(fmt PUBLIC
26
  $<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/libs/fmt/include>)
27
28
29
30
31
32
33
34
35
36
37

install(FILES
  fmt/include/fmt/core.h
  fmt/include/fmt/format-inl.h
  fmt/include/fmt/format.h
  fmt/include/fmt/ostream.h
  fmt/include/fmt/posix.h
  fmt/include/fmt/printf.h
  fmt/include/fmt/ranges.h
  fmt/include/fmt/time.h
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/fmt)