[rkcommon] add new port (#29263)

* [rkcommon] add port

* v db

* Fix static builds and supports

* format manifest

* v db

* Add usage file.

---------

Co-authored-by: Billy Robert O'Neal III <bion@microsoft.com>
This commit is contained in:
Alexander Neumann 2023-02-01 03:53:23 +01:00 committed by GitHub
parent ce4d499954
commit a4e94e9d6d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 97 additions and 0 deletions

View File

@ -0,0 +1,28 @@
diff --git a/rkcommon/CMakeLists.txt b/rkcommon/CMakeLists.txt
index 3f80e4de3..72ac948b2 100644
--- a/rkcommon/CMakeLists.txt
+++ b/rkcommon/CMakeLists.txt
@@ -55,6 +55,10 @@ endif()
target_compile_definitions(${PROJECT_NAME} PUBLIC ${EXTRA_COMPILE_DEFINITIONS})
+if(BUILD_SHARED_LIBS)
+ target_compile_definitions(${PROJECT_NAME} PUBLIC rkcommon_SHARED)
+endif()
+
if (RKCOMMON_ADDRSAN)
target_compile_definitions(${PROJECT_NAME} PUBLIC -DRKCOMMON_ADDRSAN)
endif()
diff --git a/rkcommon/common.h b/rkcommon/common.h
index 175ecfa84..b43f34ab9 100644
--- a/rkcommon/common.h
+++ b/rkcommon/common.h
@@ -26,7 +26,7 @@ typedef int ssize_t;
#include "unistd.h"
#endif
-#ifdef _WIN32
+#if defined(_WIN32) && defined(rkcommon_SHARED)
#ifdef rkcommon_EXPORTS
#define RKCOMMON_INTERFACE __declspec(dllexport)
#else

View File

@ -0,0 +1,33 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO ospray/rkcommon
REF 0b8856cd9278474b56dc5bcff516a4b9482cf147
SHA512 836e888e33406f6825b8f5570894402460b3ae65a68ca8aeecf2c8e712f70e9392fdbb2131d538dbf47fc48a0664568e1fd60968452c7517cfeb17c0e608fecf
HEAD_REF master
PATCHES fix-static.patch
)
file(REMOVE "${SOURCE_PATH}/cmake/rkcommon_redist_deps.cmake")
file(TOUCH "${SOURCE_PATH}/cmake/rkcommon_redist_deps.cmake")
vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
-DBUILD_TESTING=OFF
)
vcpkg_cmake_install()
if(VCPKG_LIBRARY_LINKAGE STREQUAL "static")
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/rkcommon/common.h" "defined(rkcommon_SHARED)" "0")
else()
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/rkcommon/common.h" "defined(rkcommon_SHARED)" "1")
endif()
vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/${PORT}-${VERSION}")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
file(INSTALL "${SOURCE_PATH}/LICENSE.txt" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME "copyright")
file(INSTALL "${CMAKE_CURRENT_LIST_DIR}/usage" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")

4
ports/rkcommon/usage Normal file
View File

@ -0,0 +1,4 @@
rkcommon provides CMake targets:
find_package(rkcommon CONFIG REQUIRED)
target_link_libraries(main PRIVATE rkcommon::rkcommon)

19
ports/rkcommon/vcpkg.json Normal file
View File

@ -0,0 +1,19 @@
{
"name": "rkcommon",
"version": "1.10.0",
"description": "This project represents a common set of C++ infrastructure and CMake utilities used by various components of Intel® oneAPI Rendering Toolkit.",
"homepage": "https://github.com/ospray/rkcommon/",
"license": "Apache-2.0",
"supports": "x86 | x64",
"dependencies": [
"tbb",
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
]
}

View File

@ -6768,6 +6768,10 @@
"baseline": "0.2.1", "baseline": "0.2.1",
"port-version": 0 "port-version": 0
}, },
"rkcommon": {
"baseline": "1.10.0",
"port-version": 0
},
"rmlui": { "rmlui": {
"baseline": "5.0", "baseline": "5.0",
"port-version": 0 "port-version": 0

View File

@ -0,0 +1,9 @@
{
"versions": [
{
"git-tree": "49683a2cd8b631ffd2d2f47bc8affc258a5f836e",
"version": "1.10.0",
"port-version": 0
}
]
}