aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/nlohmann-fifo-map
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/nlohmann-fifo-map')
-rw-r--r--vcpkg/ports/nlohmann-fifo-map/CMakeLists.txt30
-rw-r--r--vcpkg/ports/nlohmann-fifo-map/portfile.cmake26
-rw-r--r--vcpkg/ports/nlohmann-fifo-map/vcpkg.json16
3 files changed, 72 insertions, 0 deletions
diff --git a/vcpkg/ports/nlohmann-fifo-map/CMakeLists.txt b/vcpkg/ports/nlohmann-fifo-map/CMakeLists.txt
new file mode 100644
index 0000000..3450e51
--- /dev/null
+++ b/vcpkg/ports/nlohmann-fifo-map/CMakeLists.txt
@@ -0,0 +1,30 @@
+cmake_minimum_required(VERSION 3.1)
+project(nlohmann-fifo-map LANGUAGES CXX)
+
+include(GNUInstallDirs)
+
+set(NLOHMANN_FIFO_MAP_TARGET_NAME ${PROJECT_NAME})
+set(NLOHMANN_FIFO_MAP_INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_INCLUDEDIR}/nlohmann")
+set(NLOHMANN_FIFO_MAP_CONFIG_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/share/nlohmann-fifo-map")
+set(NLOHMANN_FIFO_MAP_CONFIG_EXPORT_NAME "${PROJECT_NAME}-config")
+set(NLOHMANN_FIFO_MAP_INCLUDE_BUILD_DIR "${CMAKE_SOURCE_DIR}/src/")
+
+add_library(${NLOHMANN_FIFO_MAP_TARGET_NAME} INTERFACE)
+add_library(${PROJECT_NAME}::${NLOHMANN_FIFO_MAP_TARGET_NAME} ALIAS ${NLOHMANN_FIFO_MAP_TARGET_NAME})
+
+install(
+ DIRECTORY ${NLOHMANN_FIFO_MAP_INCLUDE_BUILD_DIR}
+ DESTINATION ${NLOHMANN_FIFO_MAP_INCLUDE_INSTALL_DIR}
+)
+
+install(
+ TARGETS ${NLOHMANN_FIFO_MAP_TARGET_NAME} EXPORT ${NLOHMANN_FIFO_MAP_CONFIG_EXPORT_NAME}
+ INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
+)
+
+install(
+ EXPORT ${NLOHMANN_FIFO_MAP_CONFIG_EXPORT_NAME}
+ DESTINATION ${NLOHMANN_FIFO_MAP_CONFIG_INSTALL_DIR}
+ NAMESPACE ${PROJECT_NAME}::
+)
+
diff --git a/vcpkg/ports/nlohmann-fifo-map/portfile.cmake b/vcpkg/ports/nlohmann-fifo-map/portfile.cmake
new file mode 100644
index 0000000..eb9e588
--- /dev/null
+++ b/vcpkg/ports/nlohmann-fifo-map/portfile.cmake
@@ -0,0 +1,26 @@
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO nlohmann/fifo_map
+ REF v${VERSION}
+ SHA512 4f99e6dac74b3c390e9a03b9fea8521d4facd244f85f37206ebd8aa244295c21c9c145e22f80ad45d88325fd1b440d44bd654c829074e0c20b5ed8a62b88c9a7
+ HEAD_REF master
+)
+
+#make sure we don't use any integrated pre-built library nor any unnecessary CMake module
+file(REMOVE_RECURSE "${SOURCE_PATH}/test")
+file(REMOVE "${SOURCE_PATH}/CMakeLists.txt")
+
+file(COPY "${CURRENT_PORT_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}")
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+)
+
+vcpkg_cmake_install()
+vcpkg_cmake_config_fixup()
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug")
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/lib")
+
+# Handle copyright
+file(INSTALL "${SOURCE_PATH}/LICENSE.MIT" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
diff --git a/vcpkg/ports/nlohmann-fifo-map/vcpkg.json b/vcpkg/ports/nlohmann-fifo-map/vcpkg.json
new file mode 100644
index 0000000..7b68ad3
--- /dev/null
+++ b/vcpkg/ports/nlohmann-fifo-map/vcpkg.json
@@ -0,0 +1,16 @@
+{
+ "name": "nlohmann-fifo-map",
+ "version": "1.0.0",
+ "description": "a FIFO-ordered associative container for C++",
+ "homepage": "https://github.com/nlohmann/fifo_map",
+ "dependencies": [
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ]
+}