From 9a5f7f68f62175e46eb37a780c53a92225160302 Mon Sep 17 00:00:00 2001 From: crazywhalecc Date: Thu, 6 Feb 2025 12:05:41 +0800 Subject: [PATCH] Fix windows static build for opentelemetry --- src/SPC/builder/extension/opentelemetry.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/SPC/builder/extension/opentelemetry.php b/src/SPC/builder/extension/opentelemetry.php index 5d3b6704..4b0829e0 100644 --- a/src/SPC/builder/extension/opentelemetry.php +++ b/src/SPC/builder/extension/opentelemetry.php @@ -5,6 +5,7 @@ declare(strict_types=1); namespace SPC\builder\extension; use SPC\builder\Extension; +use SPC\store\FileSystem; use SPC\util\CustomExt; use SPC\util\GlobalEnvManager; @@ -18,6 +19,19 @@ class opentelemetry extends Extension } } + public function patchBeforeBuildconf(): bool + { + if (PHP_OS_FAMILY === 'Windows') { + FileSystem::replaceFileStr( + SOURCE_PATH . '/php-src/ext/opentelemetry/config.w32', + "EXTENSION('opentelemetry', 'opentelemetry.c otel_observer.c', '/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1');", + "EXTENSION('opentelemetry', 'opentelemetry.c otel_observer.c', PHP_OPENTELEMETRY_SHARED, '/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1');" + ); + return true; + } + return false; + } + public function patchBeforeMake(): bool { // add -Wno-strict-prototypes