Steve Lhomme pushed to branch master at VideoLAN / VLC


Commits:
d5dce94b by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: ggml: use regular static library names

No need to hack Windows builds.

- - - - -
b7bc7c04 by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: add objdetect module

It's needed by the opencv_example module.

- - - - -
5d3e42b1 by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: force using contribs

Otherwise it refuses to use pkg-config when cross compiling:

> OpenCV disables pkg-config to avoid using of host libraries. Consider using 
> PKG_CONFIG_LIBDIR to specify target SYSROOT

- - - - -
b92ae505 by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: don't build contribs we already have

We depend on them since 98cceecad7d997d882d88b0b64ecfd60e50dfda8.

- - - - -
0e9b2802 by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: don't build contribs with carotene

This ancient library is not useful anymore.

- - - - -
0af02c29 by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: don't build with ADE

It's not used in the pkg-config file.

- - - - -
064a0ee9 by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: depend on protobuf if it's built

- - - - -
5dd8827b by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: fix build with newer CMake

- - - - -
b38bf1de by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: enable pkg-config on all configurations

- - - - -
8bb6f198 by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: always install the pkg-config file

- - - - -
4d125821 by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: disable Android java code

- - - - -
a232f455 by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: disable Intel Trace library

- - - - -
662180b5 by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: fix intrin.h case

- - - - -
596e3e68 by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: disable in UWP builds

It uses ppltasks.h that doesn't exist in mingw-w64.

- - - - -
cd04cf65 by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: force statically linked pkg-config file

- - - - -
5bdf162c by Steve Lhomme at 2026-05-25T06:32:01+00:00
contrib: opencv4: build by default

- - - - -


2 changed files:

- contrib/src/ggml/rules.mak
- contrib/src/opencv4/rules.mak


Changes:

=====================================
contrib/src/ggml/rules.mak
=====================================
@@ -18,6 +18,8 @@ ggml: ggml-$(GGML_VERSION).tar.gz .sum-ggml
        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
+       # use regular static library names
+       sed -i.orig 
's,set(CMAKE_STATIC_LIBRARY_PREFIX,#set(CMAKE_STATIC_LIBRARY_PREFIX,' 
$(UNPACK_DIR)/CMakeLists.txt
        $(APPLY) $(SRC)/ggml/0001-Use-LoadPackagedLibrary-in-UWP-builds.patch
        $(MOVE)
 


=====================================
contrib/src/opencv4/rules.mak
=====================================
@@ -3,14 +3,17 @@
 OPENCV4_VERSION := 4.4.0
 OPENCV4_URL := $(GITHUB)/opencv/opencv/archive/$(OPENCV4_VERSION).tar.gz
 
-ifneq ($(findstring opencv4,$(PKGS_ENABLE)),)
+ifndef HAVE_WINSTORE # uses winrt APIs not working with mingw
 PKGS += opencv4
+endif
 ifeq ($(call need_pkg,"opencv4 >= 4.0.0"),)
 PKGS_FOUND += opencv4
 endif
-endif
 
 DEPS_opencv4 = zlib $(DEPS_zlib) jpeg $(DEPS_jpeg) png $(DEPS_png)
+ifneq ($(findstring protobuf,$(PKGS)),)
+DEPS_opencv4 = protobuf $(DEPS_protobuf)
+endif
 
 $(TARBALLS)/opencv-$(OPENCV4_VERSION).tar.gz:
        $(call download_pkg,$(OPENCV4_URL),opencv4)
@@ -19,15 +22,28 @@ $(TARBALLS)/opencv-$(OPENCV4_VERSION).tar.gz:
 
 opencv4: opencv-$(OPENCV4_VERSION).tar.gz .sum-opencv4
        $(UNPACK)
+       # fix build with newer CMake
+       sed -i.orig 's,cmake_minimum_required(VERSION 
2.8.12.2),cmake_minimum_required(VERSION 3.5),' 
$(UNPACK_DIR)/cmake/OpenCVGenPkgconfig.cmake
+       # enable pkg-config on all configurations
+       sed -i.orig 's,if(MSVC OR IOS),if(0),' 
$(UNPACK_DIR)/cmake/OpenCVGenPkgconfig.cmake
+       # always install pkgconfig file
+       sed -i.orig 's,if(UNIX AND NOT ANDROID),if(1),' 
$(UNPACK_DIR)/cmake/OpenCVGenPkgconfig.cmake
+       # fix ARM intrin.h case
+       sed -i.orig 's,Intrin.h,intrin.h,g' 
$(UNPACK_DIR)/modules/core/include/opencv2/core/cv_cpu_dispatch.h
+       sed -i.orig 's,Intrin.h,intrin.h,' 
$(UNPACK_DIR)/cmake/checks/cpu_neon.cpp
+       sed -i.orig 's,Intrin.h,intrin.h,' 
$(UNPACK_DIR)/modules/flann/include/opencv2/flann/dist.h
+       $(call pkg_static,"cmake/templates/opencv-XXX.pc.in")
        $(MOVE)
 
 # only enable necessary pkgs
+OPENCV4_ENV =
 OPENCV4_CONF := \
-       -DBUILD_LIST=core,imgproc,imgcodecs \
+       -DBUILD_LIST=core,imgproc,imgcodecs,objdetect \
        -DOPENCV_GENERATE_PKGCONFIG=ON \
        -DBUILD_EXAMPLES=OFF \
        -DBUILD_TESTS=OFF \
        -DBUILD_ANDROID_EXAMPLES=OFF \
+       -DBUILD_ANDROID_PROJECTS=OFF \
        -DBUILD_PERF_TESTS=OFF \
        -DBUILD_DOCS=OFF \
        -DBUILD_opencv_apps=OFF \
@@ -49,7 +65,13 @@ OPENCV4_CONF := \
        -DWITH_JASPER=OFF \
        -DWITH_TIFF=OFF \
        -DWITH_COCOA=OFF \
-       -DBUILD_PROTOBUF=OFF
+       -DBUILD_PROTOBUF=OFF \
+       -DWITH_CAROTENE=OFF \
+       -DWITH_ADE=OFF \
+       -DBUILD_ZLIB=OFF \
+       -DBUILD_PNG=OFF \
+       -DBUILD_JPEG=OFF \
+       -DBUILD_ITT=OFF
 
 # NEON mandatory on aarch64
 ifneq ($(findstring aarch64,$(HOST)),)
@@ -64,10 +86,14 @@ ifneq ($(findstring emscripten,$(HOST)),)
 OPENCV4_CONF += -DCV_ENABLE_INTRINSICS=OFF
 endif
 
+ifdef HAVE_CROSS_COMPILE
+# force detecting contribs with pkg-config
+OPENCV4_ENV += PKG_CONFIG_LIBDIR="$(PKG_CONFIG_PATH)"
+endif
+
 .opencv4: opencv4 toolchain.cmake
        $(CMAKECLEAN)
-       $(HOSTVARS_CMAKE) $(CMAKE) $(OPENCV4_CONF)
+       $(HOSTVARS_CMAKE) $(OPENCV4_ENV) $(CMAKE) $(OPENCV4_CONF)
        +$(CMAKEBUILD)
        $(CMAKEINSTALL)
-       install $(BUILD_DIR)/unix-install/opencv4.pc $(PREFIX)/lib/pkgconfig
        touch $@
\ No newline at end of file



View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/bd829f62f1c6d9ab5a955d48e416a929418f5646...5bdf162cd5466c00c32cbdc1ec9d5a79d6a427b3

-- 
View it on GitLab: 
https://code.videolan.org/videolan/vlc/-/compare/bd829f62f1c6d9ab5a955d48e416a929418f5646...5bdf162cd5466c00c32cbdc1ec9d5a79d6a427b3
You're receiving this email because of your account on code.videolan.org. 
Manage all notifications: https://code.videolan.org/-/profile/notifications | 
Help: https://code.videolan.org/help


_______________________________________________
vlc-commits mailing list
[email protected]
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to