Jean-Baptiste Kempf pushed to branch master at VideoLAN / VLC
Commits: 4946c94d by Steve Lhomme at 2026-05-08T15:39:08+02:00 contrib: sam3: build if not found It's not a huge library. - - - - - 1680ccd1 by Steve Lhomme at 2026-05-08T15:39:08+02:00 contrib: ggml: install the pkg-config file in the right place - - - - - a0f52da1 by Steve Lhomme at 2026-05-08T15:39:08+02:00 contrib: ggml: add missing link libraries in pkgconfig file Otherwise it doesn't link properly. - - - - - a17a5abd by Steve Lhomme at 2026-05-08T15:39:08+02:00 contrib: ggml: disable openmp Until it's properly linked via pkg-config. - - - - - 501b29a3 by Steve Lhomme at 2026-05-08T15:39:08+02:00 contrib: ggml: disable build on iOS as long as we target iOS 9 - - - - - 766f701a by Steve Lhomme at 2026-05-08T15:39:08+02:00 contrib: ggml: disable build on tvOS as long as we target tvOS 11.0 - - - - - 3d2abc00 by Steve Lhomme at 2026-05-08T15:39:08+02:00 contrib: ggml: disable build on macOS as long as we target macOS 10.13 - - - - - ae061397 by Steve Lhomme at 2026-05-08T15:39:08+02:00 contrib: ggml: use LoadPackagedLibrary in UWP Plugins could be loaded in the app package but we can't use system ones. - - - - - 60a164e8 by Steve Lhomme at 2026-05-08T15:39:08+02:00 contrib: ggml: update to 0.11.0 - - - - - 6ee4d2f0 by Steve Lhomme at 2026-05-08T15:39:08+02:00 contrib: opencv4: downgrade to 4.4 which BSD 3-clause licensed So we can always build it in tree. It switched to Apache 2.0 in 4.5.0 [^1]. [^1]: https://opencv.org/opencv-is-to-change-the-license-to-apache-2/ - - - - - 98cceeca by Steve Lhomme at 2026-05-08T15:39:08+02:00 contrib: opencv4: fix dependencies OpenCV doesn't use sam3 at all. It does use zlib, jpeg and png by default. - - - - - 0ab59a8f by Steve Lhomme at 2026-05-08T15:39:08+02:00 contrib: opencv4: don't build internal protobuf - - - - - 4c1089c2 by Steve Lhomme at 2026-05-08T15:39:08+02:00 contrib: opencv4: install pkgconfig file It's not installed by default and it's not clear how to force it. - - - - - d12f35b9 by Steve Lhomme at 2026-05-08T15:39:08+02:00 meson: add opencv_example plugin - - - - - 16f074a0 by Steve Lhomme at 2026-05-08T15:39:08+02:00 meson: add opencv_wrapper plugin - - - - - 7 changed files: - + contrib/src/ggml/0001-Use-LoadPackagedLibrary-in-UWP-builds.patch - contrib/src/ggml/SHA512SUMS - contrib/src/ggml/rules.mak - contrib/src/opencv4/SHA512SUMS - contrib/src/opencv4/rules.mak - contrib/src/sam3/rules.mak - modules/video_filter/meson.build Changes: ===================================== contrib/src/ggml/0001-Use-LoadPackagedLibrary-in-UWP-builds.patch ===================================== @@ -0,0 +1,28 @@ +From ed727ec6a420f48e44e8d91fec2889a96aa96e18 Mon Sep 17 00:00:00 2001 +From: Steve Lhomme <[email protected]> +Date: Thu, 7 May 2026 15:02:05 +0200 +Subject: [PATCH] Use LoadPackagedLibrary() in UWP builds + +--- + src/ggml-backend-dl.cpp | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/src/ggml-backend-dl.cpp b/src/ggml-backend-dl.cpp +index a65cf009..fedc97f4 100644 +--- a/src/ggml-backend-dl.cpp ++++ b/src/ggml-backend-dl.cpp +@@ -7,7 +7,11 @@ dl_handle * dl_load_library(const fs::path & path) { + DWORD old_mode = SetErrorMode(SEM_FAILCRITICALERRORS); + SetErrorMode(old_mode | SEM_FAILCRITICALERRORS); + ++#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) + HMODULE handle = LoadLibraryW(path.wstring().c_str()); ++#else ++ HMODULE handle = LoadPackagedLibrary(path.wstring().c_str(), 0); ++#endif + + SetErrorMode(old_mode); + +-- +2.52.0.windows.1 + ===================================== contrib/src/ggml/SHA512SUMS ===================================== @@ -1 +1 @@ -41f0aa3a0b6c5d449812c2d311cd5798748c3339a638fe7d6bc35b2d2ec471dcc88bf76bf092382728b353d3a18bfdae2458bc8c6ff330b2ef6e2870ebfb5eb3 ggml-0.10.0.tar.gz +c49b6498101f50a5ebde158f5707237f6df3af0182e819651003ec5f418144f9ca68cc8434189f2a658ea705269fad2d263cfe4931c12b369883aa5a66182ed9 ggml-0.11.0.tar.gz ===================================== contrib/src/ggml/rules.mak ===================================== @@ -1,6 +1,6 @@ # ggml -GGML_VERSION := 0.10.0 +GGML_VERSION := 0.11.0 GGML_URL := $(GITHUB)/ggml-org/ggml/archive/refs/tags/v$(GGML_VERSION).tar.gz ifeq ($(call need_pkg,"ggml"),) @@ -14,9 +14,15 @@ $(TARBALLS)/ggml-$(GGML_VERSION).tar.gz: ggml: ggml-$(GGML_VERSION).tar.gz .sum-ggml $(UNPACK) + # fix path to install ggml.pc + sed -i.orig 's,DESTINATION share/pkgconfig,DESTINATION $${CMAKE_INSTALL_LIBDIR}/pkgconfig,' $(UNPACK_DIR)/CMakeLists.txt + # add missing libraries + sed -i.orig 's, -lggml$$, -lggml -lggml-base -lggml-cpu,' $(UNPACK_DIR)/ggml.pc.in + $(APPLY) $(SRC)/ggml/0001-Use-LoadPackagedLibrary-in-UWP-builds.patch $(MOVE) GGML_CONF := \ + -DGGML_OPENMP=OFF \ -DGGML_BUILD_TESTS=OFF \ -DGGML_BUILD_EXAMPLES=OFF ===================================== contrib/src/opencv4/SHA512SUMS ===================================== @@ -1 +1 @@ -b4f7248f89f1cd146dbbae7860a17131cd29bd3cb81db1e678abfcfbf2d8fa4a7633bfd0edbf50afae7b838c8700e8c0d0bb05828139d5cb5662df6bbf3eb92c opencv-4.10.0.tar.gz +ce4bada7b57c1a00439eca02abcba262732d5eabfd26090f6f83642d747a9a1a7908230bcd01a2b999c509e0c43c8b0dcb2b93ac824518b79cffe533f22652bb opencv-4.4.0.tar.gz ===================================== contrib/src/opencv4/rules.mak ===================================== @@ -1,18 +1,16 @@ # OpenCV 4 -OPENCV4_VERSION := 4.10.0 +OPENCV4_VERSION := 4.4.0 OPENCV4_URL := $(GITHUB)/opencv/opencv/archive/$(OPENCV4_VERSION).tar.gz -ifdef GNUV3 ifneq ($(findstring opencv4,$(PKGS_ENABLE)),) PKGS += opencv4 ifeq ($(call need_pkg,"opencv4 >= 4.0.0"),) PKGS_FOUND += opencv4 endif endif -endif -DEPS_opencv4 = sam3 $(DEPS_sam3) +DEPS_opencv4 = zlib $(DEPS_zlib) jpeg $(DEPS_jpeg) png $(DEPS_png) $(TARBALLS)/opencv-$(OPENCV4_VERSION).tar.gz: $(call download_pkg,$(OPENCV4_URL),opencv4) @@ -21,9 +19,6 @@ $(TARBALLS)/opencv-$(OPENCV4_VERSION).tar.gz: opencv4: opencv-$(OPENCV4_VERSION).tar.gz .sum-opencv4 $(UNPACK) -# macosx_conversions.mm uses macOS-only API. Guard so it's not used on other Apple platforms - sed -i.orig '1s/^/#include <TargetConditionals.h>\n#if TARGET_OS_OSX\n/' $(UNPACK_DIR)/modules/imgcodecs/src/macosx_conversions.mm - echo '#endif /* TARGET_OS_OSX */' >> $(UNPACK_DIR)/modules/imgcodecs/src/macosx_conversions.mm $(MOVE) # only enable necessary pkgs @@ -53,7 +48,8 @@ OPENCV4_CONF := \ -DWITH_OPENJPEG=OFF \ -DWITH_JASPER=OFF \ -DWITH_TIFF=OFF \ - -DWITH_COCOA=OFF + -DWITH_COCOA=OFF \ + -DBUILD_PROTOBUF=OFF # NEON mandatory on aarch64 ifneq ($(findstring aarch64,$(HOST)),) @@ -69,9 +65,9 @@ OPENCV4_CONF += -DCV_ENABLE_INTRINSICS=OFF endif .opencv4: opencv4 toolchain.cmake - $(REQUIRE_GNUV3) $(CMAKECLEAN) $(HOSTVARS_CMAKE) $(CMAKE) $(OPENCV4_CONF) +$(CMAKEBUILD) $(CMAKEINSTALL) + install $(BUILD_DIR)/unix-install/opencv4.pc $(PREFIX)/lib/pkgconfig touch $@ \ No newline at end of file ===================================== contrib/src/sam3/rules.mak ===================================== @@ -3,6 +3,13 @@ SAM3_VERSION := 1.0.0 SAM3_URL := $(GITHUB)/PABannier/sam3.cpp/archive/refs/tags/v$(SAM3_VERSION).tar.gz +ifndef HAVE_IOS # ggml missing clock_gettime() when targeting iOS 9.0 +ifndef HAVE_TVOS # ggml missing std::filesystem::path when targeting tvOS 11.0 +ifndef HAVE_MACOSX # ggml missing std::filesystem::path when targeting tvOS 10.13 +PKGS += sam3 +endif +endif +endif ifeq ($(call need_pkg,"sam3"),) PKGS_FOUND += sam3 endif ===================================== modules/video_filter/meson.build ===================================== @@ -407,6 +407,20 @@ opencv_dep = dependency('opencv4', required: false, version: '>=4.0.0') +vlc_modules += { + 'name' : 'opencv_wrapper', + 'sources' : files('opencv_wrapper.c'), + 'dependencies' : [m_lib, opencv_dep], + 'enabled' : opencv_dep.found() +} + +vlc_modules += { + 'name' : 'opencv_example', + 'sources' : files('opencv_example.cpp'), + 'dependencies' : [m_lib, opencv_dep], + 'enabled' : opencv_dep.found() +} + sam3_dep = dependency('sam3', required: get_option('sam3')) View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/c85a5164193481f16d117c27b3f2310c4ac289aa...16f074a05ab7f01e801827c466277a16940e98a0 -- View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/c85a5164193481f16d117c27b3f2310c4ac289aa...16f074a05ab7f01e801827c466277a16940e98a0 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
