Commit 122e54be authored by Hugo Beauzée-Luyssen's avatar Hugo Beauzée-Luyssen
Browse files

contribs: Use the full Qt version, since we need QtQml

parent b6af47bd
5b2a5842346475be0944fc44bc09ff5b5d5da167246310de132f034e17ebbcbbf103b6f085dbf8b566389694bd095227aa1ed569b93e0f9a8f02da51d8fe076e qt-5.6.0.tar.xz a0bd5a8aec62aa6b09779f2eaa393116ef304a962edb988aeb06a018a9cf3402711e57559f4d01ab40ec0c0bac329fa9b81bd37f15d5696f676937063bdc394e qt-5.6.0.tar.xz
# Qt # Qt
QT_VERSION = 5.6.0 QT_VERSION = 5.6.0
QT_URL := https://download.qt.io/official_releases/qt/5.6/$(QT_VERSION)/submodules/qtbase-opensource-src-$(QT_VERSION).tar.xz QT_URL := https://download.qt.io/official_releases/qt/5.6/$(QT_VERSION)/single/qt-everywhere-opensource-src-$(QT_VERSION).tar.xz
ifdef HAVE_MACOSX ifdef HAVE_MACOSX
#PKGS += qt #PKGS += qt
...@@ -10,7 +10,7 @@ ifdef HAVE_WIN32 ...@@ -10,7 +10,7 @@ ifdef HAVE_WIN32
PKGS += qt PKGS += qt
endif endif
ifeq ($(call need_pkg,"Qt5Core Qt5Gui Qt5Widgets"),) ifeq ($(call need_pkg,"Qt5Core Qt5Gui Qt5Widgets Qt5Network Qt5Qml"),)
PKGS_FOUND += qt PKGS_FOUND += qt
endif endif
...@@ -21,7 +21,7 @@ $(TARBALLS)/qt-$(QT_VERSION).tar.xz: ...@@ -21,7 +21,7 @@ $(TARBALLS)/qt-$(QT_VERSION).tar.xz:
qt: qt-$(QT_VERSION).tar.xz .sum-qt qt: qt-$(QT_VERSION).tar.xz .sum-qt
$(UNPACK) $(UNPACK)
mv qtbase-opensource-src-$(QT_VERSION) qt-$(QT_VERSION) mv qt-everywhere-opensource-src-$(QT_VERSION) qt-$(QT_VERSION)
$(MOVE) $(MOVE)
ifdef HAVE_MACOSX ifdef HAVE_MACOSX
...@@ -35,32 +35,35 @@ endif ...@@ -35,32 +35,35 @@ endif
QT_CONFIG := -static -release -opensource -confirm-license -no-pkg-config \ QT_CONFIG := -static -release -opensource -confirm-license -no-pkg-config \
-no-sql-sqlite -no-gif -qt-libjpeg -no-openssl -no-opengl -no-dbus \ -no-sql-sqlite -no-gif -qt-libjpeg -no-openssl -no-opengl -no-dbus \
-no-qml-debug -no-audio-backend -no-sql-odbc \ -no-qml-debug -no-audio-backend -no-sql-odbc \
-no-compile-examples -nomake examples -no-compile-examples -nomake examples -skip serialbus -skip activeqt \
-skip multimedia -skip wayland -skip serialport -skip qtwinextras \
-skip qtsensors
.qt: qt .qt: qt
cd $< && ./configure $(QT_PLATFORM) $(QT_CONFIG) -prefix $(PREFIX) cd $< && ./configure $(QT_PLATFORM) $(QT_CONFIG) -prefix $(PREFIX)
# Make && Install libraries # Make && Install libraries
cd $< && $(MAKE) cd $< && $(MAKE)
cd $</src && $(MAKE) sub-corelib-install_subtargets sub-gui-install_subtargets sub-widgets-install_subtargets sub-platformsupport-install_subtargets cd $</qtbase/src && $(MAKE) sub-corelib-install_subtargets sub-gui-install_subtargets sub-widgets-install_subtargets sub-platformsupport-install_subtargets sub-network-install_subtargets
# Install tools # Install tools
cd $</src && $(MAKE) sub-moc-install_subtargets sub-rcc-install_subtargets sub-uic-install_subtargets cd $</qtbase/src && $(MAKE) sub-moc-install_subtargets sub-rcc-install_subtargets sub-uic-install_subtargets
# Install plugins # Install plugins
cd $</src/plugins && $(MAKE) sub-platforms-install_subtargets cd $</qtbase/src/plugins && $(MAKE) sub-platforms-install_subtargets
mv $(PREFIX)/plugins/platforms/libqwindows.a $(PREFIX)/lib/ && rm -rf $(PREFIX)/plugins mv $(PREFIX)/plugins/platforms/libqwindows.a $(PREFIX)/lib/ && rm -rf $(PREFIX)/plugins
cd $</qtdeclarative && $(MAKE) sub-src-install_subtargets
# Move includes to match what VLC expects # Move includes to match what VLC expects
mkdir -p $(PREFIX)/include/QtGui/qpa mkdir -p $(PREFIX)/include/QtGui/qpa
cp $(PREFIX)/include/QtGui/$(QT_VERSION)/QtGui/qpa/qplatformnativeinterface.h $(PREFIX)/include/QtGui/qpa cp $(PREFIX)/include/QtGui/$(QT_VERSION)/QtGui/qpa/qplatformnativeinterface.h $(PREFIX)/include/QtGui/qpa
# Clean Qt mess # Clean Qt mess
rm -rf $(PREFIX)/lib/libQt5Bootstrap* $(PREFIX)/lib/*.prl $(PREFIX)/mkspecs rm -rf $(PREFIX)/lib/libQt5Bootstrap* $(PREFIX)/lib/*.prl $(PREFIX)/mkspecs
# Fix .pc files to remove debug version (d) # Fix .pc files to remove debug version (d)
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 cd $(PREFIX)/lib/pkgconfig; for i in Qt5Core.pc Qt5Gui.pc Qt5Widgets.pc Qt5Qml.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 # 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 cd $(PREFIX)/lib/pkgconfig; sed -i -e 's/ -lQt5Gui/ -lqwindows -lQt5PlatformSupport -lQt5Gui/g' Qt5Gui.pc
ifdef HAVE_CROSS_COMPILE ifdef HAVE_CROSS_COMPILE
# Building Qt build tools for Xcompilation # Building Qt build tools for Xcompilation
cd $</include/QtCore; ln -sf $(QT_VERSION)/QtCore/private cd $</qtbase/include/QtCore; ln -sf $(QT_VERSION)/QtCore/private
cd $</qmake; $(MAKE) cd $</qtbase/qmake; $(MAKE)
cd $</src/tools; \ cd $</qtbase/src/tools; \
for i in bootstrap uic rcc moc; \ 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++ && $(MAKE) install); \ do (cd $$i; echo $$i && ../../../bin/qmake -spec $(QT_SPEC) && $(MAKE) clean && $(MAKE) CC=$(HOST)-gcc CXX=$(HOST)-g++ LINKER=$(HOST)-g++ && $(MAKE) install); \
done done
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment