Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions c/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}/cmake" "${CMAKE_CURRENT_LIST_DI
option(I_KNOW_WHAT_I_AM_DOING_AND_HOW_DANGEROUS_IT_IS__LIBSBP_DISABLE_CRC_VALIDATION "Disable all CRC validation in Libsbp" OFF)
set(SWIFT_CXX_STANDARD 17 CACHE STRING "Default C++ version for all swift targets")

include(CMakePackageConfigHelpers)
include(GNUInstallDirs)
include(CCache)
include(SwiftCmakeOptions)
Expand Down
17 changes: 17 additions & 0 deletions c/src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -78,9 +78,26 @@ install(
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
)
install(DIRECTORY ${PROJECT_SOURCE_DIR}/include/libsbp/ DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/libsbp)

export(EXPORT sbp-export
NAMESPACE swiftnav::
FILE ${PROJECT_BINARY_DIR}/LibSbpImport.cmake)

install(
EXPORT sbp-export
DESTINATION ${CMAKE_INSTALL_DATADIR}/libsbp/cmake
NAMESPACE swiftnav::
)

configure_package_config_file(
${CMAKE_CURRENT_SOURCE_DIR}/libsbpConfig.cmake.in
libsbpConfig.cmake
INSTALL_DESTINATION ${CMAKE_INSTALL_DATADIR}
)
install(
FILES "${CMAKE_CURRENT_BINARY_DIR}/libsbpConfig.cmake"
DESTINATION ${CMAKE_INSTALL_DATADIR}/libsbp/cmake
)
3 changes: 3 additions & 0 deletions c/src/libsbpConfig.cmake.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
@PACKAGE_INIT@

include("${CMAKE_CURRENT_LIST_DIR}/sbp-export.cmake")
16 changes: 3 additions & 13 deletions c/test_package/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,24 +7,14 @@ if (NOT EXISTS ${SBP_FILE} OR NOT IS_ABSOLUTE ${SBP_FILE})
message(FATAL_ERROR "SBP_FILE variable (\"${SBP_FILE}\") needs to point to an absolute valid SBP file")
endif()

find_library(SBP_LIBRARY sbp)
if (NOT SBP_LIBRARY)
message(FATAL_ERROR "SBP library was not found")
endif()

find_path(SBP_INCLUDE_DIRS libsbp)
if (NOT SBP_INCLUDE_DIRS)
message(FATAL_ERROR "SBP header folder was not found")
endif()
find_package(libsbp CONFIG REQUIRED)

add_executable(libsbp_c api.c)
target_compile_features(libsbp_c PRIVATE c_std_11)
target_link_libraries(libsbp_c PRIVATE ${SBP_LIBRARY})
target_include_directories(libsbp_c PRIVATE ${SBP_INCLUDE_DIRS})
target_link_libraries(libsbp_c PRIVATE swiftnav::sbp)
target_compile_definitions(libsbp_c PRIVATE SBP_FILE="${SBP_FILE}")

add_executable(libsbp_cxx api.cc)
target_compile_features(libsbp_cxx PRIVATE cxx_std_14)
target_link_libraries(libsbp_cxx PRIVATE ${SBP_LIBRARY})
target_include_directories(libsbp_cxx PRIVATE ${SBP_INCLUDE_DIRS})
target_link_libraries(libsbp_cxx PRIVATE swiftnav::sbp)
target_compile_definitions(libsbp_cxx PRIVATE SBP_FILE="${SBP_FILE}")
Loading