Qt's configure grabs the path to xkb's data root during configure, but the
build changes in 5.8 apparently broke the handling for cross builds. As a
result, the string embedded in the binary depends on whether or not some files
are present in the builder's filesystem.
The "-xkb-config-root" configure setting is intended to allow manual overriding
but it is also broken. See: https://bugreports.qt.io/browse/QTBUG-60005
This has since been fixed upstream, so just hard-code the path for now. We can
drop this patch when we bump to a fixed Qt.
Also, fix the "-qt-xkbcommon-x11" config param which was renamed. This does not
appear to affect build results, presumably because auto-detection is working,
but it does not hurt to be explicit.
Summary: This is a backport of Core's PR14183
Test Plan:
make -C ../depends build-all
Reviewers: #bitcoin_abc, schancel
Reviewed By: #bitcoin_abc, schancel
Subscribers: teamcity
Differential Revision: https://reviews.bitcoinabc.org/D1808
We may eventually want to break out harfbuzz and build it in depends, but
for now just ensure that runtime dependencies don't depend on whether or not
harfbuzz was present on the builder.
A few years ago, libfreetype introduced FT_Get_Font_Format() as an alias for
FT_Get_X11_Font_Format(), but FT_Get_X11_Font_Format() was kept for abi
backwards-compatibility.
Our qt bump to 5.9 introduced a call to FT_Get_Font_Format(). Replace it with
FT_Get_X11_Font_Format() in order to remain compatibile with older freetype,
which is still used by e.g. Ubuntu Trusty.
The patch Bitcoin Core has been maintaining for mac_alias was pulled by the mac_alias maintainer in commit 4f31cb084c1c6a8626128b0b00842020b6db9037. Delete the patch and remove the patch from the depends system.
Note that this PR won't be complete until a new version of mac_alias containing the path has been released, and the depends system is updated to reflect the new version.
4b6998455776ed3e1b7c996c14f15f0c304c9269 Add depends 32-bit arm support for bitcoin-qt (Sebastian Kung)
Pull request description:
Some hobbyists are used to using the desktop for interfacing with their raspberry pi. This commits adds qt to the arm-linux-gnueabihf target.
Tree-SHA512: cb03387267eb8f68dfd79735c2c01c5a119c406e5578805e60b377934da42d46cb34d35e45c8843979dfb4070859c553d09ae348b468d9731523f33307132fa8
800dea88a6ad2d8b615c1cc486da5942f6e391c2 Upgrade Qt depends to 5.9.6 (Sebastian Kung)
70afa65b175080b617e168be5396fbc180ae8bc5 Fix depends Qt5.9.4 mac build (Ken Lee)
28482efefb15dc2c273a52b96d1aceb995db4968 Ugrade Qt depends to Qt5.9.4 (Sebastian Kung)
Pull request description:
With the introduction of Ubuntu 18.04 (Bionic Beaver) modern versions of gcc and mingw that allow cross compilation of versions of Qt greater than 5.8 are now readily available. This pull requests upgrades the Qt depends recipe from Qt 5.7.1 to Qt 5.9.6. Qt 5.9.x is the current LTS version and should be supported by Qt until 2020.
Tree-SHA512: 439295d594ff8954a5ba5e348a0452713721c805485be2edcb9f8603ee59e96db5a61e1c684bdff36bbfd643a79cd35c289817257af88f489d2890e7843460bf
Cross compile for MAC was broken for BDB 6.2.32
Zcoin is using also using 6.2. Relevant lines were copied from:
https://github.com/zcash/zcash/blob/master/depends/packages/bdb.mk
these lines:
sed -i.old 's/WinIoCtl.h/winioctl.h/g' src/dbinc/win_db.h &&
sed -i.old 's/__atomic_compare_exchange(/__atomic_compare_exchange_db(/' src/dbinc/atomic.h &&
sed -i.old 's/atomic_init/atomic_init_db/' src/dbinc/atomic.h src/mp/mp_region.c src/mp/mp_mvcc.c src/mp/mp_fget.c src/mutex/mut_method.c src/mutex/mut_tas.c