# Template file for 'qt5' pkgname=qt5 version=5.3.2 revision=5 wrksrc="qt-everywhere-opensource-src-${version}" homepage="http://qt-project.com/" short_desc="A cross-platform application and UI framework (QT5)" maintainer="Juan RP " license="GPL-3, LGPL-2.1" distfiles="http://download.qt-project.org/official_releases/qt/${version%.*}/${version}/single/qt-everywhere-opensource-src-${version}.tar.xz" checksum=7f5bf93344cb57bac374ea4a32c8eda87f1357f998f14278e717cf84d0289bf0 nocross=yes hostmakedepends="flex ruby gperf python perl pkg-config" makedepends=" libressl-devel libpng-devel>=1.6 MesaLib-devel libXrender-devel unixodbc-devel fontconfig-devel libXi-devel libXv-devel libXinerama-devel libXrandr-devel libXcursor-devel dbus-devel glib-devel icu-devel cups-devel libjpeg-turbo-devel sqlite-devel alsa-lib-devel tiff-devel libmng-devel libxshmfence-devel xcb-util-keysyms-devel xcb-util-image-devel xcb-util-wm-devel libSM-devel libXcomposite-devel libwebp-devel libxkbcommon-devel harfbuzz-devel gtk+-devel mtdev-devel libmysqlclient-devel postgresql-libs-devel pulseaudio-devel gst-plugins-base1-devel libxslt-devel" depends="qtchooser" pre_configure() { if [ "$XBPS_TARGET_MACHINE" = "i686" ]; then # XXX http://build.voidlinux.eu:8010/builders/i686_builder/builds/7611/steps/shell_3/logs/stdio CXXFLAGS="${CXXFLAGS/-fstack-protector-strong/-fstack-protector}" fi sed -i "s|-O2|${CXXFLAGS}|" qtbase/mkspecs/common/{g++,gcc}-base.conf sed -i "/^QMAKE_LFLAGS_RPATH/s| -Wl,-rpath,||g" qtbase/mkspecs/common/gcc-base-unix.conf sed -i "/^QMAKE_LFLAGS\s/s|+=|+= ${LDFLAGS}|g" qtbase/mkspecs/common/gcc-base.conf } do_configure() { export LD_LIBRARY_PATH="${wrksrc}/qtbase/lib:${wrksrc}/qttools/lib:${LD_LIBRARY_PATH}" export LD="$CXX" ./configure -confirm-license -opensource -bindir /usr/lib/qt5/bin \ -prefix /usr -sysconfdir /etc/xdg -plugindir /usr/lib/qt5/plugins \ -docdir /usr/share/doc/qt5 -importdir /usr/lib/qt5/imports \ -translationdir /usr/share/qt5/translations \ -datadir /usr/share/qt5 -headerdir /usr/include/qt5 \ -archdatadir /usr/lib/qt5 -nomake examples \ -accessibility -fontconfig -icu -openssl-linked -no-pch -no-strip \ -system-libjpeg -system-libpng -system-sqlite -system-zlib \ -system-harfbuzz -dbus-linked -optimized-qmake -reduce-relocations } do_build() { export LD_LIBRARY_PATH="${wrksrc}/qtbase/lib:${wrksrc}/qttools/lib:${LD_LIBRARY_PATH}" export LD="$CXX" make ${makejobs} } do_install() { # base cd qtbase make INSTALL_ROOT=${DESTDIR} install vlicense LGPL_EXCEPTION.txt rm -r ${DESTDIR}/usr/share/doc } qt5-connectivity-devel_package() { short_desc+=" - connectivity component (development)" depends="qt5-connectivity-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qtconnectivity make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/lib/qt5/qml rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-connectivity_package() { short_desc+=" - connectivity component" pkg_install() { cd ${wrksrc}/qtconnectivity make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl } } qt5-declarative-devel_package() { short_desc+=" - declarative component (development)" depends="qt5-declarative-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qtdeclarative make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/lib/qt5/bin rm -r ${PKGDESTDIR}/usr/lib/qt5/qml rm -r ${PKGDESTDIR}/usr/lib/qt5/plugins rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-declarative_package() { short_desc+=" - declarative component" pkg_install() { cd ${wrksrc}/qtdeclarative make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.a rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl } } qt5-enginio-devel_package() { short_desc+=" - enginio component (development)" depends="qt5-enginio-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qtenginio make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/lib/qt5/qml rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-enginio_package() { short_desc+=" - enginio component" pkg_install() { cd ${wrksrc}/qtenginio make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl } } qt5-graphicaleffects_package() { short_desc+=" - graphicaleffects component" pkg_install() { cd ${wrksrc}/qtgraphicaleffects make INSTALL_ROOT=${PKGDESTDIR} install } } qt5-imageformats_package() { short_desc+=" - Plugins for additional image formats" pkg_install() { cd ${wrksrc}/qtimageformats make INSTALL_ROOT=${PKGDESTDIR} install } } qt5-location-devel_package() { short_desc+=" - location component (development)" depends="qt5-location-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qtlocation make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/lib/qt5/qml rm -r ${PKGDESTDIR}/usr/lib/qt5/plugins rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-location_package() { short_desc+=" - location component" pkg_install() { cd ${wrksrc}/qtlocation make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl } } qt5-multimedia-devel_package() { short_desc+=" - multimedia component (development)" depends="qt5-multimedia-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qtmultimedia make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/lib/qt5/qml rm -r ${PKGDESTDIR}/usr/lib/qt5/plugins rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-multimedia_package() { short_desc+=" - multimedia component" pkg_install() { cd ${wrksrc}/qtmultimedia make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl } } qt5-quick1-devel_package() { short_desc+=" - Qt Quick 1 (development)" depends="qt5-quick1-${version}_${revision} qt5-xmlpatterns-devel-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qtquick1 make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/lib/qt5/bin rm -r ${PKGDESTDIR}/usr/lib/qt5/plugins rm -r ${PKGDESTDIR}/usr/lib/qt5/imports rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-quick1_package() { short_desc+=" - Qt Quick 1" pkg_install() { cd ${wrksrc}/qtquick1 make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl } } qt5-quickcontrols_package() { short_desc+=" - Quick UI controls" pkg_install() { cd ${wrksrc}/qtquickcontrols make INSTALL_ROOT=${PKGDESTDIR} install } } qt5-script-devel_package() { short_desc+=" - Scriptable classes (development)" depends="qt5-script-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qtscript make INSTALL_ROOT=${PKGDESTDIR} install rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-script_package() { short_desc+=" - Scriptable classes" pkg_install() { cd ${wrksrc}/qtscript make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl } } qt5-sensors-devel_package() { short_desc+=" - sensors component (development)" depends="qt5-sensors-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qtsensors make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/lib/qt5/qml rm -r ${PKGDESTDIR}/usr/lib/qt5/plugins rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-sensors_package() { short_desc+=" - sensors component" pkg_install() { cd ${wrksrc}/qtsensors make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl } } qt5-serialport-devel_package() { short_desc+=" - serialport component (development)" depends="qt5-serialport-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qtserialport make INSTALL_ROOT=${PKGDESTDIR} install rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-serialport_package() { short_desc+=" - serialport component" pkg_install() { cd ${wrksrc}/qtserialport make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl } } qt5-svg-devel_package() { short_desc+=" - svg component (development)" depends="qt5-svg-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qtsvg make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/lib/qt5/plugins rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-svg_package() { short_desc+=" - svg component" pkg_install() { cd ${wrksrc}/qtsvg make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl } } qt5-webkit-devel_package() { short_desc+=" - WebKit2 component (development)" depends="qt5-webkit-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qtwebkit make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/lib/qt5/qml rm -r ${PKGDESTDIR}/usr/lib/qt5/libexec rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-webkit_package() { short_desc+=" - WebKit2 component" pkg_install() { cd ${wrksrc}/qtwebkit make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl } } qt5-websockets-devel_package() { short_desc+=" - websockets component (development)" depends="qt5-websockets-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qtwebsockets make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/lib/qt5/qml rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-websockets_package() { short_desc+=" - websockets component" pkg_install() { cd ${wrksrc}/qtwebsockets make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl } } qt5-x11extras-devel_package() { short_desc+=" - X11 extras (development)" depends="qt5-x11extras-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qtx11extras make INSTALL_ROOT=${PKGDESTDIR} install rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-x11extras_package() { short_desc+=" - X11 extras" pkg_install() { cd ${wrksrc}/qtx11extras make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl } } qt5-xmlpatterns-devel_package() { short_desc+=" - XML components (development)" depends="qt5-xmlpatterns-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qtxmlpatterns make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/lib/qt5/bin rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-xmlpatterns_package() { short_desc+=" - XML components" pkg_install() { cd ${wrksrc}/qtxmlpatterns make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl } } qt5-translations_package() { short_desc+=" - Translations" pkg_install() { cd ${wrksrc}/qttranslations make INSTALL_ROOT=${PKGDESTDIR} install } } qt5-tools-devel_package() { short_desc+=" - development tools (development)" depends="qt5-tools-${version}_${revision} qt5-devel-${version}_${revision}" pkg_install() { cd ${wrksrc}/qttools make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/lib/qt5/bin rm -r ${PKGDESTDIR}/usr/share rm -r ${PKGDESTDIR}/usr/lib/qt5/plugins rm ${PKGDESTDIR}/usr/lib/*.so.* } } qt5-tools_package() { short_desc+=" - development tools" depends="qt5-translations desktop-file-utils hicolor-icon-theme" pkg_install() { cd ${wrksrc}/qttools make INSTALL_ROOT=${PKGDESTDIR} install rm -r ${PKGDESTDIR}/usr/include rm -r ${PKGDESTDIR}/usr/lib/cmake rm -r ${PKGDESTDIR}/usr/lib/pkgconfig rm -r ${PKGDESTDIR}/usr/lib/qt5/mkspecs rm ${PKGDESTDIR}/usr/lib/*.so rm ${PKGDESTDIR}/usr/lib/*.prl # install missing icons and desktop files for icon in src/linguist/linguist/images/icons/linguist-*-32.png ; do size=$(echo $(basename ${icon}) | cut -d- -f2) install -p -D -m644 ${icon} \ ${PKGDESTDIR}/usr/share/icons/hicolor/${size}x${size}/apps/qt5-linguist.png done install -Dm644 src/assistant/assistant/images/assistant.png \ ${PKGDESTDIR}/usr/share/icons/hicolor/32x32/apps/qt5-assistant.png install -Dm644 src/assistant/assistant/images/assistant-128.png \ ${PKGDESTDIR}/usr/share/icons/hicolor/128x128/apps/qt5-assistant.png install -Dm644 src/designer/src/designer/images/designer.png \ ${PKGDESTDIR}/usr/share/icons/hicolor/128x128/apps/qt5-designer.png install -Dm644 src/qdbus/qdbusviewer/images/qdbusviewer.png \ ${PKGDESTDIR}/usr/share/icons/hicolor/32x32/apps/qt5-qdbusviewer.png install -Dm644 src/qdbus/qdbusviewer/images/qdbusviewer-128.png \ ${PKGDESTDIR}/usr/share/icons/hicolor/128x128/apps/qt5-qdbusviewer.png # install desktop files vmkdir usr/share/applications install -m644 ${FILESDIR}/*.desktop ${PKGDESTDIR}/usr/share/applications } } qt5-devel_package() { depends="zlib-devel libressl-devel libXext-devel libXrender-devel fontconfig-devel libglib-devel MesaLib-devel mtdev-devel dbus-devel icu-devel qt5-${version}_${revision} qt5-plugin-gtk-${version}_${revision} qt5-qmake-${version}_${revision}" short_desc+=" - development files" pkg_install() { vmove usr/include vmove "usr/lib/*.a" vmove "usr/lib/*.prl" vmove usr/lib/pkgconfig vmove usr/lib/cmake } } qt5-plugin-gtk_package() { short_desc+=" - GTK+ theme plugin" pkg_install() { vmove usr/lib/qt5/plugins/platformthemes/libqgtk2.so } } qt5-plugin-odbc_package() { short_desc+=" - ODBC plugin" pkg_install() { vmove usr/lib/qt5/plugins/sqldrivers/libqsqlodbc.so } } qt5-plugin-pgsql_package() { short_desc+=" - PostgreSQL plugin" pkg_install() { vmove usr/lib/qt5/plugins/sqldrivers/libqsqlpsql.so } } qt5-plugin-mysql_package() { short_desc+=" - MySQL plugin" pkg_install() { vmove usr/lib/qt5/plugins/sqldrivers/libqsqlmysql.so } } qt5-plugin-sqlite_package() { short_desc+=" - SQLite plugin" pkg_install() { vmove usr/lib/qt5/plugins/sqldrivers/libqsqlite.so } } qt5-qmake_package() { short_desc+=" - qmake Makefile generator tool" pkg_install() { vmove usr/lib/qt5/bin/qmake vmove usr/lib/qt5/mkspecs } }