git: daea6cb33392 - main - devel/libdatadog: Update to 24.0.1

From: Po-Chuan Hsieh <sunpoet_at_FreeBSD.org>
Date: Sat, 29 Nov 2025 23:53:39 UTC
The branch main has been updated by sunpoet:

URL: https://cgit.FreeBSD.org/ports/commit/?id=daea6cb333925778d36a8c8a1aacd0b9f53f6c4c

commit daea6cb333925778d36a8c8a1aacd0b9f53f6c4c
Author:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
AuthorDate: 2025-11-29 23:21:54 +0000
Commit:     Po-Chuan Hsieh <sunpoet@FreeBSD.org>
CommitDate: 2025-11-29 23:21:54 +0000

    devel/libdatadog: Update to 24.0.1
    
    Changes:        https://github.com/DataDog/libdatadog/releases
---
 devel/libdatadog/Makefile                          | 13 +++++------
 devel/libdatadog/Makefile.crates                   | 10 ++++++++-
 devel/libdatadog/distinfo                          | 26 +++++++++++++++++-----
 .../files/patch-builder-src-arch-freebsd.rs        | 25 ++++++++++++++++++---
 ...s => patch-libdd-common-src-unix_utils-fork.rs} |  4 ++--
 ...h-libdd-crashtracker-src-collector-emitters.rs} |  4 ++--
 ...ib.rs => patch-libdd-library-config-src-lib.rs} |  4 ++--
 devel/libdatadog/pkg-plist                         | 25 ++++++++++++---------
 8 files changed, 78 insertions(+), 33 deletions(-)

diff --git a/devel/libdatadog/Makefile b/devel/libdatadog/Makefile
index 276545312a45..14f8964a3763 100644
--- a/devel/libdatadog/Makefile
+++ b/devel/libdatadog/Makefile
@@ -1,11 +1,10 @@
 PORTNAME=	libdatadog
-PORTVERSION=	23.0.0
+PORTVERSION=	24.0.1
 DISTVERSIONPREFIX=	v
-PORTREVISION=	1
 CATEGORIES=	devel
 
 MAINTAINER=	sunpoet@FreeBSD.org
-COMMENT=	Datadog Rust library
+COMMENT=	Datadog shared rust-based library
 WWW=		https://github.com/DataDog/libdatadog
 
 LICENSE=	APACHE20
@@ -19,7 +18,7 @@ LIB_DEPENDS=	libzstd.so:archivers/zstd
 
 USES=		cargo llvm
 
-CARGO_FEATURES=	cbindgen,crashtracker-ffi,cbindgen,datadog-profiling-ffi/ddtelemetry-ffi
+CARGO_FEATURES=	cbindgen,crashtracker-ffi,data-pipeline-ffi,datadog-library-config-ffi,datadog-log-ffi,ddcommon-ffi,ddsketch-ffi,libdd-profiling-ffi/ddcommon-ffi,libdd-common-ffi/cbindgen
 MAKE_ENV=	LIBCLANG_PATH=${LLVM_PREFIX}/lib
 
 NATIVE_STATIC_LIBS=	-lpthread -lrt -lexecinfo -lutil -lc -lm
@@ -28,9 +27,9 @@ USE_GITHUB=	yes
 GH_ACCOUNT=	DataDog
 
 post-patch:
-	@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/datadog-library-config/src/lib.rs
+	@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/libdd-library-config/src/lib.rs
 .for file in datadog_profiling datadog_profiling-static datadog_profiling_with_rpath
-	@${SED} -e 's|@Datadog_VERSION@|${PORTVERSION}|; s|@Datadog_LIBRARIES@|${NATIVE_STATIC_LIBS}|' ${WRKSRC}/datadog-profiling-ffi/${file}.pc.in > ${WRKSRC}/${file}.pc
+	@${SED} -e 's|@Datadog_VERSION@|${PORTVERSION}|; s|@Datadog_LIBRARIES@|${NATIVE_STATIC_LIBS}|' ${WRKSRC}/libdd-profiling-ffi/${file}.pc.in > ${WRKSRC}/${file}.pc
 .endfor
 .for file in DatadogConfig DataPipelineConfig
 	@${SED} -e 's|@Datadog_LIBRARIES@|${NATIVE_STATIC_LIBS}|' ${WRKSRC}/cmake/${file}.cmake.in > ${WRKSRC}/${file}.cmake
@@ -46,7 +45,7 @@ post-build:
 		${CARGO_TARGET_DIR}/include/datadog/telemetry.h \
 		${CARGO_TARGET_DIR}/include/datadog/data-pipeline.h
 	@${CC} -I ${CARGO_TARGET_DIR}/include/ -L ${CARGO_TARGET_DIR}/release/ -ldatadog_profiling_ffi \
-		${WRKSRC}/datadog-crashtracker/libdatadog-crashtracking-receiver.c -o ${WRKSRC}/libdatadog-crashtracking-receiver
+		${WRKSRC}/libdd-crashtracker/libdatadog-crashtracking-receiver.c -o ${WRKSRC}/libdatadog-crashtracking-receiver
 	@${MV} ${CARGO_TARGET_DIR}/release/libtest_spawn_from_lib.so ${CARGO_TARGET_DIR}/release/libtest_spawn_from_lib.so.skip
 
 do-install:
diff --git a/devel/libdatadog/Makefile.crates b/devel/libdatadog/Makefile.crates
index 3f82c1124e55..1b43e9a7d105 100644
--- a/devel/libdatadog/Makefile.crates
+++ b/devel/libdatadog/Makefile.crates
@@ -215,7 +215,8 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		idna-1.0.3 \
 		idna_adapter-1.2.0 \
 		indexmap-1.9.3 \
-		indexmap-2.6.0 \
+		indexmap-2.11.4 \
+		indoc-2.0.7 \
 		inout-0.1.4 \
 		integer-encoding-3.0.4 \
 		io-lifetimes-1.0.11 \
@@ -325,6 +326,11 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		protoc-bin-vendored-macos-aarch_64-3.1.0 \
 		protoc-bin-vendored-macos-x86_64-3.1.0 \
 		protoc-bin-vendored-win32-3.1.0 \
+		pyo3-0.25.1 \
+		pyo3-build-config-0.25.1 \
+		pyo3-ffi-0.25.1 \
+		pyo3-macros-0.25.1 \
+		pyo3-macros-backend-0.25.1 \
 		quote-1.0.37 \
 		r-efi-5.2.0 \
 		rand-0.8.5 \
@@ -421,6 +427,7 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		sysinfo-0.29.11 \
 		tabwriter-1.4.1 \
 		tar-0.4.43 \
+		target-lexicon-0.13.3 \
 		target-triple-0.1.4 \
 		tempfile-3.13.0 \
 		termcolor-1.4.1 \
@@ -472,6 +479,7 @@ CARGO_CRATES=	addr2line-0.24.2 \
 		unicode-ident-1.0.13 \
 		unicode-width-0.2.1 \
 		unicode-xid-0.2.6 \
+		unindent-0.2.4 \
 		unsafe-libyaml-0.2.11 \
 		untrusted-0.9.0 \
 		url-2.5.3 \
diff --git a/devel/libdatadog/distinfo b/devel/libdatadog/distinfo
index 4b33a38dd8a3..0b7e86b4f263 100644
--- a/devel/libdatadog/distinfo
+++ b/devel/libdatadog/distinfo
@@ -1,4 +1,4 @@
-TIMESTAMP = 1762586698
+TIMESTAMP = 1763853158
 SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1
 SIZE (rust/crates/addr2line-0.24.2.crate) = 39015
 SHA256 (rust/crates/adler2-2.0.0.crate) = 512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627
@@ -433,8 +433,10 @@ SHA256 (rust/crates/idna_adapter-1.2.0.crate) = daca1df1c957320b2cf139ac61e7bd64
 SIZE (rust/crates/idna_adapter-1.2.0.crate) = 8206
 SHA256 (rust/crates/indexmap-1.9.3.crate) = bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99
 SIZE (rust/crates/indexmap-1.9.3.crate) = 54653
-SHA256 (rust/crates/indexmap-2.6.0.crate) = 707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da
-SIZE (rust/crates/indexmap-2.6.0.crate) = 85204
+SHA256 (rust/crates/indexmap-2.11.4.crate) = 4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5
+SIZE (rust/crates/indexmap-2.11.4.crate) = 100302
+SHA256 (rust/crates/indoc-2.0.7.crate) = 79cf5c93f93228cf8efb3ba362535fb11199ac548a09ce117c9b1adc3030d706
+SIZE (rust/crates/indoc-2.0.7.crate) = 17184
 SHA256 (rust/crates/inout-0.1.4.crate) = 879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01
 SIZE (rust/crates/inout-0.1.4.crate) = 11280
 SHA256 (rust/crates/integer-encoding-3.0.4.crate) = 8bb03732005da905c88227371639bf1ad885cc712789c011c31c5fb3ab3ccf02
@@ -653,6 +655,16 @@ SHA256 (rust/crates/protoc-bin-vendored-macos-x86_64-3.1.0.crate) = 38943f3c9031
 SIZE (rust/crates/protoc-bin-vendored-macos-x86_64-3.1.0.crate) = 2288796
 SHA256 (rust/crates/protoc-bin-vendored-win32-3.1.0.crate) = 7dc55d7dec32ecaf61e0bd90b3d2392d721a28b95cfd23c3e176eccefbeab2f2
 SIZE (rust/crates/protoc-bin-vendored-win32-3.1.0.crate) = 3170948
+SHA256 (rust/crates/pyo3-0.25.1.crate) = 8970a78afe0628a3e3430376fc5fd76b6b45c4d43360ffd6cdd40bdde72b682a
+SIZE (rust/crates/pyo3-0.25.1.crate) = 1121993
+SHA256 (rust/crates/pyo3-build-config-0.25.1.crate) = 458eb0c55e7ece017adeba38f2248ff3ac615e53660d7c71a238d7d2a01c7598
+SIZE (rust/crates/pyo3-build-config-0.25.1.crate) = 34126
+SHA256 (rust/crates/pyo3-ffi-0.25.1.crate) = 7114fe5457c61b276ab77c5055f206295b812608083644a5c5b2640c3102565c
+SIZE (rust/crates/pyo3-ffi-0.25.1.crate) = 78058
+SHA256 (rust/crates/pyo3-macros-0.25.1.crate) = a8725c0a622b374d6cb051d11a0983786448f7785336139c3c94f5aa6bef7e50
+SIZE (rust/crates/pyo3-macros-0.25.1.crate) = 8886
+SHA256 (rust/crates/pyo3-macros-backend-0.25.1.crate) = 4109984c22491085343c05b0dbc54ddc405c3cf7b4374fc533f5c3313a572ccc
+SIZE (rust/crates/pyo3-macros-backend-0.25.1.crate) = 76006
 SHA256 (rust/crates/quote-1.0.37.crate) = b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af
 SIZE (rust/crates/quote-1.0.37.crate) = 28558
 SHA256 (rust/crates/r-efi-5.2.0.crate) = 74765f6d916ee2faa39bc8e68e4f3ed8949b48cccdac59983d287a7cb71ce9c5
@@ -845,6 +857,8 @@ SHA256 (rust/crates/tabwriter-1.4.1.crate) = fce91f2f0ec87dff7e6bcbbeb267439aa11
 SIZE (rust/crates/tabwriter-1.4.1.crate) = 10047
 SHA256 (rust/crates/tar-0.4.43.crate) = c65998313f8e17d0d553d28f91a0df93e4dbbbf770279c7bc21ca0f09ea1a1f6
 SIZE (rust/crates/tar-0.4.43.crate) = 60181
+SHA256 (rust/crates/target-lexicon-0.13.3.crate) = df7f62577c25e07834649fc3b39fafdc597c0a3527dc1c60129201ccfcbaa50c
+SIZE (rust/crates/target-lexicon-0.13.3.crate) = 28498
 SHA256 (rust/crates/target-triple-0.1.4.crate) = 1ac9aa371f599d22256307c24a9d748c041e548cbf599f35d890f9d365361790
 SIZE (rust/crates/target-triple-0.1.4.crate) = 7143
 SHA256 (rust/crates/tempfile-3.13.0.crate) = f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b
@@ -947,6 +961,8 @@ SHA256 (rust/crates/unicode-width-0.2.1.crate) = 4a1a07cc7db3810833284e8d372ccdc
 SIZE (rust/crates/unicode-width-0.2.1.crate) = 279344
 SHA256 (rust/crates/unicode-xid-0.2.6.crate) = ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853
 SIZE (rust/crates/unicode-xid-0.2.6.crate) = 15744
+SHA256 (rust/crates/unindent-0.2.4.crate) = 7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3
+SIZE (rust/crates/unindent-0.2.4.crate) = 7422
 SHA256 (rust/crates/unsafe-libyaml-0.2.11.crate) = 673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861
 SIZE (rust/crates/unsafe-libyaml-0.2.11.crate) = 62101
 SHA256 (rust/crates/untrusted-0.9.0.crate) = 8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1
@@ -1163,5 +1179,5 @@ SHA256 (rust/crates/zwohash-0.1.2.crate) = beaf63e0740cea93ca85de39611a8bc8262a5
 SIZE (rust/crates/zwohash-0.1.2.crate) = 11110
 SHA256 (bantonsson-proptest-9f623fbab7a1a4da487551128c2bffeee2ed6b87_GH0.tar.gz) = 0a38017d8f794ab1a9740942e65de8940c08a6dd3224275bf7f6f2dbddb72872
 SIZE (bantonsson-proptest-9f623fbab7a1a4da487551128c2bffeee2ed6b87_GH0.tar.gz) = 330664
-SHA256 (DataDog-libdatadog-v23.0.0_GH0.tar.gz) = 1af1957e35a7650f5400943a2c94fc6a40b17e0b2af15669ff7ac475560d63b4
-SIZE (DataDog-libdatadog-v23.0.0_GH0.tar.gz) = 1974894
+SHA256 (DataDog-libdatadog-v24.0.1_GH0.tar.gz) = f866aff2a6500fb6f1cb420c96643e8454587e9ce83aee63b7ab70b6063f7c8d
+SIZE (DataDog-libdatadog-v24.0.1_GH0.tar.gz) = 2010023
diff --git a/devel/libdatadog/files/patch-builder-src-arch-freebsd.rs b/devel/libdatadog/files/patch-builder-src-arch-freebsd.rs
index 73b33b23dc7f..8f37cf76ea63 100644
--- a/devel/libdatadog/files/patch-builder-src-arch-freebsd.rs
+++ b/devel/libdatadog/files/patch-builder-src-arch-freebsd.rs
@@ -1,11 +1,19 @@
---- builder/src/arch/freebsd.rs.orig	2025-03-17 18:38:16 UTC
+--- builder/src/arch/freebsd.rs.orig    2025-11-26 08:32:19 UTC
 +++ builder/src/arch/freebsd.rs
-@@ -0,0 +1,18 @@
+@@ -0,0 +1,37 @@
++use std::ffi::OsStr;
++
 +use std::process::Command;
 +
 +pub const NATIVE_LIBS: &str = " -lc -ldl -lm -lpthread -lrt -lutil";
++pub const PROF_DYNAMIC_LIB: &str = "libdatadog_profiling.so";
++pub const PROF_STATIC_LIB: &str = "libdatadog_profiling.a";
++pub const PROF_DYNAMIC_LIB_FFI: &str = "libdatadog_profiling_ffi.so";
++pub const PROF_STATIC_LIB_FFI: &str = "libdatadog_profiling_ffi.a";
 +pub const REMOVE_RPATH: bool = false;
-+pub const RUSTFLAGS: [&str; 2] = ["-C", "relocation-model=pic"];
++pub const BUILD_CRASHTRACKER: bool = true;
++// pub const RUSTFLAGS: [&str; 4] = ["-C", "relocation-model=pic"];
++pub const RUSTFLAGS: [&str; 4] = ["-C", "relocation-model=pic", "-C", "link-arg=-Wl,-soname,libdatadog_profiling.so"];
 +
 +pub fn fix_rpath(lib_path: &str) {
 +    if REMOVE_RPATH {
@@ -19,3 +27,14 @@
 +    }
 +}
 +
++pub fn strip_libraries(lib_path: &str) {
++    let mut strip = Command::new("strip")
++        .arg("-S")
++        .arg(lib_path.to_owned() + "/libdatadog_profiling.so")
++        .spawn()
++        .expect("Failed to spawn strip");
++
++    strip.wait().expect("Failed to strip library");
++}
++
++pub fn add_additional_files(_lib_path: &str, _target_path: &OsStr) {}
diff --git a/devel/libdatadog/files/patch-ddcommon-src-unix_utils-fork.rs b/devel/libdatadog/files/patch-libdd-common-src-unix_utils-fork.rs
similarity index 73%
rename from devel/libdatadog/files/patch-ddcommon-src-unix_utils-fork.rs
rename to devel/libdatadog/files/patch-libdd-common-src-unix_utils-fork.rs
index fd0ea26196d1..b6b0f6d76f93 100644
--- a/devel/libdatadog/files/patch-ddcommon-src-unix_utils-fork.rs
+++ b/devel/libdatadog/files/patch-libdd-common-src-unix_utils-fork.rs
@@ -1,5 +1,5 @@
---- ddcommon/src/unix_utils/fork.rs.orig	2025-08-22 12:57:44.659695000 +0000
-+++ ddcommon/src/unix_utils/fork.rs	2025-08-22 12:57:54.570083000 +0000
+--- libdd-common/src/unix_utils/fork.rs.orig	2025-08-22 12:57:44.659695000 +0000
++++ libdd-common/src/unix_utils/fork.rs	2025-08-22 12:57:54.570083000 +0000
 @@ -1,7 +1,7 @@
  // Copyright 2025-Present Datadog, Inc. https://www.datadoghq.com/
  // SPDX-License-Identifier: Apache-2.0
diff --git a/devel/libdatadog/files/patch-datadog-crashtracker-src-collector-emitters.rs b/devel/libdatadog/files/patch-libdd-crashtracker-src-collector-emitters.rs
similarity index 88%
rename from devel/libdatadog/files/patch-datadog-crashtracker-src-collector-emitters.rs
rename to devel/libdatadog/files/patch-libdd-crashtracker-src-collector-emitters.rs
index 832facd4d141..9bfb47ff129d 100644
--- a/devel/libdatadog/files/patch-datadog-crashtracker-src-collector-emitters.rs
+++ b/devel/libdatadog/files/patch-libdd-crashtracker-src-collector-emitters.rs
@@ -1,5 +1,5 @@
---- datadog-crashtracker/src/collector/emitters.rs.orig	2025-11-03 12:41:37 UTC
-+++ datadog-crashtracker/src/collector/emitters.rs
+--- libdd-crashtracker/src/collector/emitters.rs.orig	2025-11-03 12:41:37 UTC
++++ libdd-crashtracker/src/collector/emitters.rs
 @@ -198,7 +198,7 @@ fn emit_proc_self_maps(w: &mut impl Write) -> Result<(
      Ok(())
  }
diff --git a/devel/libdatadog/files/patch-datadog-library-config-src-lib.rs b/devel/libdatadog/files/patch-libdd-library-config-src-lib.rs
similarity index 95%
rename from devel/libdatadog/files/patch-datadog-library-config-src-lib.rs
rename to devel/libdatadog/files/patch-libdd-library-config-src-lib.rs
index 7d4efe514104..bb8f28582e70 100644
--- a/devel/libdatadog/files/patch-datadog-library-config-src-lib.rs
+++ b/devel/libdatadog/files/patch-libdd-library-config-src-lib.rs
@@ -1,5 +1,5 @@
---- datadog-library-config/src/lib.rs.orig	2025-02-11 17:46:31 UTC
-+++ datadog-library-config/src/lib.rs
+--- libdd-library-config/src/lib.rs.orig	2025-02-11 17:46:31 UTC
++++ libdd-library-config/src/lib.rs
 @@ -461,14 +461,19 @@ pub enum Target {
  }
  
diff --git a/devel/libdatadog/pkg-plist b/devel/libdatadog/pkg-plist
index 2f3480baf6ca..84aa382fdf45 100644
--- a/devel/libdatadog/pkg-plist
+++ b/devel/libdatadog/pkg-plist
@@ -4,6 +4,7 @@ include/datadog/common.h
 include/datadog/crashtracker.h
 include/datadog/data-pipeline.h
 include/datadog/ddsketch.h
+include/datadog/ffe.h
 include/datadog/library-config.h
 include/datadog/live-debugger.h
 include/datadog/log.h
@@ -11,25 +12,27 @@ include/datadog/profiling.h
 include/datadog/telemetry.h
 lib/cmake/libdatadog/DataPipelineConfig.cmake
 lib/cmake/libdatadog/DatadogConfig.cmake
-lib/libdata_pipeline_ffi.a
-lib/libdata_pipeline_ffi.so
-lib/libdatadog_crashtracker_ffi.so
+lib/libdatadog_ffe_ffi.a
+lib/libdatadog_ffe_ffi.so
 lib/libdatadog_ipc_macros.so
-lib/libdatadog_library_config_ffi.a
-lib/libdatadog_library_config_ffi.so
 lib/libdatadog_live_debugger_ffi.a
 lib/libdatadog_live_debugger_ffi.so
-lib/libdatadog_log_ffi.a
-lib/libdatadog_log_ffi.so
 lib/libdatadog_profiling_ffi.a
 lib/libdatadog_profiling_ffi.so
 lib/libdatadog_sidecar_ffi.a
 lib/libdatadog_sidecar_ffi.so
 lib/libdatadog_sidecar_macros.so
-lib/libddsketch_ffi.a
-lib/libddsketch_ffi.so
-lib/libddtelemetry_ffi.a
-lib/libddtelemetry_ffi.so
+lib/liblibdd_crashtracker_ffi.so
+lib/liblibdd_data_pipeline_ffi.a
+lib/liblibdd_data_pipeline_ffi.so
+lib/liblibdd_ddsketch_ffi.a
+lib/liblibdd_ddsketch_ffi.so
+lib/liblibdd_library_config_ffi.a
+lib/liblibdd_library_config_ffi.so
+lib/liblibdd_log_ffi.a
+lib/liblibdd_log_ffi.so
+lib/liblibdd_telemetry_ffi.a
+lib/liblibdd_telemetry_ffi.so
 lib/libtarpc_plugins.so
 libdata/pkgconfig/datadog_profiling-static.pc
 libdata/pkgconfig/datadog_profiling.pc