Steve Lhomme pushed to branch master at VideoLAN / VLC
Commits: f00f551b by Martin Storsjö at 2026-05-03T14:44:21+00:00 contrib: libaribcaption: Add missing includes This fixes building with libc++ with _LIBCPP_REMOVE_TRANSITIVE_INCLUDES set (which removes unnecessary transitive dependencies, making it more strict wrt including all the right headers). This will become the default in a few versions. This is a backport of upstream commit c09831c1ed0fd4ea91a7f1f4ec539fede507c25f. - - - - - 51756875 by Martin Storsjö at 2026-05-03T14:44:21+00:00 contrib: ebml: Add missing includes This fixes building with libc++ with _LIBCPP_REMOVE_TRANSITIVE_INCLUDES set (which removes unnecessary transitive dependencies, making it more strict wrt including all the right headers). This will become the default in a few versions. This is a backport of upstream commits f2b7fb66229705f43f744cd5e4732b83803828c4 and 3a2ab2c706b31fea4f92cd362c93e2aa7875ccf8. - - - - - d6d8a3b5 by Martin Storsjö at 2026-05-03T14:44:21+00:00 contrib: taglib: Add missing includes This fixes building with libc++ with _LIBCPP_REMOVE_TRANSITIVE_INCLUDES set (which removes unnecessary transitive dependencies, making it more strict wrt including all the right headers). This will become the default in a few versions. This is a backport of upstream commit 3c917caf52b6d14bfb548d4dc27d8601815edbe2. - - - - - e82e3968 by Martin Storsjö at 2026-05-03T14:44:21+00:00 modules: Add missing includes This fixes building with libc++ with _LIBCPP_REMOVE_TRANSITIVE_INCLUDES set (which removes unnecessary transitive dependencies, making it more strict wrt including all the right headers). This will become the default in a few versions. There are potentially other cases missing as well, but these are the ones that come up in a mingw build. - - - - - 13 changed files: - + contrib/src/ebml/0001-include-iterator-for-std-back_inserter.patch - + contrib/src/ebml/0002-include-new-for-std-nothrow.patch - contrib/src/ebml/rules.mak - + contrib/src/libaribcaption/0001-Add-missing-includes.patch - contrib/src/libaribcaption/rules.mak - + contrib/src/taglib/0001-Fix-std-ostream-not-defined-on-Android-NDK-29.0.1403.patch - contrib/src/taglib/rules.mak - modules/access/live555.cpp - modules/demux/adaptive/http/HTTPConnection.cpp - modules/demux/adaptive/plumbing/FakeESOut.cpp - modules/demux/smooth/playlist/CodecParameters.cpp - modules/stream_out/sdi/DBMSDIOutput.cpp - modules/stream_out/sdi/SDIAudioMultiplex.cpp Changes: ===================================== contrib/src/ebml/0001-include-iterator-for-std-back_inserter.patch ===================================== @@ -0,0 +1,37 @@ +From 3a2ab2c706b31fea4f92cd362c93e2aa7875ccf8 Mon Sep 17 00:00:00 2001 +From: Steve Lhomme <[email protected]> +Date: Sat, 2 May 2026 10:19:11 +0200 +Subject: [PATCH 1/2] include iterator for std::back_inserter + +--- + src/EbmlMaster.cpp | 1 + + src/EbmlUnicodeString.cpp | 1 + + 2 files changed, 2 insertions(+) + +diff --git a/src/EbmlMaster.cpp b/src/EbmlMaster.cpp +index 465560f..1340931 100644 +--- a/src/EbmlMaster.cpp ++++ b/src/EbmlMaster.cpp +@@ -36,6 +36,7 @@ + + #include <cassert> + #include <algorithm> ++#include <iterator> + + #include "ebml/EbmlMaster.h" + #include "ebml/EbmlStream.h" +diff --git a/src/EbmlUnicodeString.cpp b/src/EbmlUnicodeString.cpp +index 570af17..481e358 100644 +--- a/src/EbmlUnicodeString.cpp ++++ b/src/EbmlUnicodeString.cpp +@@ -36,6 +36,7 @@ + */ + + #include <cassert> ++#include <iterator> + #include <limits> + + #include "ebml/EbmlUnicodeString.h" +-- +2.43.0 + ===================================== contrib/src/ebml/0002-include-new-for-std-nothrow.patch ===================================== @@ -0,0 +1,64 @@ +From 9b4f8cd0400dff2084c9a54d6d521efb92622960 Mon Sep 17 00:00:00 2001 +From: Steve Lhomme <[email protected]> +Date: Sat, 2 May 2026 10:20:51 +0200 +Subject: [PATCH 2/2] include new for std::nothrow + +--- + src/EbmlCrc32.cpp | 2 ++ + src/EbmlElement.cpp | 1 + + src/EbmlString.cpp | 1 + + src/EbmlUnicodeString.cpp | 1 + + 4 files changed, 5 insertions(+) + +diff --git a/src/EbmlCrc32.cpp b/src/EbmlCrc32.cpp +index 45765bf..65ee319 100644 +--- a/src/EbmlCrc32.cpp ++++ b/src/EbmlCrc32.cpp +@@ -38,6 +38,8 @@ + #include "ebml/EbmlContexts.h" + #include "ebml/MemIOCallback.h" + ++#include <new> ++ + #ifdef WORDS_BIGENDIAN + static constexpr uint32_t CRC32_INDEX(uint32_t c) { return c >> 24; } + static constexpr uint32_t CRC32_SHIFTED(uint32_t c) { return c << 8; } +diff --git a/src/EbmlElement.cpp b/src/EbmlElement.cpp +index 6f974c5..2bbf653 100644 +--- a/src/EbmlElement.cpp ++++ b/src/EbmlElement.cpp +@@ -36,6 +36,7 @@ + #include <cstdlib> + #include <cstring> + #include <iostream> ++#include <new> + #include <stdexcept> + #include <sstream> + +diff --git a/src/EbmlString.cpp b/src/EbmlString.cpp +index 66b3338..fbfdf96 100644 +--- a/src/EbmlString.cpp ++++ b/src/EbmlString.cpp +@@ -34,6 +34,7 @@ + \author Steve Lhomme <robux4 @ users.sf.net> + */ + #include <cassert> ++#include <new> + #include <limits> + + #include "ebml/EbmlString.h" +diff --git a/src/EbmlUnicodeString.cpp b/src/EbmlUnicodeString.cpp +index 481e358..dd77200 100644 +--- a/src/EbmlUnicodeString.cpp ++++ b/src/EbmlUnicodeString.cpp +@@ -38,6 +38,7 @@ + #include <cassert> + #include <iterator> + #include <limits> ++#include <new> + + #include "ebml/EbmlUnicodeString.h" + +-- +2.43.0 + ===================================== contrib/src/ebml/rules.mak ===================================== @@ -19,6 +19,8 @@ ebml: libebml-$(EBML_VERSION).tar.xz .sum-ebml $(APPLY) $(SRC)/ebml/0001-EbmlMaster-fix-leak-when-reading-upper-level-element.patch $(APPLY) $(SRC)/ebml/0002-EbmlMaster-exit-reading-loop-if-upper-element-found-.patch $(APPLY) $(SRC)/ebml/0001-EbmlHead-do-not-allow-to-have-an-infinite-unknown-si.patch + $(APPLY) $(SRC)/ebml/0001-include-iterator-for-std-back_inserter.patch + $(APPLY) $(SRC)/ebml/0002-include-new-for-std-nothrow.patch $(MOVE) .ebml: ebml toolchain.cmake ===================================== contrib/src/libaribcaption/0001-Add-missing-includes.patch ===================================== @@ -0,0 +1,35 @@ +From c09831c1ed0fd4ea91a7f1f4ec539fede507c25f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Martin=20Storsj=C3=B6?= <[email protected]> +Date: Fri, 1 May 2026 22:32:42 +0300 +Subject: [PATCH] Add missing includes + +This file uses std::nothrow which is declared in <new>, and +free() which is declared in stdlib.h. + +Previously, these declarations have been included implicitly +through transitive include files. However, libc++ will soon +reduce the number of extra transitive include files [1], and when +this happens, building fails unless <new> and <stdlib.h> +explicitly are included here. + +[1] https://discourse.llvm.org/t/rfc-remove-unused-transitive-includes-from-the-libc-headers/90157 +--- + src/common/caption_capi.cpp | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/common/caption_capi.cpp b/src/common/caption_capi.cpp +index 7a7336c..165385f 100644 +--- a/src/common/caption_capi.cpp ++++ b/src/common/caption_capi.cpp +@@ -19,6 +19,8 @@ + #include <cstddef> + #include <cstdint> + #include <cstring> ++#include <new> ++#include <stdlib.h> + #include "aribcaption/caption.h" + #include "aribcaption/caption.hpp" + #include "base/utf_helper.hpp" +-- +2.43.0 + ===================================== contrib/src/libaribcaption/rules.mak ===================================== @@ -34,6 +34,7 @@ $(TARBALLS)/libaribcaption-$(LIBARIBCC_VERSION).tar.gz: libaribcaption: libaribcaption-$(LIBARIBCC_VERSION).tar.gz .sum-libaribcaption $(UNPACK) $(APPLY) $(SRC)/libaribcaption/0001-Fix-libunwind-static-linking-on-Android-toolchains.patch + $(APPLY) $(SRC)/libaribcaption/0001-Add-missing-includes.patch $(MOVE) LIBARIBCC_CONF := \ ===================================== contrib/src/taglib/0001-Fix-std-ostream-not-defined-on-Android-NDK-29.0.1403.patch ===================================== @@ -0,0 +1,26 @@ +From 3c917caf52b6d14bfb548d4dc27d8601815edbe2 Mon Sep 17 00:00:00 2001 +From: Artem Umerov <[email protected]> +Date: Thu, 4 Sep 2025 09:28:25 +0300 +Subject: [PATCH] Fix std::ostream not defined on Android NDK 29.0.14033849 + +Fix std::ostream not defined on Android NDK 29.0.14033849 +--- + taglib/toolkit/tvariant.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/taglib/toolkit/tvariant.h b/taglib/toolkit/tvariant.h +index a8408e54..26c67ec3 100644 +--- a/taglib/toolkit/tvariant.h ++++ b/taglib/toolkit/tvariant.h +@@ -26,7 +26,7 @@ + #ifndef TAGLIB_VARIANT_H + #define TAGLIB_VARIANT_H + +-#include <iosfwd> ++#include <sstream> + + #include "tlist.h" + #include "tmap.h" +-- +2.43.0 + ===================================== contrib/src/taglib/rules.mak ===================================== @@ -24,6 +24,7 @@ $(TARBALLS)/utfcpp-$(UTFCPP_VERSION).tar.gz: taglib: taglib-$(TAGLIB_VERSION).tar.gz .sum-taglib $(UNPACK) + $(APPLY) $(SRC)/taglib/0001-Fix-std-ostream-not-defined-on-Android-NDK-29.0.1403.patch $(MOVE) taglib/3rdparty/utfcpp: utfcpp-$(UTFCPP_VERSION).tar.gz .sum-utfcpp taglib ===================================== modules/access/live555.cpp ===================================== @@ -36,6 +36,7 @@ #include <climits> #include <cstdint> #include <new> +#include <cstdlib> #include <vlc_common.h> #include <vlc_arrays.h> ===================================== modules/demux/adaptive/http/HTTPConnection.cpp ===================================== @@ -28,6 +28,7 @@ #include "../plumbing/SourceStream.hpp" #include <optional> +#include <cstdlib> #include <vlc_stream.h> #include <vlc_keystore.h> ===================================== modules/demux/adaptive/plumbing/FakeESOut.cpp ===================================== @@ -28,6 +28,7 @@ #include <vlc_es_out.h> #include <vlc_block.h> #include <cassert> +#include <cstdlib> using namespace adaptive; ===================================== modules/demux/smooth/playlist/CodecParameters.cpp ===================================== @@ -23,6 +23,8 @@ #include "CodecParameters.hpp" +#include <cstdlib> + using namespace smooth::playlist; CodecParameters::CodecParameters() ===================================== modules/stream_out/sdi/DBMSDIOutput.cpp ===================================== @@ -23,6 +23,7 @@ #endif #include <algorithm> +#include <cstdlib> #include <vlc_common.h> #include <vlc_es.h> ===================================== modules/stream_out/sdi/SDIAudioMultiplex.cpp ===================================== @@ -27,6 +27,7 @@ #include <limits> #include <cstring> #include <algorithm> +#include <cstdlib> using namespace sdi_sout; View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/4360268a8f1f5071d371641056161ef5bddf3c08...e82e3968785a4e06ecd964200aebcc277a7e0dbe -- View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/4360268a8f1f5071d371641056161ef5bddf3c08...e82e3968785a4e06ecd964200aebcc277a7e0dbe You're receiving this email because of your account on code.videolan.org.
_______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
