aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJack·Boos·Yu <47264268+JackBoosY@users.noreply.github.com>2021-07-17 03:00:42 +0800
committerGitHub <noreply@github.com>2021-07-16 12:00:42 -0700
commit0bf44b144bb767f48685ac84e5bfd76f05db958f (patch)
tree272931e40406a98a5f9d63a608573b70d41184ee
parent5236efaa9d3bfe1f5d73ebc7d3404ac2b2bf9cef (diff)
downloadvcpkg-0bf44b144bb767f48685ac84e5bfd76f05db958f.tar.gz
vcpkg-0bf44b144bb767f48685ac84e5bfd76f05db958f.zip
[nuklear] Export unofficial target, add features (#18881)
* [nuklear] Export unofficial target, add features. * update version stuff * Update ports/nuklear/portfile.cmake * Update versions/n-/nuklear.json * Update ports/nuklear/CMakeLists.txt * Update ports/nuklear/CMakeLists.txt * Update ports/nuklear/CMakeLists.txt * Update versions/n-/nuklear.json
-rw-r--r--ports/nuklear/CMakeLists.txt34
-rw-r--r--ports/nuklear/CONTROL4
-rw-r--r--ports/nuklear/portfile.cmake23
-rw-r--r--ports/nuklear/vcpkg.json25
-rw-r--r--versions/baseline.json2
-rw-r--r--versions/n-/nuklear.json5
6 files changed, 86 insertions, 7 deletions
diff --git a/ports/nuklear/CMakeLists.txt b/ports/nuklear/CMakeLists.txt
new file mode 100644
index 000000000..28009f466
--- /dev/null
+++ b/ports/nuklear/CMakeLists.txt
@@ -0,0 +1,34 @@
+cmake_minimum_required(VERSION 3.16)
+project(Nuklear LANGUAGES C CXX)
+
+option(INSTALL_EXAMPLE "Install the example code" OFF)
+option(INSTALL_DEMO "Install the demo code" OFF)
+
+add_library(nuklear INTERFACE)
+
+target_include_directories(nuklear INTERFACE $<INSTALL_INTERFACE:include/nuklear>)
+target_compile_definitions(nuklear INTERFACE NK_IMPLEMENTATION)
+
+# Installation
+install(
+ TARGETS nuklear
+ EXPORT unofficial-nuklear
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib
+)
+
+install(FILES "${CMAKE_CURRENT_LIST_DIR}/nuklear.h" DESTINATION "include/nuklear")
+
+
+install(EXPORT unofficial-nuklear FILE unofficial-nuklear-config.cmake DESTINATION share/unofficial-nuklear)
+
+if (INSTALL_EXAMPLE)
+ install(DIRECTORY "${CMAKE_CURRENT_LIST_DIR}/example" DESTINATION share/nuklear)
+
+endif()
+
+if (INSTALL_DEMO)
+ install(DIRECTORY "${CMAKE_CURRENT_LIST_DIR}/demo" DESTINATION share/nuklear)
+
+endif()
diff --git a/ports/nuklear/CONTROL b/ports/nuklear/CONTROL
deleted file mode 100644
index 7b641a2a0..000000000
--- a/ports/nuklear/CONTROL
+++ /dev/null
@@ -1,4 +0,0 @@
-Source: nuklear
-Version: 2021-03-18
-Homepage: https://github.com/Immediate-Mode-UI/Nuklear
-Description: This is a minimal state immediate mode graphical user interface toolkit written in ANSI C and licensed under public domain
diff --git a/ports/nuklear/portfile.cmake b/ports/nuklear/portfile.cmake
index 53dd4c419..e13332986 100644
--- a/ports/nuklear/portfile.cmake
+++ b/ports/nuklear/portfile.cmake
@@ -5,6 +5,25 @@ vcpkg_from_github(
SHA512 ce064dff721111749d4056717879f42d3e24bb94655dd2b04c137eb7391d2c90d0b1b95155912c100b537f74fd150aedc48e0ac85eb72963c66e35ac81048323
HEAD_REF master
)
-file(INSTALL ${SOURCE_PATH}/nuklear.h DESTINATION ${CURRENT_PACKAGES_DIR}/include)
-file(INSTALL ${SOURCE_PATH}/Readme.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/nuklear RENAME copyright)
+
+file(COPY "${CURRENT_PORT_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}")
+
+vcpkg_check_features(OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ FEATURES
+ example INSTALL_EXAMPLE
+ demo INSTALL_DEMO
+)
+
+vcpkg_cmake_configure(
+ SOURCE_PATH ${SOURCE_PATH}
+ OPTIONS ${FEATURE_OPTIONS}
+)
+
+vcpkg_cmake_install()
vcpkg_copy_pdbs()
+
+vcpkg_cmake_config_fixup(PACKAGE_NAME unofficial-nuklear)
+
+file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug")
+
+file(INSTALL "${SOURCE_PATH}/Readme.md" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
diff --git a/ports/nuklear/vcpkg.json b/ports/nuklear/vcpkg.json
new file mode 100644
index 000000000..1e48043bf
--- /dev/null
+++ b/ports/nuklear/vcpkg.json
@@ -0,0 +1,25 @@
+{
+ "name": "nuklear",
+ "version-date": "2021-03-18",
+ "port-version": 1,
+ "description": "This is a minimal state immediate mode graphical user interface toolkit written in ANSI C and licensed under public domain",
+ "homepage": "https://github.com/Immediate-Mode-UI/Nuklear",
+ "dependencies": [
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ],
+ "features": {
+ "demo": {
+ "description": "Install demo files"
+ },
+ "example": {
+ "description": "Install example files"
+ }
+ }
+}
diff --git a/versions/baseline.json b/versions/baseline.json
index 573e31559..d9d156fbf 100644
--- a/versions/baseline.json
+++ b/versions/baseline.json
@@ -4398,7 +4398,7 @@
},
"nuklear": {
"baseline": "2021-03-18",
- "port-version": 0
+ "port-version": 1
},
"numactl": {
"baseline": "2.0.12",
diff --git a/versions/n-/nuklear.json b/versions/n-/nuklear.json
index 82d95ffb8..195260366 100644
--- a/versions/n-/nuklear.json
+++ b/versions/n-/nuklear.json
@@ -1,6 +1,11 @@
{
"versions": [
{
+ "git-tree": "9c243e51fbb0d9fa4562a3e4a8eba9a7fb2e0cdd",
+ "version-date": "2021-03-18",
+ "port-version": 1
+ },
+ {
"git-tree": "2a8abfe81ed0757650f10d7fd0e2ef8ecd484ae6",
"version-string": "2021-03-18",
"port-version": 0