set(CMAKE_INCLUDE_CURRENT_DIR ON)

file(GLOB_RECURSE SOURCES src/*.cpp src/*.h)
file(GLOB_RECURSE HEADERS include/*.h)

add_library(Geodetics SHARED ${SOURCES} ${HEADERS})

target_include_directories(Geodetics
  PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/include
  PRIVATE ${GDAL_ROOT}
)

target_compile_definitions(Geodetics PRIVATE GEODETICS_LIB)

target_link_directories(Geodetics PRIVATE ${GDAL_ROOT}/lib/${BUILD_TYPE})

target_link_libraries(Geodetics PRIVATE ${GDAL_LIB_NAME}.lib)


add_custom_command(TARGET Geodetics POST_BUILD
  COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_FILE:Geodetics> ${CLIENTS_BIN_DIR}
  #COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_PDB_FILE:Geodetics> ${CLIENTS_BIN_DIR}
  COMMAND ${CMAKE_COMMAND} -E copy $<TARGET_LINKER_FILE:Geodetics> ${CLIENTS_LIB_DIR}
)


install(TARGETS Geodetics RUNTIME DESTINATION "Geodetics/${CMAKE_INSTALL_BINDIR}")
install(FILES ${GDAL_ROOT}/lib/${BUILD_TYPE}/gdal17.dll DESTINATION "Geodetics/${CMAKE_INSTALL_BINDIR}")
install(FILES ${GDAL_ROOT}/lib/${BUILD_TYPE}/proj.dll DESTINATION "Geodetics/${CMAKE_INSTALL_BINDIR}")
install(TARGETS Geodetics LIBRARY DESTINATION "Geodetics/${CMAKE_INSTALL_LIBDIR}")
install(DIRECTORY include DESTINATION "Geodetics")
