
# add the library that runs 
add_library(Gsmo cma_gmb.cc gmb_clocl.cc gmb_clstr.cc gmb_cols.cc gmb_debug.cc 
gmb_operate.cc gmb_p2p.cc gmb_put.cc gmb_smpl.cc gmb_sticky.cc gmb_subaln.cc
gmb_typ.cc gpr_typ.cc gsm_blks.cc gsm_init.cc gsm_plus.cc gsm_run.cc
gsm_smpl.cc gsm_srch.cc gsm_typ.cc jlh_hmm.cc jlh_p2p.cc jlh_put.cc
jlh_typ.cc lgm_typ.cc ndl_debug.cc ndl_hmm.cc ndl_p2p.cc ndl_smpl.cc
ndl_typ.cc ppg_typ.cc ssx_dmp.cc ssx_init.cc ssx_scores.cc ssx_typ.cc
str_typ.cc subaln_gmb.cc )

find_package(OpenMP)
#find_package(OpenMP REQUIRED)
#if(OPENMP_FOUND)
#    set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${OpenMP_C_FLAGS}")
#    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${OpenMP_CXX_FLAGS}")
#    set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS}
#         ${OpenMP_EXE_LINKER_FLAGS}")
#    find_package(OpenMP)
#endif()

target_link_libraries(Gsmo PRIVATE OpenMP::OpenMP_CXX Afn Gsq Blst Alex Aln Tools )

target_compile_options(Gsmo PRIVATE ${OpenMP_CXX_FLAGS})

# state that anybody linking to us needs to include the current source dir
# to find MathFunctions.h, while we don't.
include_directories("${PROJECT_SOURCE_DIR}/lib/libafn" 
	"${PROJECT_SOURCE_DIR}/lib/libblst"
	"${PROJECT_SOURCE_DIR}/lib/libalex"
	"${PROJECT_SOURCE_DIR}/lib/libaln"
	"${PROJECT_SOURCE_DIR}/lib/libtools"
	"${PROJECT_SOURCE_DIR}/lib/libgsmo"
	"${PROJECT_SOURCE_DIR}/lib/include") 

#target_include_directories(Gsmo
#                           INTERFACE
#                            $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
#                            $<INSTALL_INTERFACE:include>
#                           )

#target_compile_definitions(Gsmo PRIVATE ${OpenMP_CXX_FLAGS} )

# setup the version numbering
set_property(TARGET Gsmo PROPERTY VERSION "1.0.0")
set_property(TARGET Gsmo PROPERTY SOVERSION "1")

install(TARGETS Gsmo
        DESTINATION lib
        EXPORT GsmoTargets)

