From aa3d2027d225ab56441259c381ea42a8c2f00bc8 Mon Sep 17 00:00:00 2001 From: Sergey Fedorov Date: Wed, 29 Jul 2026 19:51:21 +0000 Subject: [PATCH] Find wangle unconditionally; FBThrift::async's link interface needs it FBThriftTargets.cmake sets FBThrift::async's INTERFACE_LINK_LIBRARIES to include wangle::wangle regardless of how FBThrift itself was built, but watchman only called find_package(wangle) inside the ENABLE_EDEN_SUPPORT block. With eden support disabled (our ppc-darwin build passes -DENABLE_EDEN_SUPPORT=NO), CMake configure failed: The link interface of target "FBThrift::async" contains: wangle::wangle but the target was not found. Same underlying issue as FBThrift/fb303 needing to be hoisted out of that block already (edencommon's package config doesn't chain its own deps) - wangle needs the same treatment. --- CMakeLists.txt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index b7411da..b507c82 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -386,14 +386,15 @@ find_package(folly CONFIG REQUIRED) # edencommon_telemetry links against fb303 and thrift, and edencommon's # package config does not chain its dependencies, so these are required -# even when eden support is disabled. +# even when eden support is disabled. FBThrift::async's link interface in +# turn references wangle::wangle, so wangle must be found here too. +find_package(wangle CONFIG REQUIRED) find_package(FBThrift CONFIG REQUIRED) find_package(fb303 CONFIG REQUIRED) include_directories(${FB303_INCLUDE_DIR}) if (ENABLE_EDEN_SUPPORT) find_package(fizz CONFIG REQUIRED) - find_package(wangle CONFIG REQUIRED) find_package(cpptoml CONFIG REQUIRED) endif() if(DEFINED ENV{NODE_BIN})