[mp-units] add new port (#13416)

* [mp-units] add new port

* fix config
This commit is contained in:
Alexander Neumann 2020-09-09 21:10:56 +02:00 committed by GitHub
parent 468e82de6e
commit aa042ad0fb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 73 additions and 0 deletions

5
ports/mp-units/CONTROL Normal file
View File

@ -0,0 +1,5 @@
Source: mp-units
Version: 0.6.0
Homepage: https://github.com/mpusz/units
Description: mp-units - A Units Library for C++
Build-Depends: fmt, ms-gsl

View File

@ -0,0 +1,35 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index b18a30a96..d89248aa1 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -40,14 +40,24 @@ conan_init(cmake)
add_subdirectory(src)
# set restrictive compilation warnings
-set_warnings(mp-units)
+# set_warnings(mp-units)
# add unit tests
-enable_testing()
-add_subdirectory(test)
+option(BUILD_TESTING "Build tests" OFF)
+if(BUILD_TESTING)
+ set_warnings(mp-units)
+ enable_testing()
+ add_subdirectory(test)
+endif()
# add usage example
-add_subdirectory(example)
-
+option(BUILD_EXAMPLES "Build usage examples" OFF)
+if(BUILD_EXAMPLES)
+ add_subdirectory(example)
+endif()
# generate project documentation
-add_subdirectory(docs)
+
+option(BUILD_DOCS "Generate docs" OFF)
+if(BUILD_DOCS)
+ add_subdirectory(docs)
+endif()

View File

@ -0,0 +1,9 @@
diff --git a/cmake/common/simple-config.cmake.in b/cmake/common/simple-config.cmake.in
index f40ebfa88..d521e0ba8 100644
--- a/cmake/common/simple-config.cmake.in
+++ b/cmake/common/simple-config.cmake.in
@@ -1 +1,4 @@
+include(CMakeFindDependencyMacro)
+find_dependency(fmt CONFIG)
+find_dependency(Microsoft.GSL CONFIG)
include("${CMAKE_CURRENT_LIST_DIR}/@PROJECT_NAME@-targets.cmake")

View File

@ -0,0 +1,24 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO mpusz/units
REF 33ad51311b835efb7f7767473f971c02a3140073
SHA512 18c9a4bb1812d7ab59e86d3eef5f62aa760c8f78eac81086bd3b25f7e2d359f2fba71b0298cf91ecb31dbe13846f2e5ce75133b0db534020102b788dd1c1a1da
PATCHES
cmake.patch
config.patch
)
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
)
vcpkg_install_cmake()
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/${PORT})
# Handle copyright/readme/package files
file(INSTALL ${SOURCE_PATH}/LICENSE.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
file(INSTALL ${SOURCE_PATH}/README.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT})
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug"
"${CURRENT_PACKAGES_DIR}/lib") # Header only