# Include directories
include_directories(
  ../../core
  ../../pptrace
  ${CMAKE_BINARY_DIR}/include/
  ./pomp-lib-dummy/
  ../../../extlib/opari2/src/
  ../../../extlib/opari2/src/pomp-lib-dummy/
  ../../../extlib/opari2/build-frontend/
 .
)

# Libraries diretory
link_directories(${CMAKE_BINARY_DIR}/lib/ ${CMAKE_BINARY_DIR}/extlib/lib/)
set(C_FLAGS "${C_FLAGS} -DOPENMP_FOUND ${OpenMP_C_FLAGS}")

# create getfname executable to generate fortran mangling
#add_executable(
#  getfname
#  pomp-lib-dummy/foos.c
#  pomp-lib-dummy/getfname.f
#)

execute_process(COMMAND "gcc -o getfname foos.c getfname.f" WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/pomp-lib-dummy")

# Compile libeztrace_convert_omp
add_library(
  eztrace-convert-omp
  SHARED
  eztrace_convert_gomp.c
)

target_link_libraries(
 eztrace-convert-omp
 gtg
 eztrace-convert-core
)

set_target_properties (eztrace-convert-omp PROPERTIES LINK_FLAGS "-DOPENMP_FOUND")

# Create : libPomp2
add_library(
  pomp2
  SHARED
  pomp-lib-dummy/pomp2_lib.c
  pomp-lib-dummy/pomp2_lib.h
  pomp-lib-dummy/pomp2_region_info.c
  pomp-lib-dummy/pomp2_region_info.h
  pomp-lib-dummy/pomp2_fwrapper.c
  pomp-lib-dummy/pomp2_fwrapper_base.c
  pomp-lib-dummy/pomp2_fwrapper_base.h
)

# Create : libeztrace-omp.so
add_library(
  eztrace-omp
  SHARED
  gomp.c
)

set_target_properties (eztrace-omp PROPERTIES LINK_FLAGS "-DOPENMP_FOUND")

target_link_libraries(
  eztrace-omp
  eztrace
  dl
  gomp
  litl
)

# Create : libeztrace-autostart-pthrad.so
add_library(
  eztrace-autostart-omp
  SHARED
  gomp.c
)

target_link_libraries(
  eztrace-autostart-omp
  eztrace
  dl
  litl
  gomp
)

set_target_properties(eztrace-autostart-omp PROPERTIES COMPILE_FLAGS "-DEZTRACE_AUTOSTART -DOPENMP_FOUND")
set_target_properties(eztrace-autostart-omp PROPERTIES LINK_FLAGS "-rdynamic -Wl,-no-undefined -Wl,-Bsymbolic")
configure_file (eztrace_cc.in ${CMAKE_CURRENT_BINARY_DIR}/bin/eztrace_cc @ONLY)
install(TARGETS pomp2 eztrace-convert-omp eztrace-omp eztrace-autostart-omp LIBRARY DESTINATION lib)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/bin/eztrace_cc DESTINATION ${CMAKE_INSTALL_PREFIX}/bin/)