aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/sbp
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/sbp')
-rw-r--r--vcpkg/ports/sbp/portfile.cmake45
-rw-r--r--vcpkg/ports/sbp/vcpkg.json19
-rw-r--r--vcpkg/ports/sbp/win32-install-fix.patch27
3 files changed, 91 insertions, 0 deletions
diff --git a/vcpkg/ports/sbp/portfile.cmake b/vcpkg/ports/sbp/portfile.cmake
new file mode 100644
index 0000000..a02667f
--- /dev/null
+++ b/vcpkg/ports/sbp/portfile.cmake
@@ -0,0 +1,45 @@
+# Windows shared libraries are not supported yet
+# See https://github.com/swift-nav/libsbp/issues/1062
+if(VCPKG_TARGET_IS_WINDOWS)
+ vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
+endif()
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO swift-nav/libsbp
+ REF "v${VERSION}"
+ SHA512 2fb5daead688501280fae24fda62e58a4769f04006554faaef91cb1b8340adb9f1cc5e57e7ad13f8ca24bb538f1f3ec2d228cd17bba0c246a57075c671866ccd
+ HEAD_REF master
+)
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH CMAKE_EXTRA_MODS
+ REPO swift-nav/cmake
+ REF 65c9a396568701c382ca5a5515e6bb598f7d61b2
+ SHA512 e8b1b1e48c7f6d71b156668ba6e0c0898d6a9b6c9e86bc63cb2b5a4cffa844a0a9a175699db8417bcb70bc4c6b278d32327f5c709e7db7b69ab2a81e7c398b23
+ HEAD_REF master
+)
+
+# Copy cmake files to expected location
+file(INSTALL "${CMAKE_EXTRA_MODS}/CCache.cmake" DESTINATION "${SOURCE_PATH}/c/cmake/common")
+file(INSTALL "${CMAKE_EXTRA_MODS}/SwiftCmakeOptions.cmake" DESTINATION "${SOURCE_PATH}/c/cmake/common")
+file(INSTALL "${CMAKE_EXTRA_MODS}/SwiftTargets.cmake" DESTINATION "${SOURCE_PATH}/c/cmake/common")
+file(INSTALL "${CMAKE_EXTRA_MODS}/ListTargets.cmake" DESTINATION "${SOURCE_PATH}/c/cmake/common")
+file(INSTALL "${CMAKE_EXTRA_MODS}/CompileOptions.cmake" DESTINATION "${SOURCE_PATH}/c/cmake/common")
+file(INSTALL "${CMAKE_EXTRA_MODS}/LanguageStandards.cmake" DESTINATION "${SOURCE_PATH}/c/cmake/common")
+file(INSTALL "${CMAKE_EXTRA_MODS}/ClangFormat.cmake" DESTINATION "${SOURCE_PATH}/c/cmake/common")
+file(INSTALL "${CMAKE_EXTRA_MODS}/ClangTidy.cmake" DESTINATION "${SOURCE_PATH}/c/cmake/common")
+file(INSTALL "${CMAKE_EXTRA_MODS}/CodeCoverage.cmake" DESTINATION "${SOURCE_PATH}/c/cmake/common")
+file(INSTALL "${CMAKE_EXTRA_MODS}/TestTargets.cmake" DESTINATION "${SOURCE_PATH}/c/cmake/common")
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}/c"
+ OPTIONS
+ -Dlibsbp_ENABLE_TESTS=OFF
+ -Dlibsbp_ENABLE_DOCS=OFF
+)
+
+vcpkg_cmake_install()
+vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
diff --git a/vcpkg/ports/sbp/vcpkg.json b/vcpkg/ports/sbp/vcpkg.json
new file mode 100644
index 0000000..4d21590
--- /dev/null
+++ b/vcpkg/ports/sbp/vcpkg.json
@@ -0,0 +1,19 @@
+{
+ "name": "sbp",
+ "version-semver": "6.3.1",
+ "description": "Swift Navigation Binary Protocol (SBP) is a binary protocol for communicating GNSS data used by Piksi devices.",
+ "homepage": "https://github.com/swift-nav/libsbp",
+ "documentation": "https://swift-nav.github.io/libsbp",
+ "license": "MIT",
+ "supports": "!uwp",
+ "dependencies": [
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ]
+}
diff --git a/vcpkg/ports/sbp/win32-install-fix.patch b/vcpkg/ports/sbp/win32-install-fix.patch
new file mode 100644
index 0000000..5c880d3
--- /dev/null
+++ b/vcpkg/ports/sbp/win32-install-fix.patch
@@ -0,0 +1,27 @@
+commit 6023d12ca2df861b134b345151d2463a963e50c4
+Author: Rodrigo Reichert <rodrigo.reichert@swift-nav.com>
+Date: Wed Aug 4 13:24:43 2021 +1000
+
+ ESD-2166 Fix windows install dll directory (#1061)
+
+diff --git a/c/src/CMakeLists.txt b/c/src/CMakeLists.txt
+index b00fa523..1019683f 100644
+--- a/c/src/CMakeLists.txt
++++ b/c/src/CMakeLists.txt
+@@ -27,9 +27,13 @@ if (MINGW)
+ endif()
+ endif()
+
+-install(TARGETS sbp
+- EXPORT sbp-export
+- DESTINATION ${CMAKE_INSTALL_FULL_LIBDIR})
++install(
++ TARGETS sbp
++ EXPORT sbp-export
++ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
++ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
++ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
++)
+ install(DIRECTORY "${PROJECT_SOURCE_DIR}/include/libsbp/" DESTINATION "${CMAKE_INSTALL_FULL_INCLUDEDIR}/libsbp")
+
+ export(EXPORT sbp-export