diff --git a/.devcontainer b/.devcontainer index 22a41a3..eee022b 160000 --- a/.devcontainer +++ b/.devcontainer @@ -1 +1 @@ -Subproject commit 22a41a3514108503afed82c074917aece4e24c93 +Subproject commit eee022bebadedd8cb2c8b843d4476bbfdea24482 diff --git a/.github/release-tag.json b/.github/release-tag.json new file mode 100644 index 0000000..3261bb2 --- /dev/null +++ b/.github/release-tag.json @@ -0,0 +1,4 @@ +{ + "message": "xpro version 4.7.1.4 tag", + "tag": "xpv4.7.1.4" +} diff --git a/.github/release-tag.yml b/.github/release-tag.yml deleted file mode 100644 index a3cdce9..0000000 --- a/.github/release-tag.yml +++ /dev/null @@ -1,2 +0,0 @@ -tag: xpv4.7.1.3 -message: "xpro version 4.7.1.3 tag" diff --git a/.github/workflows/xpbuild.yml b/.github/workflows/xpbuild.yml index fd31fce..732fc68 100644 --- a/.github/workflows/xpbuild.yml +++ b/.github/workflows/xpbuild.yml @@ -14,17 +14,18 @@ jobs: contents: read pull-requests: write packages: write - uses: externpro/externpro/.github/workflows/build-linux.yml@25.07.6 + uses: externpro/externpro/.github/workflows/build-linux.yml@26.01.1 + secrets: + automation_token: ${{ secrets.GHCR_TOKEN }} with: - cmake-workflow-preset: LinuxRelease - secrets: inherit + cmake_workflow_preset_suffix: Release macos: - uses: externpro/externpro/.github/workflows/build-macos.yml@25.07.6 - with: - cmake-workflow-preset: DarwinRelease + uses: externpro/externpro/.github/workflows/build-macos.yml@26.01.1 secrets: inherit - windows: - uses: externpro/externpro/.github/workflows/build-windows.yml@25.07.6 with: - cmake-workflow-preset: WindowsRelease + cmake_workflow_preset_suffix: Release + windows: + uses: externpro/externpro/.github/workflows/build-windows.yml@26.01.1 secrets: inherit + with: + cmake_workflow_preset_suffix: Release diff --git a/.github/workflows/xpinit.yml b/.github/workflows/xpinit.yml new file mode 100644 index 0000000..4893a2b --- /dev/null +++ b/.github/workflows/xpinit.yml @@ -0,0 +1,12 @@ +name: xpInit externpro +permissions: + contents: write + pull-requests: write + packages: write +on: + workflow_dispatch: +jobs: + init: + uses: externpro/externpro/.github/workflows/init-externpro.yml@main + secrets: + automation_token: ${{ secrets.XPRO_TOKEN }} diff --git a/.github/workflows/xprelease.yml b/.github/workflows/xprelease.yml index a2eb282..ec3022d 100644 --- a/.github/workflows/xprelease.yml +++ b/.github/workflows/xprelease.yml @@ -34,7 +34,7 @@ jobs: # Upload build artifacts as release assets release-from-build: if: github.event_name == 'workflow_dispatch' - uses: externpro/externpro/.github/workflows/release-from-build.yml@25.07.6 + uses: externpro/externpro/.github/workflows/release-from-build.yml@26.01.1 with: workflow_run_url: ${{ github.event.inputs.workflow_run_url }} permissions: diff --git a/.github/workflows/xptag.yml b/.github/workflows/xptag.yml index b5ce950..2946213 100644 --- a/.github/workflows/xptag.yml +++ b/.github/workflows/xptag.yml @@ -8,9 +8,9 @@ on: jobs: tag: if: ${{ github.event.pull_request.merged == true && github.event.pull_request.base.ref == 'xpro' && contains(github.event.pull_request.labels.*.name, 'release:tag') }} - uses: externpro/externpro/.github/workflows/tag-release.yml@25.07.6 + uses: externpro/externpro/.github/workflows/tag-release.yml@26.01.1 with: merge_sha: ${{ github.event.pull_request.merge_commit_sha }} pr_number: ${{ github.event.pull_request.number }} secrets: - workflow_write_token: ${{ secrets.XPUPDATE_TOKEN }} + automation_token: ${{ secrets.XPRO_TOKEN }} diff --git a/CMakeLists.txt b/CMakeLists.txt index f858861..e1669f8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,5 @@ -cmake_minimum_required(VERSION 3.0.0...3.31) +cmake_minimum_required(VERSION 3.0.0...4.3) -set(CMAKE_PROJECT_TOP_LEVEL_INCLUDES .devcontainer/cmake/xproinc.cmake) list (APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") include (DetectCPPZMQVersion) @@ -11,8 +10,8 @@ if (NOT TARGET libzmq AND NOT TARGET libzmq-static) if(COMMAND xpFindPkg) find_package(libzmq) set(ZeroMQ_FOUND TRUE) - set(_libzmq ${XP_NAMESPACE}::libzmq) - set(_libzmqStatic ${XP_NAMESPACE}::libzmq-static) + set(_libzmq libzmq::libzmq) + set(_libzmqStatic libzmq::libzmq-static) set(installTargets cppzmq-static) else() find_package(ZeroMQ QUIET) @@ -70,15 +69,15 @@ include(GNUInstallDirs) include(CMakePackageConfigHelpers) set(targetsFile ${PROJECT_NAME}Targets) -if(DEFINED XP_NAMESPACE) - xpExternPackage(NAMESPACE ${XP_NAMESPACE} - TARGETS_FILE ${targetsFile} LIBRARIES ${installTargets} - BASE v${cppzmq_VERSION} XPDIFF "patch" DEPS libzmq +if(COMMAND xpExternPackage) + xpExternPackage(TARGETS_FILE ${targetsFile} EXPORT ${PROJECT_NAME}-targets + LIBRARIES ${installTargets} DEFAULT_TARGETS cppzmq-static + BASE v${cppzmq_VERSION} XPDIFF "patch" WEB "https://zeromq.org/" UPSTREAM "github.com/zeromq/cppzmq" DESC "header-only C++ binding for libzmq" LICENSE "[MPL-2.0](http://wiki.zeromq.org/area:licensing 'Mozilla Public License 2.0')" ) - set(nSpace ${XP_NAMESPACE}::) + set(nSpace ${PROJECT_NAME}::) set(nameSpace NAMESPACE ${nSpace}) elseif(NOT DEFINED CMAKE_INSTALL_CMAKEDIR) set(CMAKE_INSTALL_CMAKEDIR share/cmake/${PROJECT_NAME}) @@ -117,7 +116,7 @@ set(CMAKE_SIZEOF_VOID_P ${CPPZMQ_SIZEOF_VOID_P}) install(EXPORT ${PROJECT_NAME}-targets FILE ${targetsFile}.cmake ${nameSpace} DESTINATION ${CPPZMQ_CMAKECONFIG_INSTALL_DIR}) -if(NOT DEFINED XP_NAMESPACE) +if(NOT COMMAND xpExternPackage) install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}ConfigVersion.cmake DESTINATION ${CPPZMQ_CMAKECONFIG_INSTALL_DIR}) diff --git a/CMakePresets.json b/CMakePresets.json index f82cfdd..28efa39 100644 --- a/CMakePresets.json +++ b/CMakePresets.json @@ -3,6 +3,7 @@ "include": [ ".devcontainer/cmake/presets/xpLinuxNinja.json", ".devcontainer/cmake/presets/xpDarwinNinja.json", - ".devcontainer/cmake/presets/xpWindowsVs2022.json" + ".devcontainer/cmake/presets/xpMswVs2022.json", + ".devcontainer/cmake/presets/xpMswVs2026.json" ] } diff --git a/CMakePresetsBase.json b/CMakePresetsBase.json index 4422eff..8224f19 100644 --- a/CMakePresetsBase.json +++ b/CMakePresetsBase.json @@ -7,7 +7,7 @@ "binaryDir": "${sourceDir}/_bld-${presetName}", "cacheVariables": { "CPPZMQ_BUILD_TESTS": "OFF", - "XP_NAMESPACE": "xpro" + "CMAKE_EXPERIMENTAL_GENERATE_SBOM": "ca494ed3-b261-4205-a01f-603c95e4cae0" } } ], diff --git a/xprodeps.md b/xprodeps.md index 67cb7be..f3cbfd0 100644 --- a/xprodeps.md +++ b/xprodeps.md @@ -3,12 +3,13 @@ |project|license [^_l]|description [dependencies]|version|source|diff [^_d]| |-------|-------------|--------------------------|-------|------|----------| |[cppzmq](https://zeromq.org/)|[MPL-2.0](http://wiki.zeromq.org/area:licensing 'Mozilla Public License 2.0')|header-only C++ binding for libzmq [deps: _libzmq_]| |[upstream](https://github.com/zeromq/cppzmq 'github.com/zeromq/cppzmq')| [patch]| -|[libzmq](https://zeromq.org/)|[MPL-2.0](http://wiki.zeromq.org/area:licensing 'Mozilla Public License 2.0')|high-performance asynchronous messaging library [deps: _libsodium_]|[xpv4.3.4.4](https://github.com/externpro/libzmq/releases/tag/xpv4.3.4.4 'release')|[repo](https://github.com/externpro/libzmq 'github.com/externpro/libzmq') [upstream](https://github.com/zeromq/libzmq 'github.com/zeromq/libzmq')|[diff](https://github.com/externpro/libzmq/compare/v4.3.4...xpv4.3.4.4 'github.com/externpro/libzmq/compare/v4.3.4...xpv4.3.4.4') [patch]| -|[libsodium](https://doc.libsodium.org/)|[ISC](https://doc.libsodium.org/#license 'Internet Systems Consortium License, functionally equivalent to simplified BSD and MIT licenses')|library for encryption, decryption, signatures, password hashing and more|[xpv1.0.18.233](https://github.com/externpro/libsodium/releases/tag/xpv1.0.18.233 'release')|[repo](https://github.com/externpro/libsodium 'github.com/externpro/libsodium') [upstream](https://github.com/jedisct1/libsodium 'github.com/jedisct1/libsodium')|[diff](https://github.com/externpro/libsodium/compare/aa099f5e82ae78175f9c1c48372a123cb634dd92...xpv1.0.18.233 'github.com/externpro/libsodium/compare/aa099f5e82ae78175f9c1c48372a123cb634dd92...xpv1.0.18.233') [auto]| +|[libzmq](https://zeromq.org/)|[MPL-2.0](http://wiki.zeromq.org/area:licensing 'Mozilla Public License 2.0')|high-performance asynchronous messaging library [deps: _libsodium_]|[xpv4.3.5.2](https://github.com/externpro/libzmq/releases/tag/xpv4.3.5.2 'release')|[repo](https://github.com/externpro/libzmq 'github.com/externpro/libzmq') [upstream](https://github.com/zeromq/libzmq 'github.com/zeromq/libzmq')|[diff](https://github.com/externpro/libzmq/compare/v4.3.5...xpv4.3.5.2 'github.com/externpro/libzmq/compare/v4.3.5...xpv4.3.5.2') [patch]| +|[libsodium](https://doc.libsodium.org/)|[ISC](https://doc.libsodium.org/#license 'Internet Systems Consortium License, functionally equivalent to simplified BSD and MIT licenses')|library for encryption, decryption, signatures, password hashing and more [deps: _Threads_]|[xpv1.0.22.2](https://github.com/externpro/libsodium/releases/tag/xpv1.0.22.2 'release')|[repo](https://github.com/externpro/libsodium 'github.com/externpro/libsodium') [upstream](https://github.com/jedisct1/libsodium 'github.com/jedisct1/libsodium')|[diff](https://github.com/externpro/libsodium/compare/1.0.22...xpv1.0.22.2 'github.com/externpro/libsodium/compare/1.0.22...xpv1.0.22.2') [auto]| +|[Threads](https://cmake.org/cmake/help/latest/module/FindThreads.html)|[LGPL-2.1-or-later](https://spdx.org/licenses/LGPL-2.1-or-later.html 'GNU Lesser General Public License v2.1 or later')|Finds and determines the thread library of the system for multithreading support|[xpv1.0.4](https://github.com/externpro/Threads/releases/tag/xpv1.0.4 'release')|[repo](https://github.com/externpro/Threads 'github.com/externpro/Threads')|[diff](https://github.com/externpro/Threads/compare/v0...xpv1.0.4 'github.com/externpro/Threads/compare/v0...xpv1.0.4') [bin]| ![deps](xprodeps.svg 'dependencies') -Dependency version check: all 2 parent-manifest versions match pinned versions. +Dependency version check: all 3 parent-manifest versions match pinned versions. |diff |description| |------|-----------| diff --git a/xprodeps.svg b/xprodeps.svg index 17daccc..30b678b 100644 --- a/xprodeps.svg +++ b/xprodeps.svg @@ -4,37 +4,49 @@ - - + + GG cppzmq - -cppzmq + +cppzmq libzmq - -libzmq + +libzmq cppzmq->libzmq - - + + libsodium - -libsodium + +libsodium libzmq->libsodium + + + + + +Threads + +Threads + + + +libsodium->Threads