[vlc-commits] [Git][videolan/vlc][3.0.x] 6 commits: contrib: qt: remove variable hack for pthread-GC2

Steve Lhomme (@robUx4) gitlab at videolan.org
Sat Dec 13 11:57:30 UTC 2025



Steve Lhomme pushed to branch 3.0.x at VideoLAN / VLC


Commits:
a84629dd by Steve Lhomme at 2025-12-13T11:17:00+00:00
contrib: qt: remove variable hack for pthread-GC2

We don't use pthread-GC2 since 0885d5e47aa7b10a0d3e9e8d1162714317705b0b.

- - - - -
fc53f681 by Steve Lhomme at 2025-12-13T11:17:00+00:00
contrib: qt: disable XCB when building for Windows

- - - - -
404aac82 by Steve Lhomme at 2025-12-13T11:17:00+00:00
contrib: qt: only build the folders that we install and use jobserver

We don't care about examples, qmake, doc, etc.

- - - - -
31854254 by Steve Lhomme at 2025-12-13T11:17:00+00:00
contrib: qt: always install qmake + mkspecs and use jobserver

We don't need to build it again, it's always built as a native tool
when running configure.

It's needed for QtSvg since 189ca8feb6c784101a879895e8ad7cd793a0f16c.

- - - - -
b8aad6b6 by Steve Lhomme at 2025-12-13T11:17:00+00:00
contrib: qt: don't rebuild native uic/rcc/moc

They are already built and installed a few lines above.

- - - - -
855d4d36 by Steve Lhomme at 2025-12-13T11:17:00+00:00
contrib: qtsvg: simplify build calls and use jobserver

There are only the plugins and svg subtargets so we can just call the install for all 'src'.

- - - - -


2 changed files:

- contrib/src/qt/rules.mak
- contrib/src/qtsvg/rules.mak


Changes:

=====================================
contrib/src/qt/rules.mak
=====================================
@@ -52,10 +52,6 @@ ifdef HAVE_MACOSX
 QT_PLATFORM := -platform darwin-g++
 endif
 ifdef HAVE_WIN32
-# filter out the contrib includes as Qt doesn't ike pthread-GC2 headers
-QT_VARS := CFLAGS="$(shell echo $$CFLAGS | sed 's@ -I$$(PREFIX)/include@@g')" \
-         CXXFLAGS="$(shell echo $$CXXFLAGS | sed 's@ -I$$(PREFIX)/include@@g')" \
-         LDFLAGS="-L$(PREFIX)/lib $(EXTRA_LDFLAGS)"
 ifdef HAVE_CLANG
 QT_SPEC := win32-clang-g++
 else
@@ -68,18 +64,21 @@ QT_CONFIG := -static -opensource -confirm-license -no-pkg-config \
 	-no-sql-sqlite -no-gif -qt-libjpeg -no-openssl -no-opengl -no-dbus \
 	-no-qml-debug -no-audio-backend -no-sql-odbc -no-pch \
 	-no-compile-examples -nomake examples
+ifdef HAVE_WIN32
+QT_CONFIG += -no-xcb
+endif
 
 QT_CONFIG += -release
 
 .qt: qt
-	cd $< && $(QT_VARS) ./configure $(QT_PLATFORM) $(QT_CONFIG) -prefix $(PREFIX)
+	cd $< && ./configure $(QT_PLATFORM) $(QT_CONFIG) -prefix $(PREFIX)
 	# Make && Install libraries
-	$(MAKE) -C $<
-	$(MAKE) -C $< -C src sub-corelib-install_subtargets sub-gui-install_subtargets sub-widgets-install_subtargets sub-platformsupport-install_subtargets sub-zlib-install_subtargets sub-bootstrap-install_subtargets
+	+$(MAKE) -C $< sub-src
+	+$(MAKE) -C $< -C src sub-corelib-install_subtargets sub-gui-install_subtargets sub-widgets-install_subtargets sub-platformsupport-install_subtargets sub-zlib-install_subtargets sub-bootstrap-install_subtargets
 	# Install tools
-	$(MAKE) -C $< -C src sub-moc-install_subtargets sub-rcc-install_subtargets sub-uic-install_subtargets
-	# Install plugins
-	$(MAKE) -C $< -C src/plugins sub-platforms-install_subtargets
+	+$(MAKE) -C $< -C src sub-moc-install_subtargets sub-rcc-install_subtargets sub-uic-install_subtargets
+	# Install plugins/platforms
+	+$(MAKE) -C $< -C src -C plugins sub-platforms-install_subtargets
 	mv $(PREFIX)/plugins/platforms/libqwindows.a $(PREFIX)/lib/ && rm -rf $(PREFIX)/plugins
 	# Move includes to match what VLC expects
 	mkdir -p $(PREFIX)/include/QtGui/qpa
@@ -90,14 +89,6 @@ QT_CONFIG += -release
 	cd $(PREFIX)/lib/pkgconfig; for i in Qt5Core.pc Qt5Gui.pc Qt5Widgets.pc; do sed -i -e 's/d\.a/.a/g' -e 's/d $$/ /' $$i; done
 	# Fix Qt5Gui.pc file to include qwindows (QWindowsIntegrationPlugin) and Qt5Platform Support
 	cd $(PREFIX)/lib/pkgconfig; sed -i -e 's/ -lQt5Gui/ -lqwindows -lQt5PlatformSupport -lQt5Gui/g' Qt5Gui.pc
-ifdef HAVE_CROSS_COMPILE
-	# Building Qt build tools for Xcompilation
-	cd $</include/QtCore; $(LN_S)f $(QT_VERSION)/QtCore/private private
-	cd $<; $(MAKE) -C qmake
-	cd $<; $(MAKE) install_qmake install_mkspecs
-	cd $</src/tools; \
-	for i in bootstrap uic rcc moc; \
-		do (cd $$i; echo $$i && ../../../bin/qmake -spec $(QT_SPEC) && $(MAKE) clean && $(MAKE) CC=$(HOST)-gcc CXX=$(HOST)-g++ LINKER=$(HOST)-g++ LIB="$(HOST)-ar -rc" && $(MAKE) install); \
-	done
-endif
+	# install qmake to build QtSvg
+	+$(MAKE) -C $< install_qmake install_mkspecs
 	touch $@


=====================================
contrib/src/qtsvg/rules.mak
=====================================
@@ -27,8 +27,8 @@ qtsvg: qtsvg-$(QTSVG_VERSION).tar.xz .sum-qtsvg
 .qtsvg: qtsvg
 	cd $< && $(PREFIX)/bin/qmake
 	# Make && Install libraries
-	$(MAKE) -C $<
-	$(MAKE) -C $< -C src sub-plugins-install_subtargets sub-svg-install_subtargets
+	+$(MAKE) -C $< sub-src
+	+$(MAKE) -C $< sub-src-install_subtargets
 	mv $(PREFIX)/plugins/iconengines/libqsvgicon.a $(PREFIX)/lib/
 	mv $(PREFIX)/plugins/imageformats/libqsvg.a $(PREFIX)/lib/
 	cd $(PREFIX)/lib/pkgconfig; sed -i \



View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/baa78c390d4ffc34b2131a64f3aaa86ad4ba65a5...855d4d364057c3b135063a0e74d91438a236809c

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/baa78c390d4ffc34b2131a64f3aaa86ad4ba65a5...855d4d364057c3b135063a0e74d91438a236809c
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