[vlc-commits] [Git][videolan/vlc][master] 24 commits: contribs: call CMAKEBUILD for the build folder

Hugo Beauzée-Luyssen (@chouquette) gitlab at videolan.org
Sat Sep 10 17:21:03 UTC 2022



Hugo Beauzée-Luyssen pushed to branch master at VideoLAN / VLC


Commits:
9b021153 by Steve Lhomme at 2022-09-10T12:37:35+00:00
contribs: call CMAKEBUILD for the build folder

No need to change the current directory.

- - - - -
0c327872 by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: build cmake targets in the same job pool as the other targets

I believe that's what the + is for. It's used on all other $(CMAKEBUILD)
calls.

- - - - -
0857e1c9 by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: aom: remove redundant flag

LDFLAGS is already set in HOSTVARS

- - - - -
180a3a2e by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: srt: don't set redundant CFLAGS/CXXFLAGS

They are already using $(PIC) with $(HOSTVARS_PIC)

- - - - -
9aee5328 by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: ebml: no need to disable ENABLE_WIN32_IO

It's off by default.

- - - - -
e1fb8bcb by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: fluidsynth: do not force FLUIDSYNTH_NOT_A_DLL

FLUIDSYNTH_NOT_A_DLL is not used anymore when built statically. Here's the file
used to generate the public header:

https://github.com/FluidSynth/fluidsynth/blob/v2.1.8/include/fluidsynth.cmake

- - - - -
bf1793ee by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: glew: don't force GLEW_USE_STATIC_LIBS

It's used to set the library prefix between glew (dynamic) and glew_s (static).
But only the static target (glew_s) is selected in our environment. It will
pick the proper prefix on its own. It's not even a public option to set.

- - - - -
9ac24e74 by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: projectM: remove unused cmake include options

These options don't exist. The others are set to non default values.

- - - - -
9d850c6a by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: libaribcaption: don't force coretext option

It's automatically enabled for Apple targets and not used otherwise.

- - - - -
50199cc9 by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: libaribcaption: don't force DirectWrite option

It's automatically enabled for Windows targets and not used otherwise..

- - - - -
993e42df by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: libaribcaption: always depend on freetype 2

The test was always true. Move the dependencies definitions higher in the
makefile, in line with other contribs.

- - - - -
d648f802 by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: libaribcaption: always use Freetype

The test was always true.

- - - - -
b92fa941 by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: libaribcaption: regroup depedency declarations together.

- - - - -
86ca8580 by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: libaribcaption: don't force CMAKE_POSITION_INDEPENDENT_CODE option

It has the same effect as using HOSTVARS_PIC which we already use.

- - - - -
3e093fac by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: soxr: bump the minumum cmake to use CMAKE_REQUIRED_LIBRARIES

lrint uses libm which is set in CMAKE_REQUIRED_LIBRARIES. But
check_function_exists() won't use it with cmake older than 3.12.

This removes the need for Wno-dev.

- - - - -
375d5a48 by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: soxr: remove default cmake option values

- - - - -
60b079bb by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: srt: use the recommended USE_ENCLIB to select gnutls

- - - - -
183ecb2e by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: srt: replace MSG_TRUNC with upstream fix

It can be removed once we update to the next release.

The previous patch potentially hides an error handling.

- - - - -
055841ec by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: srt: don't set default GNU folders

We do force CMAKE_INSTALL_LIBDIR which makes srt not use any other of the GNU
directories...

Merged upstream: https://github.com/Haivision/srt/pull/2450

- - - - -
06c6fccc by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: libebur128: update to latest 1.2.6

It contains Marvin's patch to respect BUILD_SHARED_LIBS.

- - - - -
780b04d3 by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: use internal CONF variables for the project configurations

This is how it's done for autotools target and some cmake targets. It makes
long lines a little better to read.

- - - - -
dd0c79a7 by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: remove CMakeCache.txt without changing the current directory

- - - - -
575c4acd by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: remove the CMakeCache.txt at every run

Just like we do with autotools builds, we configure the target every time we
build a contrib.

In the case of cmake, touching `toolchain.cmake` does rebuild the cmake
contribs but if there's a cache it's not reconfigured and doesn't rebuild
anything.

- - - - -
58bd8131 by Steve Lhomme at 2022-09-10T12:37:35+00:00
contrib: x265: remove CMAKE_SYSTEM_PROCESSOR already set in toolchain.cmake

- - - - -


28 changed files:

- contrib/src/aom/rules.mak
- contrib/src/chromaprint/rules.mak
- contrib/src/ebml/rules.mak
- contrib/src/fluid/rules.mak
- contrib/src/fluidlite/rules.mak
- contrib/src/glew/rules.mak
- contrib/src/glslang/rules.mak
- contrib/src/gme/rules.mak
- contrib/src/libaribcaption/rules.mak
- − contrib/src/libebur128/0001-CMake-Respect-the-BUILD_SHARED_LIBS-option-instead-o.patch
- contrib/src/libebur128/SHA512SUMS
- contrib/src/libebur128/rules.mak
- contrib/src/matroska/rules.mak
- contrib/src/mpcdec/rules.mak
- contrib/src/mysofa/rules.mak
- contrib/src/openjpeg/rules.mak
- contrib/src/projectM/rules.mak
- contrib/src/soxr/rules.mak
- + contrib/src/soxr/soxr-check-function.patch
- contrib/src/spatialaudio/rules.mak
- + contrib/src/srt/0001-build-always-use-GNUInstallDirs.patch
- − contrib/src/srt/0001-core-ifdef-MSG_TRUNC-nixes-fix.patch
- + contrib/src/srt/0001-core-remove-MSG_TRUNC-logging.patch
- contrib/src/srt/rules.mak
- contrib/src/taglib/rules.mak
- contrib/src/vulkan-headers/rules.mak
- contrib/src/vulkan-loader/rules.mak
- contrib/src/x265/rules.mak


Changes:

=====================================
contrib/src/aom/rules.mak
=====================================
@@ -28,8 +28,6 @@ ifdef HAVE_WIN32
 DEPS_aom += pthreads $(DEPS_pthreads)
 endif
 
-AOM_LDFLAGS := $(LDFLAGS)
-
 AOM_CONF := \
 	-DCONFIG_RUNTIME_CPU_DETECT=1 \
 	-DCONFIG_MULTITHREAD=1 \
@@ -80,7 +78,7 @@ endif
 .aom: aom toolchain.cmake
 	rm -rf $(PREFIX)/include/aom
 	cd $< && rm -rf aom_build && mkdir -p aom_build
-	cd $</aom_build && LDFLAGS="$(AOM_LDFLAGS)" $(HOSTVARS) $(CMAKE) ../ $(AOM_CONF)
+	cd $</aom_build && $(HOSTVARS) $(CMAKE) ../ $(AOM_CONF)
 	+$(CMAKEBUILD) $</aom_build
 	$(call pkg_static,"aom_build/aom.pc")
 	+$(CMAKEBUILD) $</aom_build --target install


=====================================
contrib/src/chromaprint/rules.mak
=====================================
@@ -22,6 +22,7 @@ chromaprint: chromaprint-$(CHROMAPRINT_VERSION).tar.gz .sum-chromaprint
 DEPS_chromaprint = ffmpeg $(DEPS_ffmpeg)
 
 .chromaprint: chromaprint toolchain.cmake
+	rm -f $</CMakeCache.txt
 	cd $< && $(HOSTVARS_PIC) $(CMAKE)
 	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/ebml/rules.mak
=====================================
@@ -18,6 +18,7 @@ ebml: libebml-$(EBML_VERSION).tar.xz .sum-ebml
 	$(MOVE)
 
 .ebml: ebml toolchain.cmake
-	cd $< && $(HOSTVARS_PIC) $(CMAKE) -DENABLE_WIN32_IO=OFF
+	rm -f $</CMakeCache.txt
+	cd $< && $(HOSTVARS_PIC) $(CMAKE)
 	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/fluid/rules.mak
=====================================
@@ -42,6 +42,7 @@ FLUIDCONF := \
 	-Denable-readline=0
 
 .fluid: fluidsynth toolchain.cmake
-	cd $< && $(HOSTVARS) CFLAGS="$(CFLAGS) -DFLUIDSYNTH_NOT_A_DLL" $(CMAKE) $(FLUIDCONF)
+	rm -f $</CMakeCache.txt
+	cd $< && $(HOSTVARS) $(CMAKE) $(FLUIDCONF)
 	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/fluidlite/rules.mak
=====================================
@@ -26,7 +26,7 @@ fluidlite: fluidlite-$(FLUID_HASH).tar.xz .sum-fluidlite
 	$(MOVE)
 
 .fluidlite: fluidlite toolchain.cmake
-	cd $< && rm -f CMakeCache.txt
+	rm -f $</CMakeCache.txt
 	cd $< && $(HOSTVARS) $(CMAKE)
 	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/glew/rules.mak
=====================================
@@ -17,6 +17,7 @@ glew: glew-$(GLEW_VERSION).tgz .sum-glew
 	$(MOVE)
 
 .glew: glew toolchain.cmake
-	cd $</build/cmake && $(HOSTVARS_PIC) $(CMAKE) -DGLEW_USE_STATIC_LIBS:BOOL=ON
+	rm -f $</build/cmake/CMakeCache.txt
+	cd $</build/cmake && $(HOSTVARS_PIC) $(CMAKE)
 	+$(CMAKEBUILD) $</build/cmake --target install
 	touch $@


=====================================
contrib/src/glslang/rules.mak
=====================================
@@ -27,8 +27,10 @@ glslang: glslang-$(GLSLANG_VERSION).tar.gz .sum-glslang
 	$(APPLY) $(SRC)/glslang/glslang-win32.patch
 	$(MOVE)
 
+GLSLANG_CONF := -DENABLE_GLSLANG_BINARIES=OFF
+
 .glslang: glslang toolchain.cmake
-	cd $< && $(HOSTVARS_PIC) CXXFLAGS="-DYYDEBUG=0" $(CMAKE) \
-	    -DENABLE_GLSLANG_BINARIES=OFF
+	rm -f $</CMakeCache.txt
+	cd $< && $(HOSTVARS_PIC) CXXFLAGS="-DYYDEBUG=0" $(CMAKE) $(GLSLANG_CONF)
 	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/gme/rules.mak
=====================================
@@ -21,7 +21,10 @@ game-music-emu: game-music-emu-$(GME_VERSION).tar.xz .sum-gme
 	$(call pkg_static,"gme/libgme.pc.in")
 	$(MOVE)
 
+GME_CONF := -DENABLE_UBSAN=OFF
+
 .gme: game-music-emu toolchain.cmake
-	cd $< && $(HOSTVARS_PIC) $(CMAKE) . -DENABLE_UBSAN=OFF
+	rm -f $</CMakeCache.txt
+	cd $< && $(HOSTVARS_PIC) $(CMAKE) . $(GME_CONF)
 	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/libaribcaption/rules.mak
=====================================
@@ -7,30 +7,26 @@ ifeq ($(call need_pkg,"libaribcaption"),)
 PKGS_FOUND += libaribcaption
 endif
 
-LIBARIBCC_WITH_FREETYPE = 1
-
 ifdef HAVE_ANDROID
 LIBARIBCC_WITH_FONTCONFIG = 0
-LIBARIBCC_WITH_CORETEXT = 0
-LIBARIBCC_WITH_DIRECTWRITE = 0
 else
 ifdef HAVE_DARWIN_OS
 LIBARIBCC_WITH_FONTCONFIG = 0
-LIBARIBCC_WITH_CORETEXT = 1
-LIBARIBCC_WITH_DIRECTWRITE = 0
 else
 ifdef HAVE_WIN32
 LIBARIBCC_WITH_FONTCONFIG = 0
-LIBARIBCC_WITH_CORETEXT = 0
-LIBARIBCC_WITH_DIRECTWRITE = 1
 else
 LIBARIBCC_WITH_FONTCONFIG = 1
-LIBARIBCC_WITH_CORETEXT = 0
-LIBARIBCC_WITH_DIRECTWRITE = 0
 endif
 endif
 endif
 
+DEPS_libaribcaption = freetype2 $(DEPS_freetype2)
+
+ifeq ($(LIBARIBCC_WITH_FONTCONFIG), 1)
+DEPS_libaribcaption += fontconfig $(DEPS_fontconfig)
+endif
+
 $(TARBALLS)/libaribcaption-$(LIBARIBCC_VERSION).tar.xz:
 	$(call download_git,$(LIBARIBCC_GITURL),,$(LIBARIBCC_HASH))
 
@@ -43,7 +39,6 @@ libaribcaption: libaribcaption-$(LIBARIBCC_VERSION).tar.xz .sum-libaribcaption
 	$(MOVE)
 
 LIBARIBCC_CONF := \
-	-DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=ON \
 	-DARIBCC_NO_EXCEPTIONS:BOOL=ON \
 	-DARIBCC_NO_RTTI:BOOL=ON
 
@@ -51,33 +46,17 @@ ifdef HAVE_ANDROID
 LIBARIBCC_CONF += -DARIBCC_IS_ANDROID:BOOL=ON
 endif
 
-ifeq ($(LIBARIBCC_WITH_FREETYPE), 1)
-DEPS_libaribcaption += freetype2 $(DEPS_freetype2)
 LIBARIBCC_CONF += -DARIBCC_USE_FREETYPE:BOOL=ON
-else
-LIBARIBCC_CONF += -DARIBCC_USE_FREETYPE:BOOL=OFF
-endif
 
 ifeq ($(LIBARIBCC_WITH_FONTCONFIG), 1)
-DEPS_libaribcaption += fontconfig $(DEPS_fontconfig)
 LIBARIBCC_CONF += -DARIBCC_USE_FONTCONFIG:BOOL=ON
 else
 LIBARIBCC_CONF += -DARIBCC_USE_FONTCONFIG:BOOL=OFF
 endif
 
-ifeq ($(LIBARIBCC_WITH_CORETEXT), 1)
-LIBARIBCC_CONF += -DARIBCC_USE_CORETEXT:BOOL=ON
-else
-LIBARIBCC_CONF += -DARIBCC_USE_CORETEXT:BOOL=OFF
-endif
-
-ifeq ($(LIBARIBCC_WITH_DIRECTWRITE), 1)
-LIBARIBCC_CONF += -DARIBCC_USE_DIRECTWRITE:BOOL=ON
-endif
-
 
 .libaribcaption: libaribcaption toolchain.cmake
-	cd $< && rm -f CMakeCache.txt
+	rm -f $</CMakeCache.txt
 	cd $< && $(HOSTVARS_PIC) $(CMAKE) $(LIBARIBCC_CONF)
-	cd $< && $(CMAKEBUILD) . --target install
+	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/libebur128/0001-CMake-Respect-the-BUILD_SHARED_LIBS-option-instead-o.patch deleted
=====================================
@@ -1,121 +0,0 @@
-From 92f0606875e60885f7c9f7543b6c72731c87e525 Mon Sep 17 00:00:00 2001
-From: Marvin Scholz <epirat07 at gmail.com>
-Date: Wed, 30 Sep 2020 12:31:17 +0200
-Subject: [PATCH] CMake: Respect the BUILD_SHARED_LIBS option instead of
- BUILD_STATIC_LIBS
-
-Instead of the custom BUILD_STATIC_LIBS option, properly respect the
-BUILD_SHARED_LIBS option as documented by CMake at
-https://cmake.org/cmake/help/latest/variable/BUILD_SHARED_LIBS.html
----
- CMakeLists.txt         |  9 +++++---
- ebur128/CMakeLists.txt | 52 +++++++++++++++++++++++-------------------
- 2 files changed, 35 insertions(+), 26 deletions(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index f741317..3901457 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -1,6 +1,9 @@
- cmake_minimum_required(VERSION 2.8.12 FATAL_ERROR)
- project(libebur128 C)
- 
-+option(BUILD_SHARED_LIBS
-+    "Build shared libraries instead of static ones" ON)
-+
- list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake)
- set(EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR})
- set(LIBRARY_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR})
-@@ -23,10 +26,10 @@ endif()
- message(STATUS "Status          found / disabled --")
- message(STATUS "queue.h:        ${SUMMARY_HAS_QUEUE}"        "     ${USE_QUEUE}")
- 
--if(BUILD_STATIC_LIBS)
--  message(STATUS "build static library and shared library!")
-+if(BUILD_SHARED_LIBS)
-+  message(STATUS "Building shared library (set BUILD_SHARED_LIBS to NO to build static)")
- else()
--  message(STATUS "not building static library, set BUILD_STATIC_LIBS to ON to enable")
-+  message(STATUS "Building static library")
- endif()
- 
- if(NOT ${SUMMARY_HAS_QUEUE} AND NOT ${ENABLE_INTERNAL_QUEUE_H})
-diff --git a/ebur128/CMakeLists.txt b/ebur128/CMakeLists.txt
-index d77385e..0e7845c 100644
---- a/ebur128/CMakeLists.txt
-+++ b/ebur128/CMakeLists.txt
-@@ -25,30 +25,37 @@ endif()
- set(EBUR128_VERSION_MAJOR 1)
- set(EBUR128_VERSION 1.2.4)
- 
--#### static
--if(BUILD_STATIC_LIBS)
--  add_library(ebur128_static STATIC ebur128.c)
--  if(NOT MSVC)
--    set_property(TARGET ebur128_static PROPERTY OUTPUT_NAME ebur128)
--  endif()
--endif()
-+add_library(ebur128 ebur128.c)
- 
--if(WITH_STATIC_PIC)
--  set_property(TARGET ebur128_static PROPERTY POSITION_INDEPENDENT_CODE ON)
--endif()
-+if(NOT BUILD_SHARED_LIBS)
-+  # Static build specific things
-+  if(WITH_STATIC_PIC)
-+    set_property(TARGET ebur128 PROPERTY POSITION_INDEPENDENT_CODE ON)
- 
--#### shared
--# set source file for library, which includes def file if using MSVC
--set(EBUR128_SHARED_SOURCE ebur128.c)
--if(MSVC)
--  set(EBUR128_SHARED_SOURCE ${EBUR128_SHARED_SOURCE} ebur128.def)
--endif()
-+    set_target_properties(ebur128 PROPERTIES
-+      SOVERSION ${EBUR128_VERSION_MAJOR}
-+      VERSION ${EBUR128_VERSION})
-+  endif()
- 
--add_library(ebur128 SHARED ${EBUR128_SHARED_SOURCE})
--set_target_properties(ebur128 PROPERTIES
-+else()
-+  # Share build specific things
-+  set_target_properties(ebur128 PROPERTIES
-     SOVERSION ${EBUR128_VERSION_MAJOR}
-     VERSION ${EBUR128_VERSION})
- 
-+  if(WIN32)
-+    set_target_properties(ebur128 PROPERTIES
-+      OUTPUT_NAME ebur128
-+      RUNTIME_OUTPUT_NAME ebur128-${EBUR128_VERSION_MAJOR}
-+      ARCHIVE_OUTPUT_NAME ebur128)
-+  endif(WIN32)
-+
-+  if(MSVC)
-+    target_sources(ebur128 PRIVATE ebur128.def)
-+  endif()
-+endif()
-+
-+# Link with Math library if available
- find_library(MATH_LIBRARY m)
- if(MATH_LIBRARY)
-   target_link_libraries(ebur128 ${MATH_LIBRARY})
-@@ -57,11 +64,10 @@ endif()
- set(EBUR128_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR} CACHE INTERNAL "")
- 
- install(FILES ebur128.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
--if(BUILD_STATIC_LIBS)
--  install(TARGETS ebur128 ebur128_static DESTINATION ${CMAKE_INSTALL_LIBDIR})
--else()
--  install(TARGETS ebur128 DESTINATION ${CMAKE_INSTALL_LIBDIR})
--endif()
-+install(TARGETS ebur128
-+  RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
-+  LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
-+  ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR})
- 
- #### pkg-config
- configure_file(${CMAKE_CURRENT_SOURCE_DIR}/libebur128.pc.cmake
--- 
-2.24.3 (Apple Git-128)
-


=====================================
contrib/src/libebur128/SHA512SUMS
=====================================
@@ -1 +1 @@
-d9aec133aca9240f7e859aae30cfcab07ba7aa20378187d53dfeec4cd3840d49bb117fa0698591bac04d95f9d8b5cd0b1fbe41c364694f2fa8267dd690b2dc02  libebur128-1.2.4.tar.gz
+ab188c6d32cd14613119258313a8a3fb1167b55501c9f5b6d3ba738d674bc58f24ac3034c23d9730ed8dc3e95a23619bfb81719e4c79807a9a16c1a5b3423582  libebur128-1.2.6.tar.gz


=====================================
contrib/src/libebur128/rules.mak
=====================================
@@ -1,6 +1,6 @@
 # EBU R128 standard for loudness normalisation
 
-LIBEBUR128_VERSION := 1.2.4
+LIBEBUR128_VERSION := 1.2.6
 LIBEBUR128_URL := https://github.com/jiixyj/libebur128/archive/v$(LIBEBUR128_VERSION).tar.gz
 
 PKGS += libebur128
@@ -16,10 +16,12 @@ $(TARBALLS)/libebur128-$(LIBEBUR128_VERSION).tar.gz:
 libebur128: libebur128-$(LIBEBUR128_VERSION).tar.gz .sum-libebur128
 	$(UNPACK)
 	$(call pkg_static,"./ebur128/libebur128.pc.cmake")
-	$(APPLY) $(SRC)/libebur128/0001-CMake-Respect-the-BUILD_SHARED_LIBS-option-instead-o.patch
 	$(MOVE)
 
+LIBEBUR128_CONF := -DENABLE_INTERNAL_QUEUE_H=TRUE
+
 .libebur128: libebur128 toolchain.cmake
-	cd $< && $(HOSTVARS_PIC) $(CMAKE) -DENABLE_INTERNAL_QUEUE_H=TRUE
+	rm -f $</CMakeCache.txt
+	cd $< && $(HOSTVARS_PIC) $(CMAKE) $(LIBEBUR128_CONF)
 	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/matroska/rules.mak
=====================================
@@ -22,6 +22,7 @@ matroska: libmatroska-$(MATROSKA_VERSION).tar.xz .sum-matroska
 	$(MOVE)
 
 .matroska: matroska toolchain.cmake
+	rm -f $</CMakeCache.txt
 	cd $< && $(HOSTVARS_PIC) $(CMAKE)
 	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/mpcdec/rules.mak
=====================================
@@ -41,8 +41,11 @@ ifdef HAVE_MACOSX
 endif
 	$(MOVE)
 
+MUSE_CONF := -DSHARED=OFF
+
 .mpcdec: musepack toolchain.cmake
-	cd $< && $(HOSTVARS_PIC) $(CMAKE) -DSHARED=OFF .
+	rm -f $</CMakeCache.txt
+	cd $< && $(HOSTVARS_PIC) $(CMAKE) $(MUSE_CONF)
 	+$(CMAKEBUILD) $< --target install
 	mkdir -p -- "$(PREFIX)/lib"
 	# Use globbing to work around cmake's change of destination file


=====================================
contrib/src/mysofa/rules.mak
=====================================
@@ -23,9 +23,11 @@ mysofa: libmysofa-$(MYSOFA_VERSION).tar.gz .sum-mysofa
 	$(UNPACK)
 	$(MOVE)
 
+MYSOFA_CONF := -DBUILD_TESTS=OFF
+
 .mysofa: mysofa toolchain.cmake
-	cd $< && rm -f CMakeCache.txt
-	cd $< && $(HOSTVARS) $(CMAKE) -DBUILD_TESTS=OFF
+	rm -f $</CMakeCache.txt
+	cd $< && $(HOSTVARS) $(CMAKE) $(MYSOFA_CONF)
 	+$(CMAKEBUILD) $< --target install
 	touch $@
 


=====================================
contrib/src/openjpeg/rules.mak
=====================================
@@ -26,10 +26,10 @@ endif
 	$(call pkg_static,"./src/lib/openjp2/libopenjp2.pc.cmake.in")
 	$(MOVE)
 
+OPENJPEG_CONF := -DBUILD_PKGCONFIG_FILES=ON -DBUILD_CODEC:bool=OFF
+
 .openjpeg: openjpeg toolchain.cmake
-	cd $< && $(HOSTVARS) $(CMAKE) \
-		-DBUILD_PKGCONFIG_FILES=ON \
-			-DBUILD_CODEC:bool=OFF \
-		.
+	rm -f $</CMakeCache.txt
+	cd $< && $(HOSTVARS) $(CMAKE) . $(OPENJPEG_CONF)
 	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/projectM/rules.mak
=====================================
@@ -15,6 +15,8 @@ ifeq ($(call need_pkg,"libprojectM"),)
 PKGS_FOUND += projectM
 endif
 
+DEPS_projectM = glew $(DEPS_glew)
+
 $(TARBALLS)/projectM-$(PROJECTM_VERSION)-Source.tar.gz:
 	$(call download_pkg,$(PROJECTM_URL),projectM)
 
@@ -33,17 +35,14 @@ endif
 	$(APPLY) $(SRC)/projectM/missing-includes.patch
 	$(MOVE)
 
-DEPS_projectM = glew $(DEPS_glew)
-
-.projectM: projectM toolchain.cmake
-	cd $< && rm -f CMakeCache.txt
-	cd $< && $(HOSTVARS) $(CMAKE) \
-		-DINCLUDE-PROJECTM-LIBVISUAL:BOOL=OFF \
+PROJECTM_CONF := \
 		-DDISABLE_NATIVE_PRESETS:BOOL=ON \
 		-DUSE_FTGL:BOOL=OFF \
-		-DINCLUDE-PROJECTM-PULSEAUDIO:BOOL=OFF \
-		-DINCLUDE-PROJECTM-QT:BOOL=OFF \
-		-DBUILD_PROJECTM_STATIC:BOOL=ON .
+		-DBUILD_PROJECTM_STATIC:BOOL=ON
+
+.projectM: projectM toolchain.cmake
+	rm -f $</CMakeCache.txt
+	cd $< && $(HOSTVARS) $(CMAKE) . $(PROJECTM_CONF)
 	+$(CMAKEBUILD) $< --target install
 	-cd $<; cp Renderer/libRenderer.a MilkdropPresetFactory/libMilkdropPresetFactory.a $(PREFIX)/lib
 	touch $@


=====================================
contrib/src/soxr/rules.mak
=====================================
@@ -21,6 +21,7 @@ soxr: soxr-$(SOXR_VERSION)-Source.tar.xz .sum-soxr
 	$(APPLY) $(SRC)/soxr/0003-add-aarch64-support.patch
 	$(APPLY) $(SRC)/soxr/0004-arm-fix-SIGILL-when-doing-divisions-on-some-old-arch.patch
 	$(APPLY) $(SRC)/soxr/find_ff_pkgconfig.patch
+	$(APPLY) $(SRC)/soxr/soxr-check-function.patch
 	$(call pkg_static,"src/soxr.pc.in")
 	$(MOVE)
 
@@ -32,15 +33,15 @@ SOXR_EXTRA_CONF=-DCMAKE_SYSTEM_NAME=Generic
 endif
 endif
 
-.soxr: soxr toolchain.cmake
-	rm -f $</CMakeCache.txt
-	cd $< && $(HOSTVARS_PIC) $(CMAKE) \
+SOXR_CONF := \
 		$(SOXR_EXTRA_CONF) \
-		-DBUILD_EXAMPLES=OFF \
 		-DBUILD_TESTS=OFF \
 		-DWITH_LSR_BINDINGS=OFF \
 		-DWITH_OPENMP=OFF \
-		-DWITH_AVFFT=ON \
-		-Wno-dev
+		-DWITH_AVFFT=ON
+
+.soxr: soxr toolchain.cmake
+	rm -f $</CMakeCache.txt
+	cd $< && $(HOSTVARS_PIC) $(CMAKE) $(SOXR_CONF)
 	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/soxr/soxr-check-function.patch
=====================================
@@ -0,0 +1,11 @@
+--- soxr/CMakeLists.txt.31	2022-09-01 14:44:39.096702600 +0200
++++ soxr/CMakeLists.txt	2022-09-01 14:44:30.250234300 +0200
+@@ -1,7 +1,7 @@
+ # SoX Resampler Library       Copyright (c) 2007-18 robs at users.sourceforge.net
+ # Licence for this file: LGPL v2.1                  See LICENCE for details.
+ 
+-cmake_minimum_required (VERSION 3.1 FATAL_ERROR)
++cmake_minimum_required (VERSION 3.12 FATAL_ERROR)
+ 
+ project (soxr C)
+ set (DESCRIPTION_SUMMARY


=====================================
contrib/src/spatialaudio/rules.mak
=====================================
@@ -20,8 +20,10 @@ spatialaudio: spatialaudio-$(SPATIALAUDIO_VERSION).tar.bz2 .sum-spatialaudio
 	$(UNPACK)
 	$(MOVE)
 
+SPATIALAUDIO_CONF := -DMYSOFA_ROOT_DIR=$(PREFIX) -DHAVE_MIT_HRTF=OFF
+
 .spatialaudio: spatialaudio toolchain.cmake
-	cd $< && rm -f CMakeCache.txt
-	cd $< && $(HOSTVARS) $(CMAKE) -DMYSOFA_ROOT_DIR=$(PREFIX) -DHAVE_MIT_HRTF=OFF
+	rm -f $</CMakeCache.txt
+	cd $< && $(HOSTVARS) $(CMAKE) $(SPATIALAUDIO_CONF)
 	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/srt/0001-build-always-use-GNUInstallDirs.patch
=====================================
@@ -0,0 +1,41 @@
+From e76d61dae5af710317a919f867b9b7a58adf6a39 Mon Sep 17 00:00:00 2001
+From: Steve Lhomme <robux4 at ycbcr.xyz>
+Date: Fri, 2 Sep 2022 09:46:56 +0200
+Subject: [PATCH] [build] always use GNUInstallDirs
+
+It's possible to use GNUInstallDirs and allow the user to force some specific
+target folder. The values set by the user are not overriden in that case [1]:
+
+> If the includer does not define a value the above-shown default will be used
+> and the value will appear in the cache for editing by the user.
+
+With MSVC builds this doesn't change the default values used to install targets.
+
+[1] https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html
+---
+ CMakeLists.txt | 9 +--------
+ 1 file changed, 1 insertion(+), 8 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ce3d0b8..05764e2 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -45,14 +45,7 @@ set_if(POSIX       LINUX OR DARWIN OR BSD OR SUNOS OR ANDROID OR (CYGWIN AND CYG
+ set_if(SYMLINKABLE LINUX OR DARWIN OR BSD OR SUNOS OR CYGWIN OR GNU)
+ set_if(NEED_DESTINATION  ${CMAKE_VERSION} VERSION_LESS "3.14.0")
+ 
+-# Not sure what to do in case of compiling by MSVC.
+-# This will make installdir in C:\Program Files\SRT then
+-# inside "bin" and "lib64" directories. At least this maintains
+-# the current status. Shall this be not desired, override values
+-# of CMAKE_INSTALL_BINDIR, CMAKE_INSTALL_LIBDIR and CMAKE_INSTALL_INCLUDEDIR.
+-if (NOT DEFINED CMAKE_INSTALL_LIBDIR)
+-	include(GNUInstallDirs)
+-endif()
++include(GNUInstallDirs)
+ 
+ # The CMAKE_BUILD_TYPE seems not to be always set, weird.
+ if (NOT DEFINED ENABLE_DEBUG)
+-- 
+2.37.3.windows.1
+


=====================================
contrib/src/srt/0001-core-ifdef-MSG_TRUNC-nixes-fix.patch deleted
=====================================
@@ -1,32 +0,0 @@
-From b159a783ac11cb6c2c8ec035deaeb3d8a73e0e2f Mon Sep 17 00:00:00 2001
-From: Francois Cartegnie <fcvlcdev at free.fr>
-Date: Mon, 9 Nov 2020 20:54:14 +0100
-Subject: [PATCH] core: ifdef MSG_TRUNC nixes fix
-
----
- srtcore/channel.cpp | 2 ++
- 1 file changed, 2 insertions(+)
-
-diff --git a/srtcore/channel.cpp b/srtcore/channel.cpp
-index 3473e75..3af852e 100644
---- a/srtcore/channel.cpp
-+++ b/srtcore/channel.cpp
-@@ -801,6 +801,7 @@ EReadStatus CChannel::recvfrom(sockaddr_any& w_addr, CPacket& w_packet) const
-         goto Return_error;
-     }
- 
-+#ifndef _WIN32
-     // Fix for an issue with Linux Kernel found during tests at Tencent..
-     //
-     // There was a bug in older Linux Kernel which caused that when the internal
-@@ -825,6 +826,7 @@ EReadStatus CChannel::recvfrom(sockaddr_any& w_addr, CPacket& w_packet) const
-         status = RST_AGAIN;
-         goto Return_error;
-     }
-+#endif
- 
-     w_packet.setLength(recv_size - CPacket::HDR_SIZE);
- 
--- 
-2.26.2
-


=====================================
contrib/src/srt/0001-core-remove-MSG_TRUNC-logging.patch
=====================================
@@ -0,0 +1,27 @@
+From 82a65778b2445d3b310c7fa870cfb6410307d31b Mon Sep 17 00:00:00 2001
+From: Steve Lhomme <robux4 at ycbcr.xyz>
+Date: Fri, 2 Sep 2022 09:12:03 +0200
+Subject: [PATCH] [core] remove MSG_TRUNC logging
+
+The code does not compile on platforms/SDKs where MSG_TRUNC doesn't exist
+(mingw-w64/windows).
+---
+ srtcore/channel.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/srtcore/channel.cpp b/srtcore/channel.cpp
+index 6d51487..30fd987 100644
+--- a/srtcore/channel.cpp
++++ b/srtcore/channel.cpp
+@@ -878,7 +878,7 @@ srt::EReadStatus srt::CChannel::recvfrom(sockaddr_any& w_addr, CPacket& w_packet
+     {
+         HLOGC(krlog.Debug,
+               log << CONID() << "NET ERROR: packet size=" << recv_size << " msg_flags=0x" << hex << msg_flags
+-                  << ", possibly MSG_TRUNC (0x" << hex << int(MSG_TRUNC) << ")");
++                  << ", possibly MSG_TRUNC)");
+         status = RST_AGAIN;
+         goto Return_error;
+     }
+-- 
+2.27.0.windows.1
+


=====================================
contrib/src/srt/rules.mak
=====================================
@@ -11,8 +11,6 @@ ifeq ($(call need_pkg,"srt >= 1.3.2"),)
 PKGS_FOUND += srt
 endif
 
-SRT_CFLAGS   := $(CFLAGS) $(PIC)
-SRT_CXXFLAGS := $(CXXFLAGS) $(PIC)
 DEPS_srt = gnutls $(DEPS_gnutls)
 ifdef HAVE_WIN32
 DEPS_srt += pthreads $(DEPS_pthreads)
@@ -26,12 +24,15 @@ $(TARBALLS)/srt-$(SRT_VERSION).tar.gz:
 
 srt: srt-$(SRT_VERSION).tar.gz .sum-srt
 	$(UNPACK)
-	$(APPLY) $(SRC)/srt/0001-core-ifdef-MSG_TRUNC-nixes-fix.patch
+	$(APPLY) $(SRC)/srt/0001-core-remove-MSG_TRUNC-logging.patch
+	$(APPLY) $(SRC)/srt/0001-build-always-use-GNUInstallDirs.patch
 	$(call pkg_static,"scripts/srt.pc.in")
 	mv srt-$(SRT_VERSION) $@ && touch $@
 
+SRT_CONF := -DENABLE_SHARED=OFF -DUSE_ENCLIB=gnutls -DENABLE_CXX11=OFF
+
 .srt: srt toolchain.cmake
-	cd $< && $(HOSTVARS_PIC) CFLAGS="$(SRT_CFLAGS)" CXXFLAGS="$(SRT_CXXFLAGS)" $(CMAKE) \
-		-DENABLE_SHARED=OFF -DUSE_GNUTLS=ON -DENABLE_CXX11=OFF -DCMAKE_INSTALL_LIBDIR=lib -DCMAKE_INSTALL_BINDIR=bin -DCMAKE_INSTALL_INCLUDEDIR=include
+	rm -f $</CMakeCache.txt
+	cd $< && $(HOSTVARS_PIC) $(CMAKE) $(SRT_CONF)
 	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/taglib/rules.mak
=====================================
@@ -20,6 +20,7 @@ taglib: taglib-$(TAGLIB_VERSION).tar.gz .sum-taglib
 	$(MOVE)
 
 .taglib: taglib toolchain.cmake
+	rm -f $</CMakeCache.txt
 	cd $< && $(HOSTVARS_PIC) $(CMAKE) .
 	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/vulkan-headers/rules.mak
=====================================
@@ -13,6 +13,7 @@ vulkan-headers: Vulkan-Headers-$(VULKAN_HEADERS_VERSION).tar.gz .sum-vulkan-head
 	$(MOVE)
 
 .vulkan-headers: vulkan-headers toolchain.cmake
+	rm -f $</CMakeCache.txt
 	cd $< && $(HOSTVARS) $(CMAKE)
 	+$(CMAKEBUILD) $< --target install
 	touch $@


=====================================
contrib/src/vulkan-loader/rules.mak
=====================================
@@ -56,7 +56,7 @@ VULKAN_LOADER_ENV_CONF = \
 	cd $< && rm -rf ./build && mkdir -p build
 	cd $</build && $(VULKAN_LOADER_ENV_CONF) $(HOSTVARS) \
 		$(CMAKE) $(VULKAN_LOADER_CONF) ..
-	cd $</build && $(CMAKEBUILD) .
+	+$(CMAKEBUILD) $</build
 
 ifdef HAVE_WIN32
 # CMake will generate a .pc file with -lvulkan even if the static library


=====================================
contrib/src/x265/rules.mak
=====================================
@@ -35,9 +35,12 @@ ifndef HAVE_WIN32
 endif
 	$(MOVE)
 
+X265_CONF := -DENABLE_SHARED=OFF -DENABLE_CLI=OFF
+
 .x265: x265 toolchain.cmake
 	$(REQUIRE_GPL)
-	cd $</source && $(HOSTVARS_PIC) $(CMAKE) -DENABLE_SHARED=OFF -DCMAKE_SYSTEM_PROCESSOR=$(ARCH) -DENABLE_CLI=OFF
+	rm -f $</source/CMakeCache.txt
+	cd $</source && $(HOSTVARS_PIC) $(CMAKE) $(X265_CONF)
 	+$(CMAKEBUILD) $</source --target install
 	sed -e s/'[^ ]*clang_rt[^ ]*'//g -i.orig "$(PREFIX)/lib/pkgconfig/x265.pc"
 	touch $@



View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/5c2c7a8bd2ec78507fe0634372ac801984d5535c...58bd81312a73cd3f7662a237762607cac72d87ea

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/5c2c7a8bd2ec78507fe0634372ac801984d5535c...58bd81312a73cd3f7662a237762607cac72d87ea
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance


More information about the vlc-commits mailing list