cmake_minimum_required (VERSION 3.19)
include(CheckSourceCompiles)
check_source_compiles(C
"
#include <omp.h>
#include <omp-tools.h>
void foo(ompt_work_t w){
  switch (w) {
      case ompt_work_loop_static:
      case ompt_work_loop_dynamic:
      case ompt_work_loop_guided:
      case ompt_work_loop_other:
    break;
  }
}
"
HAVE_OMPT_WORK_LOOP_SCHEDULES)

add_library(eztrace-ompt SHARED
  openmp.c
)

target_link_libraries(eztrace-ompt
  PRIVATE
    atomic
    dl
    eztrace-core
    eztrace-lib
    eztrace-instrumentation
    ${OMPT_LIBRARY}
    )

target_include_directories(eztrace-ompt
  PRIVATE
  ${CMAKE_SOURCE_DIR}/src/core/include/eztrace-core/
  ${OMPT_INCLUDE_PATH}
)

target_compile_options(eztrace-ompt
  PUBLIC
  -fopenmp
)

target_link_options(eztrace-ompt
  PUBLIC
  -fopenmp
)

#---------------------------------------------

install(TARGETS eztrace-ompt
  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
  INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
)
