early-access version 2853

This commit is contained in:
pineappleEA
2022-07-23 03:01:36 +02:00
parent 1f2b5081b5
commit 1f111bb69c
8955 changed files with 418777 additions and 999 deletions

View File

@@ -0,0 +1,117 @@
diff --git a/c/CMakeLists.txt b/c/CMakeLists.txt
index 27b40e7..1931b65 100644
--- a/c/CMakeLists.txt
+++ b/c/CMakeLists.txt
@@ -727,11 +727,6 @@ install (FILES
${CMAKE_CURRENT_BINARY_DIR}/ProtonConfig.cmake
${CMAKE_CURRENT_BINARY_DIR}/ProtonConfigVersion.cmake
DESTINATION ${LIB_INSTALL_DIR}/cmake/Proton)
-install (FILES
- ../tools/cmake/Modules/FindCyrusSASL.cmake
- ../tools/cmake/Modules/FindOpenSSL.cmake
- ../tools/cmake/Modules/FindThreads.cmake
- DESTINATION ${LIB_INSTALL_DIR}/cmake/Proton)
if (ENABLE_BENCHMARKS)
add_subdirectory(benchmarks)
diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt
index 03fe80a..fd6a31d 100644
--- a/cpp/CMakeLists.txt
+++ b/cpp/CMakeLists.txt
@@ -26,12 +26,15 @@ find_package(Threads)
include(versions.cmake)
# Check for JSON-CPP support for connection configuration
-find_package(JsonCpp)
-option(ENABLE_JSONCPP "Use jsoncpp parser for connection configuration" ${JsonCpp_FOUND})
+option(ENABLE_JSONCPP "Use jsoncpp parser for connection configuration" OFF)
if (ENABLE_JSONCPP)
- include_directories(${JsonCpp_INCLUDE_DIRS})
+ find_package(jsoncpp CONFIG REQUIRED)
set(CONNECT_CONFIG_SRC src/connect_config.cpp)
- set(CONNECT_CONFIG_LIBS ${JsonCpp_LIBRARY})
+ if (TARGET jsoncpp_lib)
+ set(CONNECT_CONFIG_LIBS jsoncpp_lib)
+ elseif (TARGET jsoncpp_static)
+ set(CONNECT_CONFIG_LIBS jsoncpp_static)
+ endif()
else()
set(CONNECT_CONFIG_SRC src/connect_config_dummy.cpp)
endif()
--- a/c/src/ProtonConfig.cmake.in
+++ b/c/src/ProtonConfig.cmake.in
@@ -20,39 +20,40 @@
# Name: Proton
# Description: Qpid Proton C library
# Version: @PN_VERSION@
# URL: http://qpid.apache.org/proton/
@PACKAGE_INIT@
-if (NOT Proton_USE_STATIC_LIBS)
+include(CMakeFindDependencyMacro)
+if (1)
include("${CMAKE_CURRENT_LIST_DIR}/ProtonTargets.cmake")
else()
include("${CMAKE_CURRENT_LIST_DIR}/ProtonTargetsStatic.cmake")
endif()
set(Proton_VERSION @PN_VERSION@)
# find dependencies, because static libs don't transitively pull them
-if (Proton_USE_STATIC_LIBS)
- set(CMAKE_MODULE_PATH_OLD ${CMAKE_MODULE_PATH})
- set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")
+if (1)
+ #set(CMAKE_MODULE_PATH_OLD ${CMAKE_MODULE_PATH})
+ #set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_LIST_DIR}")
set(CyrusSASL_FOUND @CyrusSASL_FOUND@)
if (CyrusSASL_FOUND)
- find_package (CyrusSASL REQUIRED)
+ find_dependency (CyrusSASL)
endif()
set(OPENSSL_FOUND @OPENSSL_FOUND@)
set(OpenSSL_FOUND @OpenSSL_FOUND@)
if (OPENSSL_FOUND OR OpenSSL_FOUND)
- find_package (OpenSSL REQUIRED)
+ find_dependency (OpenSSL)
endif()
- find_package (Threads REQUIRED)
+ find_dependency (Threads)
- set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH_OLD})
+ #set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH_OLD})
endif()
set (Proton_INCLUDE_DIRS @PACKAGE_INCLUDE_INSTALL_DIR@)
set (Proton_LIBRARIES Proton::qpid-proton)
set (Proton_FOUND True)
--- a/cpp/ProtonCppConfig.cmake.in
+++ b/cpp/ProtonCppConfig.cmake.in
@@ -20,19 +20,21 @@
# Name: Proton
# Description: Qpid Proton C library
# Version: @PN_VERSION@
# URL: http://qpid.apache.org/proton/
@PACKAGE_INIT@
-if (NOT ProtonCpp_USE_STATIC_LIBS)
+include(CMakeFindDependencyMacro)
+find_dependency(Proton CONFIG)
+if (1)
include("${CMAKE_CURRENT_LIST_DIR}/ProtonCppTargets.cmake")
else()
include("${CMAKE_CURRENT_LIST_DIR}/ProtonCppTargetsStatic.cmake")
endif()
set (ProtonCpp_VERSION @PN_VERSION@)
set (ProtonCpp_INCLUDE_DIRS @PACKAGE_INCLUDE_INSTALL_DIR@)
set (ProtonCpp_LIBRARIES Proton::cpp)
set (ProtonCpp_FOUND True)
check_required_components(ProtonCpp)

View File

@@ -0,0 +1,65 @@
vcpkg_check_linkage(ONLY_DYNAMIC_LIBRARY)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO apache/qpid-proton
REF fee5e94afb83b92ffa60a6f815d5102a67915166 # 0.37.0
SHA512 e9fbd02444dd073908186e6873b4e230e0a5971929e9b1a49758240d166f6da4e6c88d701c66d5e5539bea0beca380c763bffcef5b0e1ed5f9fc2691f5f86559
HEAD_REF next
PATCHES fix-dependencies.patch
)
file(REMOVE "${SOURCE_PATH}/tools/cmake/Modules/FindPython.cmake")
file(REMOVE "${SOURCE_PATH}/tools/cmake/Modules/FindOpenSSL.cmake")
file(REMOVE "${SOURCE_PATH}/tools/cmake/Modules/FindJsonCpp.cmake")
vcpkg_find_acquire_program(PYTHON3)
if(VCPKG_TARGET_IS_OSX OR VCPKG_TARGET_IS_IOS)
set(rpath "@loader_path")
else()
set(rpath "\$ORIGIN")
endif()
vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
DISABLE_PARALLEL_CONFIGURE # It may cause call CHECK_LIBRARY_EXISTS before call project to set the language
OPTIONS
-DBUILD_GO=no
-DCMAKE_DISABLE_FIND_PACKAGE_CyrusSASL=ON
-DENABLE_JSONCPP=ON
-DENABLE_LINKTIME_OPTIMIZATION=OFF
-DLIB_SUFFIX=
-DENABLE_WARNING_ERROR=OFF
-DENABLE_BENCHMARKS=OFF
-DENABLE_FUZZ_TESTING=OFF
-DBUILD_TESTING=OFF
-DCMAKE_INSTALL_RPATH=${rpath}
-DPython_EXECUTABLE=${PYTHON3}
)
vcpkg_cmake_install()
# qpid-proton installs tests into share/proton; this is not desireable
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/proton")
vcpkg_copy_pdbs()
vcpkg_cmake_config_fixup(
PACKAGE_NAME Proton
CONFIG_PATH lib/cmake/Proton
DO_NOT_DELETE_PARENT_CONFIG_PATH
)
vcpkg_cmake_config_fixup(
PACKAGE_NAME ProtonCpp
CONFIG_PATH lib/cmake/ProtonCpp
)
vcpkg_fixup_pkgconfig()
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share")
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/proton/version.h" "#define PN_INSTALL_PREFIX \"${CURRENT_PACKAGES_DIR}\"" "")
file(INSTALL "${SOURCE_PATH}/LICENSE.txt"
DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}"
RENAME copyright
)

27
externals/vcpkg/ports/qpid-proton/vcpkg.json vendored Executable file
View File

@@ -0,0 +1,27 @@
{
"name": "qpid-proton",
"version": "0.37.0",
"port-version": 2,
"description": "Qpid Proton is a high-performance, lightweight messaging library.",
"homepage": "https://github.com/apache/qpid-proton",
"license": "Apache-2.0",
"dependencies": [
"jsoncpp",
{
"name": "libuv",
"platform": "osx"
},
{
"name": "openssl",
"platform": "!windows"
},
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
]
}