set(HEADERS_common
    ${CMAKE_CURRENT_SOURCE_DIR}/defines.h
    ${CMAKE_CURRENT_SOURCE_DIR}/dolfinx_common.h
    ${CMAKE_CURRENT_SOURCE_DIR}/dolfinx_doc.h
    ${CMAKE_CURRENT_SOURCE_DIR}/IndexMap.h
    ${CMAKE_CURRENT_SOURCE_DIR}/log.h
    ${CMAKE_CURRENT_SOURCE_DIR}/sort.h
    ${CMAKE_CURRENT_SOURCE_DIR}/types.h
    ${CMAKE_CURRENT_SOURCE_DIR}/math.h
    ${CMAKE_CURRENT_SOURCE_DIR}/MPI.h
    ${CMAKE_CURRENT_SOURCE_DIR}/Scatterer.h
    ${CMAKE_CURRENT_SOURCE_DIR}/Table.h
    ${CMAKE_CURRENT_SOURCE_DIR}/Timer.h
    ${CMAKE_CURRENT_SOURCE_DIR}/TimeLogger.h
    ${CMAKE_CURRENT_SOURCE_DIR}/TimeLogManager.h
    ${CMAKE_CURRENT_SOURCE_DIR}/timing.h
    ${CMAKE_CURRENT_SOURCE_DIR}/utils.h
    PARENT_SCOPE
)

target_sources(
  dolfinx
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/defines.cpp
          ${CMAKE_CURRENT_SOURCE_DIR}/IndexMap.cpp
          ${CMAKE_CURRENT_SOURCE_DIR}/log.cpp
          ${CMAKE_CURRENT_SOURCE_DIR}/MPI.cpp
          ${CMAKE_CURRENT_SOURCE_DIR}/Table.cpp
          ${CMAKE_CURRENT_SOURCE_DIR}/Timer.cpp
          ${CMAKE_CURRENT_SOURCE_DIR}/TimeLogger.cpp
          ${CMAKE_CURRENT_SOURCE_DIR}/TimeLogManager.cpp
          ${CMAKE_CURRENT_SOURCE_DIR}/timing.cpp
)
