From aa2d37682e3318d93aef87efa7b0e88e81cd3d59 Mon Sep 17 00:00:00 2001 From: SunBlack Date: Sat, 7 Feb 2026 05:37:58 +0100 Subject: [PATCH] [workflow] Split Windows branch to separate port (#48855) --- ports/kedixa-coke/vcpkg.json | 10 ++++++- ports/srpc/vcpkg.json | 10 ++++++- ports/workflow-win/portfile.cmake | 27 +++++++++++++++++++ ports/workflow-win/vcpkg.json | 19 ++++++++++++++ ports/workflow/portfile.cmake | 43 ++++++++++--------------------- ports/workflow/vcpkg.json | 4 ++- versions/baseline.json | 8 ++++-- versions/k-/kedixa-coke.json | 5 ++++ versions/s-/srpc.json | 5 ++++ versions/w-/workflow-win.json | 9 +++++++ versions/w-/workflow.json | 5 ++++ 11 files changed, 111 insertions(+), 34 deletions(-) create mode 100644 ports/workflow-win/portfile.cmake create mode 100644 ports/workflow-win/vcpkg.json create mode 100644 versions/w-/workflow-win.json diff --git a/ports/kedixa-coke/vcpkg.json b/ports/kedixa-coke/vcpkg.json index 570c77a8bf..95fd1cadd8 100644 --- a/ports/kedixa-coke/vcpkg.json +++ b/ports/kedixa-coke/vcpkg.json @@ -1,6 +1,7 @@ { "name": "kedixa-coke", "version": "0.7.0", + "port-version": 1, "description": "Coroutine Workflow based on C++ 20", "homepage": "https://github.com/kedixa/coke", "license": "Apache-2.0", @@ -15,6 +16,13 @@ "name": "vcpkg-cmake-config", "host": true }, - "workflow" + { + "name": "workflow", + "platform": "!windows | mingw" + }, + { + "name": "workflow-win", + "platform": "windows & !mingw" + } ] } diff --git a/ports/srpc/vcpkg.json b/ports/srpc/vcpkg.json index eb9d52410a..8eec23d34b 100644 --- a/ports/srpc/vcpkg.json +++ b/ports/srpc/vcpkg.json @@ -1,6 +1,7 @@ { "name": "srpc", "version-semver": "0.10.4", + "port-version": 1, "description": "RPC based on Sogou C++ Workflow", "homepage": "https://github.com/sogou/srpc", "license": "Apache-2.0", @@ -17,7 +18,14 @@ "name": "vcpkg-cmake-config", "host": true }, - "workflow", + { + "name": "workflow", + "platform": "!windows | mingw" + }, + { + "name": "workflow-win", + "platform": "windows & !mingw" + }, "zlib" ] } diff --git a/ports/workflow-win/portfile.cmake b/ports/workflow-win/portfile.cmake new file mode 100644 index 0000000000..d9b86ff209 --- /dev/null +++ b/ports/workflow-win/portfile.cmake @@ -0,0 +1,27 @@ +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO sogou/workflow + REF b92ead03ec62609a3cc1293041a9caa58a6b4800 + SHA512 4f9ac3daefcafaffe9121bd2b91b7a9311bd9f09690f723c970ebeab9f092fe3cd6745983c459c9781f673e898d74b6382e654db758914e9c73f9462394e2f73 + HEAD_REF windows +) + +string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" BUILD_STATIC_RUNTIME) + +vcpkg_cmake_configure( + SOURCE_PATH "${SOURCE_PATH}" + DISABLE_PARALLEL_CONFIGURE # because configure_package_config_file to ${PROJECT_SOURCE_DIR} + OPTIONS + -DWORKFLOW_BUILD_STATIC_RUNTIME=${BUILD_STATIC_RUNTIME} +) +vcpkg_cmake_install() +vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/workflow" PACKAGE_NAME "workflow") +vcpkg_copy_pdbs() + +file(REMOVE_RECURSE + "${CURRENT_PACKAGES_DIR}/debug/include" + "${CURRENT_PACKAGES_DIR}/debug/share" + "${CURRENT_PACKAGES_DIR}/share/doc" +) + +vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE") diff --git a/ports/workflow-win/vcpkg.json b/ports/workflow-win/vcpkg.json new file mode 100644 index 0000000000..96a495a8cd --- /dev/null +++ b/ports/workflow-win/vcpkg.json @@ -0,0 +1,19 @@ +{ + "name": "workflow-win", + "version": "2026-01-09", + "description": "C++ Parallel Computing and Asynchronous Networking Engine (Windows version)", + "homepage": "https://github.com/sogou/workflow", + "license": "Apache-2.0", + "supports": "windows & !mingw", + "dependencies": [ + "openssl", + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} diff --git a/ports/workflow/portfile.cmake b/ports/workflow/portfile.cmake index 14bd66064a..34a5fd1963 100644 --- a/ports/workflow/portfile.cmake +++ b/ports/workflow/portfile.cmake @@ -1,38 +1,23 @@ -if(VCPKG_TARGET_IS_WINDOWS AND NOT VCPKG_TARGET_IS_MINGW) - vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH - REPO sogou/workflow - REF "v0.11.8-win" - SHA512 4d33904742c41b9cc5efb38a0950dd1f1ef5a0aacab1d3c1fda899244af5b63e734c74dcb5a231623518880b90fa1db5280bf03c4186e94d293fcd2ad6286929 - HEAD_REF windows - ) -else() - vcpkg_from_github( - OUT_SOURCE_PATH SOURCE_PATH - REPO sogou/workflow - REF "v${VERSION}" - SHA512 78996029efd23ca7843f4089d801729174bf8e6bcb1babbe6f557db0c0b4094069dce38328332ddcddffec6710e77cfd03110264d0c670b8cd42b23dda5061ed - HEAD_REF master - ) -endif() - -if(VCPKG_CRT_LINKAGE STREQUAL "static") - set(CONFIGURE_OPTIONS "-DWORKFLOW_BUILD_STATIC_RUNTIME=ON") -else() - set(CONFIGURE_OPTIONS "-DWORKFLOW_BUILD_STATIC_RUNTIME=OFF") -endif() +vcpkg_from_github( + OUT_SOURCE_PATH SOURCE_PATH + REPO sogou/workflow + REF "v${VERSION}" + SHA512 78996029efd23ca7843f4089d801729174bf8e6bcb1babbe6f557db0c0b4094069dce38328332ddcddffec6710e77cfd03110264d0c670b8cd42b23dda5061ed + HEAD_REF master +) vcpkg_cmake_configure( SOURCE_PATH "${SOURCE_PATH}" - DISABLE_PARALLEL_CONFIGURE - OPTIONS ${CONFIGURE_OPTIONS} + DISABLE_PARALLEL_CONFIGURE # because configure_package_config_file to ${PROJECT_SOURCE_DIR} ) vcpkg_cmake_install() -vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/${PORT}") +vcpkg_cmake_config_fixup(CONFIG_PATH "lib/cmake/workflow") vcpkg_copy_pdbs() -file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include") -file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/share") -file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/share/doc") +file(REMOVE_RECURSE + "${CURRENT_PACKAGES_DIR}/debug/include" + "${CURRENT_PACKAGES_DIR}/debug/share" + "${CURRENT_PACKAGES_DIR}/share/doc" +) vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE") diff --git a/ports/workflow/vcpkg.json b/ports/workflow/vcpkg.json index a4032188f8..70c03c523b 100644 --- a/ports/workflow/vcpkg.json +++ b/ports/workflow/vcpkg.json @@ -1,9 +1,11 @@ { "name": "workflow", "version": "0.11.11", - "description": "About C++ Parallel Computing and Asynchronous Networking Engine", + "port-version": 1, + "description": "C++ Parallel Computing and Asynchronous Networking Engine", "homepage": "https://github.com/sogou/workflow", "license": "Apache-2.0", + "supports": "!windows | mingw", "dependencies": [ "openssl", { diff --git a/versions/baseline.json b/versions/baseline.json index 45f22dd382..99a3e8397e 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -4218,7 +4218,7 @@ }, "kedixa-coke": { "baseline": "0.7.0", - "port-version": 0 + "port-version": 1 }, "kenlm": { "baseline": "20230531", @@ -9442,7 +9442,7 @@ }, "srpc": { "baseline": "0.10.4", - "port-version": 0 + "port-version": 1 }, "sse2neon": { "baseline": "1.9.1", @@ -10698,6 +10698,10 @@ }, "workflow": { "baseline": "0.11.11", + "port-version": 1 + }, + "workflow-win": { + "baseline": "2026-01-09", "port-version": 0 }, "wpilib": { diff --git a/versions/k-/kedixa-coke.json b/versions/k-/kedixa-coke.json index 72deaf5091..4455fd6ed6 100644 --- a/versions/k-/kedixa-coke.json +++ b/versions/k-/kedixa-coke.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "cd27cd1c0d601c32d04a8bfe8cb660c69acf4641", + "version": "0.7.0", + "port-version": 1 + }, { "git-tree": "0fcbbada8de4cf80251ab2d15ea5ea5b87c9aebd", "version": "0.7.0", diff --git a/versions/s-/srpc.json b/versions/s-/srpc.json index 3a673f7334..d2f9f10192 100644 --- a/versions/s-/srpc.json +++ b/versions/s-/srpc.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "4336be6add18045a17054a0c16df338b3cd9097f", + "version-semver": "0.10.4", + "port-version": 1 + }, { "git-tree": "b2c3dd8895a29f12367479a1bc98cd1eefd277fa", "version-semver": "0.10.4", diff --git a/versions/w-/workflow-win.json b/versions/w-/workflow-win.json new file mode 100644 index 0000000000..a4889ecd65 --- /dev/null +++ b/versions/w-/workflow-win.json @@ -0,0 +1,9 @@ +{ + "versions": [ + { + "git-tree": "8d5a082487d44364d43cb8021b63b019c631a51d", + "version": "2026-01-09", + "port-version": 0 + } + ] +} diff --git a/versions/w-/workflow.json b/versions/w-/workflow.json index 7aaea376aa..a0e61a09f5 100644 --- a/versions/w-/workflow.json +++ b/versions/w-/workflow.json @@ -1,5 +1,10 @@ { "versions": [ + { + "git-tree": "7efb5dbcb0ab18e14921361636df4418e0fa50aa", + "version": "0.11.11", + "port-version": 1 + }, { "git-tree": "93981ef47404e62645bb2248258d020115104fb7", "version": "0.11.11",