Skip to content
Snippets Groups Projects
PKGBUILD 4.33 KiB
Newer Older
  • Learn to ignore specific revisions
  • Eric Vidal's avatar
    Eric Vidal committed
    # Obarun        : 66 init/supervisor
    # Maintainer    : Eric Vidal <eric@obarun.org>
    # Maintainer    : Jean-Michel T.Dydak <jean-michel@obarun.org>
    # PkgSource     : url="https://framagit.org/pkg/obextra/qt5-base"
    #-----------------------------------------------------------------------------------------------
    
    #-----------------------------------------| DESCRIPTION |---------------------------------------
    
    Eric Vidal's avatar
    Eric Vidal committed
    
    pkgbase=qt5-base
    pkgname=(qt5-base qt5-xcb-private-headers)
    
    Eric Vidal's avatar
    Eric Vidal committed
    
    
    Eric Vidal's avatar
    Eric Vidal committed
    pkgdesc="A cross-platform application and UI framework"
    
    Eric Vidal's avatar
    Eric Vidal committed
    
    
    Eric Vidal's avatar
    Eric Vidal committed
    _qtver=5.14.2
    
    Eric Vidal's avatar
    Eric Vidal committed
    pkgver=${_qtver/-/}
    
    pkgrel=4
    
    Eric Vidal's avatar
    Eric Vidal committed
    
    
    Eric Vidal's avatar
    Eric Vidal committed
    _pkgfqn="${pkgbase/5-/}-everywhere-src-${_qtver}"
    
    Eric Vidal's avatar
    Eric Vidal committed
    url="https://www.qt.io"
    
    Eric Vidal's avatar
    Eric Vidal committed
    source=(
    	"http://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz"
    
    	"qt5-base-QTBUG-82910.patch::https://codereview.qt-project.org/gitweb?p=qt/qtbase.git;a=patch;h=54aa63be9b74e8de72db9efbe6809ab1a97b29a7"
    
    Eric Vidal's avatar
    Eric Vidal committed
    	'qt5-base-cflags.patch')
    
    Eric Vidal's avatar
    Eric Vidal committed
    
    #-------------------------------------| BUILD CONFIGURATION |-----------------------------------
    
    
    Eric Vidal's avatar
    Eric Vidal committed
    makedepends=(
    	'libfbclient'
    	'mariadb-libs'
    	'sqlite'
    	'unixodbc'
    	'postgresql-libs'
    	'alsa-lib'
    	'gst-plugins-base-libs'
    	'gtk3'
    	'libpulse'
    	'cups'
    	'freetds'
    	'vulkan-headers')
    
    Eric Vidal's avatar
    Eric Vidal committed
    	
    #--------------------------------------| BUILD PREPARATION |------------------------------------
    
    Eric Vidal's avatar
    Eric Vidal committed
    
    
    Eric Vidal's avatar
    Eric Vidal committed
    prepare() {
    
    Eric Vidal's avatar
    Eric Vidal committed
    	cd ${_pkgfqn}
    
    
    	patch -p1 -i ../qt5-base-QTBUG-82910.patch # https://codereview.qt-project.org/c/qt/qtbase/+/299182
    
    Eric Vidal's avatar
    Eric Vidal committed
    	patch -p1 -i ../qt5-base-cflags.patch # Use system CFLAGS
    
    Eric Vidal's avatar
    Eric Vidal committed
    }
    
    
    Eric Vidal's avatar
    Eric Vidal committed
    #--------------------------------------------| BUILD |------------------------------------------
    
    
    Eric Vidal's avatar
    Eric Vidal committed
    build() {
    
    Eric Vidal's avatar
    Eric Vidal committed
    	cd ${_pkgfqn}
    
    	#echo "INCLUDEPATH += /usr/include/openssl" >> src/network/network.pro
    	#export OPENSSL_LIBS='-L/usr/lib -lssl -lcrypto'
    
    	./configure \
    		-confirm-license -opensource -v \
    		-prefix /usr \
    		-docdir /usr/share/doc/qt \
    		-headerdir /usr/include/qt \
    		-archdatadir /usr/lib/qt \
    		-datadir /usr/share/qt \
    		-sysconfdir /etc/xdg \
    		-examplesdir /usr/share/doc/qt/examples \
    		-plugin-sql-{psql,mysql,sqlite,odbc,ibase} \
    		-system-sqlite \
    		-openssl-linked \
    		-nomake examples \
    		-no-rpath \
    		-dbus-linked \
    		-system-harfbuzz \
    
    Eric Vidal's avatar
    Eric Vidal committed
    		-no-mimetype-database \
    
    Eric Vidal's avatar
    Eric Vidal committed
    		-no-use-gold-linker \
    		-reduce-relocations
    	make
    
    Eric Vidal's avatar
    Eric Vidal committed
    }
    
    
    Eric Vidal's avatar
    Eric Vidal committed
    #-------------------------------------------| PACKAGE |-----------------------------------------
    
    
    Eric Vidal's avatar
    Eric Vidal committed
    package_qt5-base() {
    
    Eric Vidal's avatar
    Eric Vidal committed
    	pkgdesc='A cross-platform application and UI framework'
    
    	cd ${_pkgfqn}
    	make INSTALL_ROOT="${pkgdir}" install
    
    	install -Dm644 LICENSE* -t "$pkgdir"/usr/share/licenses/$pkgbase
    
    	## Drop QMAKE_PRL_BUILD_DIR because reference the build dir
    	find "${pkgdir}/usr/lib" -type f -name '*.prl' \
    
    jean-michel's avatar
    jean-michel committed
    	 -exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
    
    Eric Vidal's avatar
    Eric Vidal committed
    
    	## Fix wrong qmake path in pri file
    	sed -i "s|${srcdir}/${_pkgfqn}|/usr|" \
    
    jean-michel's avatar
    jean-michel committed
    	 "${pkgdir}"/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri
    
    Eric Vidal's avatar
    Eric Vidal committed
    
    	## Symlinks for backwards compatibility
    	for b in "${pkgdir}"/usr/bin/*; do
    
    jean-michel's avatar
    jean-michel committed
    	 ln -s $(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5
    
    Eric Vidal's avatar
    Eric Vidal committed
    	done
    
    Eric Vidal's avatar
    Eric Vidal committed
    }
    
    
    Eric Vidal's avatar
    Eric Vidal committed
    package_qt5-xcb-private-headers() {
    	pkgdesc='Private headers for Qt5 Xcb'
    
    Eric Vidal's avatar
    Eric Vidal committed
    
    
    Eric Vidal's avatar
    Eric Vidal committed
    	depends=("qt5-base=$pkgver")
    	optdepends=()
    	groups=()
    	conflicts=()
    
    Eric Vidal's avatar
    Eric Vidal committed
    
    
    Eric Vidal's avatar
    Eric Vidal committed
    	cd ${_pkgfqn}
    	install -d -m755 "$pkgdir"/usr/include/qtxcb-private
    	cp -r src/plugins/platforms/xcb/*.h "$pkgdir"/usr/include/qtxcb-private/
    
    Eric Vidal's avatar
    Eric Vidal committed
    }
    
    Eric Vidal's avatar
    Eric Vidal committed
    
    
    Eric Vidal's avatar
    Eric Vidal committed
    #------------------------------------| INSTALL CONFIGURATION |----------------------------------
    
    arch=('x86_64')
    
    conflicts=(
    	'qtchooser')
    
    groups=(
    	'qt'
    	'qt5')
    	
    depends=(
    	'libjpeg-turbo'
    	'xcb-util-keysyms'
    	'xcb-util-renderutil'
    	'libgl'
    	'fontconfig'
    	'xdg-utils'
    	'shared-mime-info'
    	'xcb-util-wm'
    	'libxrender'
    	'libxi'
    	'sqlite'
    	'xcb-util-image'
    	'mesa'
    	'tslib'
    	'libinput'
    	'libxkbcommon-x11'
    	'libproxy'
    	'libcups'
    
    Eric Vidal's avatar
    Eric Vidal committed
    	'double-conversion'
    	'md4c')
    
    Eric Vidal's avatar
    Eric Vidal committed
    
    optdepends=(
    	'qt5-svg: to use SVG icon themes'
    
    Eric Vidal's avatar
    Eric Vidal committed
    	'qt5-wayland: to run Qt applications in a Wayland session'
    
    Eric Vidal's avatar
    Eric Vidal committed
    	'qt5-translations: for some native UI translations'
    	'postgresql-libs: PostgreSQL driver'
    	'mariadb-libs: MariaDB driver'
    	'unixodbc: ODBC driver'
    	'libfbclient: Firebird/iBase driver'
    	'freetds: MS SQL driver'
    
    Eric Vidal's avatar
    Eric Vidal committed
    	'gtk3: GTK platform plugin'
    	'perl: for fixqt4hearders and syncqt')
    
    Eric Vidal's avatar
    Eric Vidal committed
    	
    #-------------------------------------| SECURITY AND LICENCE |----------------------------------
    
    license=('GPL3' 'LGPL3' 'FDL' 'custom')
    
    
    Eric Vidal's avatar
    Eric Vidal committed
    sha256sums=('48b9e79220941665a9dd827548c6428f7aa3052ccba8f4f7e039a94aa1d2b28a'
                'cf707cd970650f8b60f8897692b36708ded9ba116723ec8fcd885576783fe85c')
    
    Eric Vidal's avatar
    Eric Vidal committed