[vlc-commits] [Git][videolan/vlc][master] 16 commits: contrib: ggml: use regular static library names

Steve Lhomme (@robUx4) gitlab at videolan.org
Mon May 25 08:56:54 UTC 2026



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




More information about the vlc-commits mailing list