# # $Id$ # $HeadURL$ # $Author$ # Created by Christian Ehrlicher, SLSE, 2016-08-31 # # Make ${Qt6_Widgets} optional if(QT6_GUI_AVAILABLE AND TARGET Qt6::Widgets) set(Qt6_Widgets ${Qt6_Widgets}) else() set(Qt6_Widgets "") endif() FIND_PACKAGE(GeographicLib) NGL_ADD_LIBRARY2(LtsCoordTrans WS AAR SV HLA SHARED lts_coord_trans.h lts_coord_trans.cpp ) NGL_TARGET_LINK_LIBRARIES(LtsCoordTrans PUBLIC Qt6::Core ) if (GeographicLib_FOUND) NGL_TARGET_LINK_LIBRARIES(LtsCoordTrans PRIVATE GeographicLib::GeographicLib_SHARED ) else() message(STATUS "GeographicLib not found; building LtsCoordTrans without it") endif() NGL_TARGET_INCLUDE_DIRECTORIES(LtsCoordTrans PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_BINARY_DIR} ) SET(ltsCoordWidget_SRCS lts_coord_widget.cpp lts_coord_widget.h lts_coord_widget_p.cpp lts_coord_widget_p.h ) NGL_WRAP_UI(ltsCoordWidget_SRCS lts_coord_widget_mgrs.ui lts_coord_widget_wgs84.ui ) NGL_ADD_LIBRARY2(ltsCoordWidget WS AAR SV SHARED ${ltsCoordWidget_SRCS}) if(QT6_GUI_AVAILABLE) NGL_TARGET_LINK_LIBRARIES(ltsCoordWidget PRIVATE LtsCoordTrans PUBLIC Qt6::Core ${Qt6_Widgets} ) endif() NGL_TARGET_INCLUDE_DIRECTORIES(ltsCoordWidget PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/../ ${CMAKE_CURRENT_SOURCE_DIR}/../LtsUtils/LtsUtilsCore ${CMAKE_CURRENT_BINARY_DIR} ) IF(TARGET LtsCoordTrans) SET(_tools lonlat2mgrs mgrs2lonlat) FOREACH(_tool ${_tools}) NGL_ADD_EXECUTABLE(ALL ${_tool} ${_tool}.cpp) NGL_TARGET_LINK_LIBRARIES(${_tool} Qt6::Core GeographicLib::GeographicLib_SHARED ) NGL_INSTALL_TARGET(${_tool}) ENDFOREACH() ENDIF() IF(BUILD_TESTING AND TARGET ltsCoordWidget) ADD_EXECUTABLE(lts_coord_widget_test lts_coord_widget_test.cpp) TARGET_LINK_LIBRARIES(lts_coord_widget_test ltsCoordWidget LtsCoordTrans ) ENDIF() IF(BUILD_TESTING AND TARGET LtsCoordTrans) ADD_EXECUTABLE(lts_coord_trans_unit_test lts_coord_trans_unit_test.cpp lts_coord_trans_unit_test.h ) TARGET_LINK_LIBRARIES(lts_coord_trans_unit_test LtsCoordTrans Qt6::Test GeographicLib::GeographicLib_SHARED ) ADD_TEST(NAME lts_coord_trans_unit_test COMMAND $) ENDIF()