blob: 5fedbcac01d7431ddf02052763f86c64dee77ab1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
|
# Maintainer: Stephan Springer <buzo+arch@Lini.de>
# Contributor: K900 <me@0upti.me>
# Contributor: Felix Yan <felixonmars@archlinux.org>
# Contributor: Andrea Scarpino <andrea@archlinux.org>
pkgname=qt5-base-headless
_basever=5.15.16
pkgver=5.15.16+kde+r130
pkgrel=1
_commit=2529f7f0c2333d437089c775c9c30f624d1fd5bc
arch=('x86_64')
url='https://www.qt.io'
license=('GPL3' 'LGPL3' 'FDL' 'custom')
pkgdesc='A cross-platform application and UI framework - headless build, no QtGui or QtWidgets'
depends=('sqlite' 'libproxy' 'double-conversion')
makedepends=('mariadb-libs' 'unixodbc' 'postgresql-libs' 'dbus' 'systemd' 'md4c' 'git')
optdepends=('postgresql-libs: PostgreSQL driver'
'mariadb-libs: MariaDB driver'
'unixodbc: ODBC driver')
conflicts=('qtchooser' 'qt5-base')
provides=('qt5-base')
groups=('qt5')
_pkgfqn=qtbase
source=(kde-$_pkgfqn::git+https://invent.kde.org/qt/qt/$_pkgfqn#commit=$_commit
qmake-cflags.patch
qmake-config.patch)
sha256sums=('c0190253f5a3326bbc04614f5f9bbe94df6900bb60c865ccdecc71ee7e137d19'
'5411edbe215c24b30448fac69bd0ba7c882f545e8cf05027b2b6e2227abc5e78'
'4abc22150fa3e06b2fdcec32146abc9be4e316692aa4d5bd5aa53b4b726783fa')
pkgver() {
cd kde-$_pkgfqn
echo "$_basever+kde+r"`git rev-list --count v$_basever-lts-lgpl..$_commit` | sed -e 's|+kde+r0||'
}
prepare() {
cd kde-$_pkgfqn
patch -p1 < ../qmake-cflags.patch # Use system CFLAGS in qmake
patch -p1 < ../qmake-config.patch # Don't strip binaries with qmake and use -ltcg, cf. QTBUG-73834
}
build() {
cd kde-$_pkgfqn
./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} \
-system-sqlite \
-openssl-linked \
-nomake examples \
-no-rpath \
-dbus-linked \
-system-harfbuzz \
-journald \
-libproxy \
-no-mimetype-database \
-no-use-gold-linker \
-no-reduce-relocations \
\
-no-gui \
-no-widgets \
-no-accessibility \
-no-cups \
-no-freetype \
-no-harfbuzz \
-no-directfb \
-no-eglfs \
-no-linuxfb \
-no-xcb \
-no-evdev \
\
-no-strip \
-ltcg
# No configure flag for fat static libs with lto
bin/qmake CONFIG+=fat-static-lto -- -redo
make
}
package() {
cd kde-$_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' \
-exec sed -i -e '/^QMAKE_PRL_BUILD_DIR/d' {} \;
# Fix wrong qmake path in pri file
sed -i "s|${srcdir}/${_pkgfqn}|/usr|" \
"${pkgdir}"/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri
# Symlinks for backwards compatibility
for b in "${pkgdir}"/usr/bin/*; do
ln -s $(basename $b) "${pkgdir}"/usr/bin/$(basename $b)-qt5
done
}
|