build: Qt 5.15.x #19716

pull fanquake wants to merge 29 commits into bitcoin:master from fanquake:qt_5_15_x changing 36 files +341 −315
  1. fanquake commented at 7:44 am on August 14, 2020: member

    Opening this for visibility. Apart from it probably being time to use a newer version of Qt for releases, an update is required so that we are using a version which has a C++17 mode.

    There’s a lot of commits here, because I’ve made some changes (like rebasing our patches), that aren’t strictly necessary. There are also some changes, like bumping the minimum required macOS version, that will likely happen separate, as part of the C++17 migration. So this change will end up being a bit smaller.

    The biggest change here is that Qt no longer has internal xcb libs, so we need to build the requirements ourselves. This also means some additional build-time tools, such as yacc (from bison) are also required; to build xkbcommon.

    I’ve tested this on Ubuntu; although it’d be great if more people could test with their particular brand of Linux desktop.

    Cross-compiled Windows and macOS builds compile and run, but the GUI currently looks a bit broken on both. i.e macOS seems to look a bit like an older version of Windows:

    I haven’t had enough time to fully investigate (also why there’s some WIP commits), so if anyone wants to dig in and see what Qt has changed since 5.9.x feel free.

  2. fanquake added the label GUI on Aug 14, 2020
  3. fanquake added the label Build system on Aug 14, 2020
  4. MarcoFalke added this to the milestone 0.22.0 on Aug 14, 2020
  5. MarcoFalke commented at 7:52 am on August 14, 2020: member
    Added 0.22 milestone based on the assumption that none of this is required to build with a qt5.15 system package? (Only depends changes here?)
  6. fanquake commented at 7:59 am on August 14, 2020: member

    the assumption that none of this is required to build with a qt5.15 system package?

    As far as I’m aware people have already been building with Qt 5.15, and that has been working after #19097.

  7. jonasschnelli commented at 8:23 am on August 14, 2020: contributor
    Thanks! It’s currently failing on gitian: https://bitcoin.jonasschnelli.ch/gitian/builds/231/build_osx.log
  8. hebasto commented at 12:35 pm on August 14, 2020: member

    @fanquake

    Cross-compiled Windows and macOS builds compile and run, but the GUI currently looks a bit broken on both. i.e macOS seems to look a bit like an older version of Windows:

    I found this https://github.com/hebasto/bitcoin/commit/528360ade9bb3f4902b632f6f755cf63b3397412 useful for diagnostics such issues. Feel free to integrate :)

  9. promag commented at 11:18 pm on August 16, 2020: member
    Nice work! I already used Qt 5.15 on macos and I don’t think it looked like that. Will check this soon™
  10. vasild commented at 12:43 pm on August 19, 2020: member

    There are a bunch of compilation warnings on master and on this PR with Qt 5.15.0 like:

    0src/qt/transactionview.cpp:587:13: warning: 'QDateTime' is deprecated: Use QDate::startOfDay() [-Wdeprecated-declarations]
    1            QDateTime(dateTo->date()).addDays(1));
    2            ^
    

    Here is a fix:

     0diff --git i/src/qt/sendcoinsdialog.cpp w/src/qt/sendcoinsdialog.cpp
     1index 97fb88d71..786af1a73 100644
     2--- i/src/qt/sendcoinsdialog.cpp
     3+++ w/src/qt/sendcoinsdialog.cpp
     4@@ -168,14 +168,14 @@ void SendCoinsDialog::setModel(WalletModel *_model)
     5         // fee section
     6         for (const int n : confTargets) {
     7             ui->confTargetSelector->addItem(tr("%1 (%2 blocks)").arg(GUIUtil::formatNiceTimeOffset(n*Params().GetConsensus().nPowTargetSpacing)).arg(n));
     8         }
     9         connect(ui->confTargetSelector, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged), this, &SendCoinsDialog::updateSmartFeeLabel);
    10         connect(ui->confTargetSelector, static_cast<void (QComboBox::*)(int)>(&QComboBox::currentIndexChanged), this, &SendCoinsDialog::coinControlUpdateLabels);
    11-        connect(ui->groupFee, static_cast<void (QButtonGroup::*)(int)>(&QButtonGroup::buttonClicked), this, &SendCoinsDialog::updateFeeSectionControls);
    12-        connect(ui->groupFee, static_cast<void (QButtonGroup::*)(int)>(&QButtonGroup::buttonClicked), this, &SendCoinsDialog::coinControlUpdateLabels);
    13+        connect(ui->groupFee, &QButtonGroup::idClicked, this, &SendCoinsDialog::updateFeeSectionControls);
    14+        connect(ui->groupFee, &QButtonGroup::idClicked, this, &SendCoinsDialog::coinControlUpdateLabels);
    15         connect(ui->customFee, &BitcoinAmountField::valueChanged, this, &SendCoinsDialog::coinControlUpdateLabels);
    16         connect(ui->optInRBF, &QCheckBox::stateChanged, this, &SendCoinsDialog::updateSmartFeeLabel);
    17         connect(ui->optInRBF, &QCheckBox::stateChanged, this, &SendCoinsDialog::coinControlUpdateLabels);
    18         CAmount requiredFee = model->wallet().getRequiredFee(1000);
    19         ui->customFee->SetMinValue(requiredFee);
    20         if (ui->customFee->value() < requiredFee) {
    21diff --git i/src/qt/transactionview.cpp w/src/qt/transactionview.cpp
    22index 54ecfc38e..5f638f559 100644
    23--- i/src/qt/transactionview.cpp
    24+++ w/src/qt/transactionview.cpp
    25@@ -234,13 +234,13 @@ void TransactionView::setModel(WalletModel *_model)
    26 
    27         columnResizingFixer = new GUIUtil::TableViewLastColumnResizingFixer(transactionView, AMOUNT_MINIMUM_COLUMN_WIDTH, MINIMUM_COLUMN_WIDTH, this);
    28 
    29         if (_model->getOptionsModel())
    30         {
    31             // Add third party transaction URLs to context menu
    32-            QStringList listUrls = _model->getOptionsModel()->getThirdPartyTxUrls().split("|", QString::SkipEmptyParts);
    33+            QStringList listUrls = _model->getOptionsModel()->getThirdPartyTxUrls().split("|", Qt::SkipEmptyParts);
    34             for (int i = 0; i < listUrls.size(); ++i)
    35             {
    36                 QString url = listUrls[i].trimmed();
    37                 QString host = QUrl(url, QUrl::StrictMode).host();
    38                 if (!host.isEmpty())
    39                 {
    40@@ -272,36 +272,36 @@ void TransactionView::chooseDate(int idx)
    41         transactionProxyModel->setDateRange(
    42                 TransactionFilterProxy::MIN_DATE,
    43                 TransactionFilterProxy::MAX_DATE);
    44         break;
    45     case Today:
    46         transactionProxyModel->setDateRange(
    47-                QDateTime(current),
    48+                current.startOfDay(),
    49                 TransactionFilterProxy::MAX_DATE);
    50         break;
    51     case ThisWeek: {
    52         // Find last Monday
    53         QDate startOfWeek = current.addDays(-(current.dayOfWeek()-1));
    54         transactionProxyModel->setDateRange(
    55-                QDateTime(startOfWeek),
    56+                startOfWeek.startOfDay(),
    57                 TransactionFilterProxy::MAX_DATE);
    58 
    59         } break;
    60     case ThisMonth:
    61         transactionProxyModel->setDateRange(
    62-                QDateTime(QDate(current.year(), current.month(), 1)),
    63+                QDate(current.year(), current.month(), 1).startOfDay(),
    64                 TransactionFilterProxy::MAX_DATE);
    65         break;
    66     case LastMonth:
    67         transactionProxyModel->setDateRange(
    68-                QDateTime(QDate(current.year(), current.month(), 1).addMonths(-1)),
    69-                QDateTime(QDate(current.year(), current.month(), 1)));
    70+                QDate(current.year(), current.month(), 1).addMonths(-1).startOfDay(),
    71+                QDate(current.year(), current.month(), 1).startOfDay());
    72         break;
    73     case ThisYear:
    74         transactionProxyModel->setDateRange(
    75-                QDateTime(QDate(current.year(), 1, 1)),
    76+                QDate(current.year(), 1, 1).startOfDay(),
    77                 TransactionFilterProxy::MAX_DATE);
    78         break;
    79     case Range:
    80         dateRangeWidget->setVisible(true);
    81         dateRangeChanged();
    82         break;
    83@@ -580,14 +580,14 @@ QWidget *TransactionView::createDateRangeWidget()
    84 
    85 void TransactionView::dateRangeChanged()
    86 {
    87     if(!transactionProxyModel)
    88         return;
    89     transactionProxyModel->setDateRange(
    90-            QDateTime(dateFrom->date()),
    91-            QDateTime(dateTo->date()).addDays(1));
    92+            dateFrom->date().startOfDay(),
    93+            dateTo->date().startOfDay().addDays(1));
    94 }
    95 
    96 void TransactionView::focusTransaction(const QModelIndex &idx)
    97 {
    98     if(!transactionProxyModel)
    99         return;
    

    qt_5.15_fix_deprecation_warnings.diff.txt

  11. fanquake commented at 12:45 pm on August 19, 2020: member
    @vasild Thanks. See https://github.com/bitcoin-core/gui/pull/46 which should take care of all of them.
  12. DrahtBot commented at 8:32 pm on August 20, 2020: member

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    Conflicts

    Reviewers, this pull request conflicts with the following ones:

    • #20641 (depends: Use Qt top-level build facilities by hebasto)
    • #18298 (build: Fix Qt processing of configure script for depends with DEBUG=1 by hebasto)

    If you consider this pull request important, please also help to review the conflicting pull requests. Ideally, start with the one that should be merged first.

  13. fanquake force-pushed on Aug 24, 2020
  14. fanquake commented at 12:15 pm on August 24, 2020: member

    I’ve fixed up a bunch of things here. Rebased for #19689. Dropped the [WIP] qt commits and merged the relevant changes in to the qt 5.15.x commit. Modified the libxcb_util_image fix to be a patch file rather than using sed. Added a commit that should be enough to get the CI running. Fixed the docs for the dependency changes.

    Note that Qt 5.15.1 has been tagged (no downloads yet), so once that’s up I’ll swap over.

    Also dumped some output using @hebasto’s patch. Turns out the macOS UI looks like Windows because the Windows style is being used.. Unclear why this is happening. Will investigate. Debug output:

    02020-08-24T11:22:47.398810Z [main] Bitcoin Core version v0.20.99.0-1971aead8-dirty (release build)
    12020-08-24T11:22:47.398842Z [main] Qt 5.15.0 (static), plugin=cocoa (static)
    22020-08-24T11:22:47.398936Z [main] Static Plugin: {"IID":"org.qt-project.Qt.QPA.QPlatformIntegrationFactoryInterface.5.3","MetaData":{"Keys":["cocoa"]},"archreq":0,"className":"QCocoaIntegrationPlugin","debug":false,"version":331520}
    32020-08-24T11:22:47.398959Z [main] Style=windows / QWindowsStyle
    42020-08-24T11:22:47.398973Z [main] System: macOS 10.15, x86_64-little_endian-lp64
    52020-08-24T11:22:47.398987Z [main] Screen: Color LCD 1680x1050, pixel ratio=2.0
    62020-08-24T11:22:47.398997Z [main] Screen: LG HDR 4K 2560x1440, pixel ratio=2.0
    72020-08-24T11:22:47.958407Z [main] GUI: Populating font family aliases took 512 ms. Replace uses of missing font family ".AppleSystemUIFont,13,-1,5,50,0,0,0,0,0" with one that exists to avoid this cost. 
    82020-08-24T11:22:48.816413Z [main] GUI: initializeResult : Initialization result:  true
    92020-08-24T11:22:48.821713Z [main] GUI: Platform customization: "macosx"
    
  15. in ci/test/00_setup_env.sh:68 in 1e17e1038c outdated
    64@@ -65,7 +65,7 @@ export BASE_OUTDIR=${BASE_OUTDIR:-$BASE_SCRATCH_DIR/out/$HOST}
    65 export BASE_BUILD_DIR=${BASE_BUILD_DIR:-$BASE_SCRATCH_DIR/build}
    66 export PREVIOUS_RELEASES_DIR=${PREVIOUS_RELEASES_DIR:-$BASE_ROOT_DIR/releases/$HOST}
    67 export SDK_URL=${SDK_URL:-https://bitcoincore.org/depends-sources/sdks}
    68-export DOCKER_PACKAGES=${DOCKER_PACKAGES:-build-essential libtool autotools-dev automake pkg-config bsdmainutils curl ca-certificates ccache python3 rsync git procps}
    69+export DOCKER_PACKAGES=${DOCKER_PACKAGES:-build-essential bison libtool autotools-dev automake pkg-config bsdmainutils curl ca-certificates ccache python3 rsync git procps}
    


    hebasto commented at 8:53 am on August 25, 2020:

    1e17e1038cfcc8b0769917a8d9107eac27889601

    To fix this error in CentOS build

    0Building libxkbcommon...
    1make[1]: Entering directory `/home/travis/build/hebasto/bitcoin/depends/work/build/i686-pc-linux-gnu/libxkbcommon/0.8.4-b76cb6131e8'
    2  YACC     src/xkbcomp/parser.c
    3./build-aux/ylwrap: line 176: yacc: command not found
    

    this change is required

     0--- a/ci/test/00_setup_env_i686_centos.sh
     1+++ b/ci/test/00_setup_env_i686_centos.sh
     2@@ -9,7 +9,7 @@ export LC_ALL=C.UTF-8
     3 export HOST=i686-pc-linux-gnu
     4 export CONTAINER_NAME=ci_i686_centos_7
     5 export DOCKER_NAME_TAG=centos:7
     6-export DOCKER_PACKAGES="gcc-c++ glibc-devel.x86_64 libstdc++-devel.x86_64 glibc-devel.i686 libstdc++-devel.i686 ccache libtool make git python3 python36-zmq which patch lbzip2 dash"
     7+export DOCKER_PACKAGES="gcc-c++ glibc-devel.x86_64 libstdc++-devel.x86_64 glibc-devel.i686 libstdc++-devel.i686 ccache libtool make git python3 python36-zmq which patch lbzip2 dash bison"
     8 export GOAL="install"
     9 export BITCOIN_CONFIG="--enable-zmq --with-gui=qt5 --enable-reduce-exports --with-boost-process"
    10 export CONFIG_SHELL="/bin/dash"
    
  16. hebasto commented at 8:59 am on August 25, 2020: member
    It seems the CentOS build is a subject of https://bugreports.qt.io/browse/QTBUG-85669
  17. in depends/packages/qt.mk:30 in 1e17e1038c outdated
    23@@ -24,13 +24,14 @@ define $(package)_set_vars
    24 $(package)_config_opts_release = -release
    25 $(package)_config_opts_debug = -debug
    26 $(package)_config_opts += -bindir $(build_prefix)/bin
    27-$(package)_config_opts += -c++std c++11
    28+$(package)_config_opts += -c++std c++17
    


    hebasto commented at 9:10 am on August 25, 2020:

    Qt configure reports an error on Xenial build:

    0ERROR: Feature 'c++1z' was enabled, but the pre-condition 'features.c++17' failed.
    

    fanquake commented at 10:49 am on August 25, 2020:

    Ubuntu 16.04 is not listed as supported by Qt 5.15.x. Regardless, if Qts build system cant detect that your compiler supports C++17 it’s not going to build in C++17 mode. Looking at the GCC on Xenial, it’s 5.3.1, which only has support for some C++17 features.

    If you post the actual precondition that failed (it’ll be earlier in the log) we could take a look at it.


    hebasto commented at 10:52 am on August 25, 2020:

    If you post the actual precondition that failed (it’ll be earlier in the log) we could take a look at it.

    https://travis-ci.org/github/hebasto/bitcoin/jobs/720916965#L4634


    hebasto commented at 10:54 am on August 25, 2020:
     0Checking for C++17 support... 
     1+ cd /home/travis/build/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/qt/5.15.0-e4e26f06c7b/qtbase/config.tests/cxx17 && /home/travis/build/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/qt/5.15.0-e4e26f06c7b/qtbase/bin/qmake "CONFIG -= qt debug_and_release app_bundle lib_bundle" "CONFIG += static warn_off console single_arch" -early "CONFIG += cross_compile" /home/travis/build/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/qt/5.15.0-e4e26f06c7b/qtbase/config.tests/cxx17
     2+ cd /home/travis/build/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/qt/5.15.0-e4e26f06c7b/qtbase/config.tests/cxx17 && MAKEFLAGS= /usr/bin/make
     3> make[1]: Entering directory '/home/travis/build/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/qt/5.15.0-e4e26f06c7b/qtbase/config.tests/cxx17'
     4> g++ -c -m64 -pipe -pipe -O2 -I/home/travis/build/hebasto/bitcoin/depends/x86_64-pc-linux-gnu/include -O2 -std=gnu++1z -w -fPIC  -I. -I/home/travis/build/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/qt/5.15.0-e4e26f06c7b/qtbase/mkspecs/linux-g++-64 -o main.o main.cpp
     5> main.cpp:8:19: fatal error: variant: No such file or directory
     6> compilation terminated.
     7> Makefile:171: recipe for target 'main.o' failed
     8> make[1]: *** [main.o] Error 1
     9> make[1]: Leaving directory '/home/travis/build/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/qt/5.15.0-e4e26f06c7b/qtbase/config.tests/cxx17'
    10test config.qtbase.tests.cxx17 FAILE
    

    fanquake commented at 12:03 pm on August 25, 2020:

    fatal error: variant: No such file or directory

    The problem is that the compiler doesn’t support C++17. GCC didn’t introduce support for std::variant (in libstdc++) until the 7.1 release. Xenial ships with 5.3.1. So when Qts build system tests for C++17 support by checking it can compile something using std::variant, it’s failing as expected.

  18. MarcoFalke commented at 9:29 am on August 25, 2020: member
    This is currently assigned to the 0.22 milestone, by which time both centos:7 and xenial are no longer supported. So no need to test on them right now.
  19. hebasto commented at 9:36 am on August 25, 2020: member

    This is currently assigned to the 0.22 milestone, by which time both centos:7 and xenial are no longer supported. So no need to test on them right now.

    So let’s remove them from CI jobs in this PR.

  20. hebasto commented at 10:09 am on August 25, 2020: member

    macOS 10.12 build error (on Travis):

    0Project ERROR: Cannot run target compiler 'x86_64-apple-darwin16-clang++'. Output:
    1===================
    2===================
    3Maybe you forgot to setup the environment?
    
  21. hebasto commented at 10:40 am on August 25, 2020: member
  22. hebasto commented at 10:49 am on August 25, 2020: member

    It would be nice to add a doc commit with the minimum MinGW version requirement:

  23. hebasto commented at 11:20 am on August 25, 2020: member

    Windows build on Travis is a subject of https://forum.qt.io/topic/113250/building-qt-fails-with-missing-dxgil_3-h

    Could be fixed by bumping Ubuntu version up to 20.04:

     0--- a/ci/test/00_setup_env_win64.sh
     1+++ b/ci/test/00_setup_env_win64.sh
     2@@ -7,7 +7,7 @@
     3 export LC_ALL=C.UTF-8
     4 
     5 export CONTAINER_NAME=ci_win64
     6-export DOCKER_NAME_TAG=ubuntu:18.04  # Check that bionic can cross-compile to win64 (bionic is used in the gitian build as well)
     7+export DOCKER_NAME_TAG=ubuntu:20.04
     8 export HOST=x86_64-w64-mingw32
     9 export PACKAGES="python3 nsis g++-mingw-w64-x86-64 wine-binfmt wine64"
    10 export RUN_FUNCTIONAL_TESTS=false
    
  24. MarcoFalke commented at 12:02 pm on August 25, 2020: member

    So let’s remove them from CI jobs in this PR.

    They won’t get removed. #19504 is the first pull that goes into 0.22 and that simply bumps them: https://github.com/bitcoin/bitcoin/pull/19504/files#r455507731

  25. hebasto commented at 12:29 pm on August 25, 2020: member

    From the Qt source it follows that this change is required:

     0--- a/build-aux/m4/bitcoin_qt.m4
     1+++ b/build-aux/m4/bitcoin_qt.m4
     2@@ -309,8 +309,8 @@ AC_DEFUN([_BITCOIN_QT_FIND_STATIC_PLUGINS],[
     3       PKG_CHECK_MODULES([QTFB], [Qt5FbSupport], [QT_LIBS="-lQt5FbSupport $QT_LIBS"])
     4       PKG_CHECK_MODULES([QTFONTDATABASE], [Qt5FontDatabaseSupport], [QT_LIBS="-lQt5FontDatabaseSupport $QT_LIBS"])
     5       PKG_CHECK_MODULES([QTTHEME], [Qt5ThemeSupport], [QT_LIBS="-lQt5ThemeSupport $QT_LIBS"])
     6-      PKG_CHECK_MODULES([QTSERVICE], [Qt5ServiceSupport], [QT_LIBS="-lQt5ServiceSupport $QT_LIBS"])
     7       if test "x$TARGET_OS" = xlinux; then
     8+        PKG_CHECK_MODULES([QTSERVICE], [Qt5ServiceSupport], [QT_LIBS="-lQt5ServiceSupport $QT_LIBS"])
     9         PKG_CHECK_MODULES([QTXCBQPA], [Qt5XcbQpa], [QT_LIBS="$QTXCBQPA_LIBS $QT_LIBS"])
    10       elif test "x$TARGET_OS" = xdarwin; then
    11         PKG_CHECK_MODULES([QTCLIPBOARD], [Qt5ClipboardSupport], [QT_LIBS="-lQt5ClipboardSupport $QT_LIBS"])
    

    At least, it fixes the Windows build on Travis :)

  26. fanquake referenced this in commit 2562d5d238 on Aug 27, 2020
  27. fanquake force-pushed on Aug 27, 2020
  28. fanquake commented at 10:41 am on August 27, 2020: member

    Rebased after #19761. Fixed-up QTSERVICE, thanks @hebasto. Dropped the freetype back-compat patch. See commit message for reasoning. Turned off some additional Qt features, like the markdown reader and SQL item models. We also don’t use GSS but no-gss doesn’t seem to work.

    Some more TODO: Figure out how much more of our patching / hacking we can drop. I’m also planning on splitting anything C++17-bump related into a separate PR, so it’s clear what will be going in before this PR is merged, and what isn’t required testing wise. i.e building this assumes the use of a C++17 capable compiler.

  29. hebasto commented at 12:10 pm on August 27, 2020: member

    Tested 3f4fe21d3fa04cc8f284dccae03a5e4a27dba9e4, still having:

    0In file included from rhi/qrhi.cpp:49:0:
    1rhi/qrhid3d11_p_p.h:57:10: fatal error: dxgi1_3.h: No such file or directory
    2 #include <dxgi1_3.h>
    3          ^~~~~~~~~~~
    4compilation terminated.
    

    See #19716 (comment)

    0Project ERROR: Cannot run target compiler 'x86_64-apple-darwin16-clang++'. Output:
    1===================
    2===================
    3Maybe you forgot to setup the environment?
    
  30. hebasto commented at 7:48 pm on August 27, 2020: member

    I’ve managed to fix Windows build with the following patch:

    0--- a/qtbase/src/gui/gui.pro
    1+++ b/qtbase/src/gui/gui.pro
    2@@ -49,7 +49,6 @@
    3 include(itemmodels/itemmodels.pri)
    4 include(vulkan/vulkan.pri)
    5 include(platform/platform.pri)
    6-include(rhi/rhi.pri)
    7 
    8 QMAKE_LIBS += $$QMAKE_LIBS_GUI
    9 
    

    It opts out a new RHI functionality, and, as a side effect, reduces compile time.

    Branch: https://github.com/hebasto/bitcoin/commits/pr19716-0827-win Travis: https://travis-ci.org/github/hebasto/bitcoin/builds/721800296

  31. fanquake commented at 0:39 am on August 28, 2020: member

    I’ve managed to fix Windows build

    Is this fixing a problem other than dxgi1_3.h: No such file or directory mentioned above? In that case the problem, and the solution is pretty clear. The CI is using a version of the mingw headers that are too old to build Qt. This will be fixed when we use a newer version of Ubuntu for builds.

    I’m also not sure that disabling RHI is the right approach, as it seems that’s what Qt is going to be using for all it’s graphics and rendering from Qt 6 on-wards. Also, the blog post you linked says " For Qt 5.15 LTS RHI is an opt-in functionality", so is a patch actually required to disable it? Shouldn’t there be (a combination of) configure flags that will opt you in/out of the functionality?

  32. sidhujag referenced this in commit a012bea252 on Aug 28, 2020
  33. hebasto commented at 7:08 am on August 28, 2020: member

    Is this fixing a problem other than dxgi1_3.h: No such file or directory mentioned above?

    Not sure what do you mean exactly.

    In that case the problem, and the solution is pretty clear. The CI is using a version of the mingw headers that are too old to build Qt. This will be fixed when we use a newer version of Ubuntu for builds.

    Sure, #19716 (comment)

    I’m also not sure that disabling RHI is the right approach, as it seems that’s what Qt is going to be using for all it’s graphics and rendering from Qt 6 on-wards. Also, the blog post you linked says " For Qt 5.15 LTS RHI is an opt-in functionality", so is a patch actually required to disable it? Shouldn’t there be (a combination of) configure flags that will opt you in/out of the functionality?

    I have not found any configure options or features to disable RHI. By the time we switch to Qt 6 we will use a newer version of Ubuntu for builds for sure :)

  34. hebasto commented at 7:28 am on August 28, 2020: member
    IIUC, RHI is used for rendering in Qt Quick framework, not in Qt Widgets.
  35. MarcoFalke commented at 11:14 am on August 28, 2020: member
    There will probably be fewer warning by bumping the qt version, so you might be able to remove the Temporary workaround for [#16368](/bitcoin-bitcoin/16368/)
  36. fanquake force-pushed on Aug 31, 2020
  37. fanquake commented at 3:16 am on August 31, 2020: member
    Rebased, and updated the win64 CI now that #18921 has been merged.
  38. hebasto commented at 4:29 pm on September 2, 2020: member
    0Project ERROR: Cannot run target compiler 'x86_64-apple-darwin16-clang++'. Output:
    1===================
    2===================
    3Maybe you forgot to setup the environment?
    

    @fanquake This problem could be solved with https://github.com/hebasto/bitcoin/commit/cc5752f6788ee8408f98ce19c91a7fe0771d5d20

    But another problem with SDK arises:

    0> Unknown error resolving current platform SDK version.
    
  39. fanquake force-pushed on Sep 15, 2020
  40. fanquake commented at 8:47 am on September 15, 2020: member

    Rebased on top of #19867. This now also builds Qt 5.15.1.

    @fanquake This problem could be solved with hebasto@cc5752f @hebasto I think the correct solution here is actually to update our sed commands that perform a similar replacement.

  41. fanquake force-pushed on Nov 23, 2020
  42. fanquake commented at 8:44 am on November 23, 2020: member
    Rebased on master. Updated some dependencies. Updated to Qt 5.15.2. I’ll continue splitting a few more changes off here.
  43. laanwj referenced this in commit 555b5d1bf9 on Nov 23, 2020
  44. fanquake force-pushed on Nov 24, 2020
  45. jonasschnelli marked this as ready for review on Nov 25, 2020
  46. jonasschnelli marked this as a draft on Nov 25, 2020
  47. jonasschnelli commented at 8:42 pm on November 25, 2020: contributor
    I think this might be helpful for the macOS11 visual glitches https://github.com/bitcoin-core/gui/issues/136. But maybe its still too early,.. see https://bugreports.qt.io/browse/QTBUG-85546.
  48. fanquake force-pushed on Nov 26, 2020
  49. hebasto commented at 6:05 pm on November 30, 2020: member

    3975ec0a5f5a298b93e7e39397b44602105ad4b7

    On CentOS 8:

     0$ make -C depends qt
     1...
     2Building libxkbcommon...
     3make[1]: Entering directory '/home/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/libxkbcommon/0.8.4-fd57d1b36f9'
     4  YACC     src/xkbcomp/parser.c
     5yacc: e - line 219 of "/home/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/libxkbcommon/0.8.4-fd57d1b36f9/src/xkbcomp/parser.y", syntax error
     6%destructor { FreeStmt((ParseCommon *) $$); }
     7^
     8make[1]: *** [Makefile:1705: src/xkbcomp/parser.c] Error 1
     9make[1]: Leaving directory '/home/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/libxkbcommon/0.8.4-fd57d1b36f9'
    10make: *** [funcs.mk:267: /home/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/libxkbcommon/0.8.4-fd57d1b36f9/./.stamp_built] Error 2
    11make: Leaving directory '/home/hebasto/bitcoin/depends'
    
  50. jonasschnelli referenced this in commit 6af8a6232b on Dec 16, 2020
  51. sidhujag referenced this in commit 84a25b80a1 on Dec 17, 2020
  52. BlockMechanic commented at 11:02 am on January 2, 2021: contributor

    3975ec0

    On CentOS 8:

     0$ make -C depends qt
     1...
     2Building libxkbcommon...
     3make[1]: Entering directory '/home/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/libxkbcommon/0.8.4-fd57d1b36f9'
     4  YACC     src/xkbcomp/parser.c
     5yacc: e - line 219 of "/home/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/libxkbcommon/0.8.4-fd57d1b36f9/src/xkbcomp/parser.y", syntax error
     6%destructor { FreeStmt((ParseCommon *) $$); }
     7^
     8make[1]: *** [Makefile:1705: src/xkbcomp/parser.c] Error 1
     9make[1]: Leaving directory '/home/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/libxkbcommon/0.8.4-fd57d1b36f9'
    10make: *** [funcs.mk:267: /home/hebasto/bitcoin/depends/work/build/x86_64-pc-linux-gnu/libxkbcommon/0.8.4-fd57d1b36f9/./.stamp_built] Error 2
    11make: Leaving directory '/home/hebasto/bitcoin/depends'
    

    Same issue on ubuntu 18.04

  53. BlockMechanic commented at 11:26 am on January 2, 2021: contributor
    @hebasto The issue with with libxkbcommon is fixed by installing bison rather than byacc, some reading :- https://stackoverflow.com/questions/50794051/ubuntu-byacc-btyacc-syntax-error.
  54. fanquake force-pushed on Jan 5, 2021
  55. fanquake marked this as ready for review on Jan 5, 2021
  56. fanquake commented at 4:38 am on January 5, 2021: member

    The issue with with libxkbcommon is fixed by installing bison rather than byacc

    The CI changes to install bison have now been merged into the “qt 5.15.2” commit, rather than being in a separate WIP commit. Also added bb38e8a30de2278b4bd9dae6f80cc097892dd5c8 to stop using -optimized-tools in release mode. We can split off more commits if need be.

    While this still has at least one outstanding issue, which is fixing the macOS cross-compile, I’m going to take it out of draft. If anyone wants to help debug why the macOS theming (when built using locally using depends) isn’t correct, that’d be handy. It also needs more testing across OSs, particularly Linux.

  57. fanquake force-pushed on Jan 5, 2021
  58. fanquake force-pushed on Jan 5, 2021
  59. fanquake commented at 8:24 am on January 5, 2021: member
    I’ve now fixed the macOS cross-compilation issue and added a commit that disables some SDK version checking, as that would try and invoke xcrun, which isn’t available when cross-compiling. I’ve also added a commit (262e02995912a9caa4026105d9ce6237965e8600) which might help debug the theme issues.
  60. fanquake force-pushed on Jan 5, 2021
  61. DrahtBot added the label Needs rebase on Jan 5, 2021
  62. fanquake force-pushed on Jan 5, 2021
  63. DrahtBot removed the label Needs rebase on Jan 5, 2021
  64. jarolrod commented at 9:06 pm on January 13, 2021: member
    Any consensus surrounding Qt dropping LTS for Qt 5.15? See: https://www.theregister.com/2021/01/05/qt_lts_goes_commercial_only/
  65. fanquake added this to the "Blockers" column in a project

  66. laanwj commented at 1:27 pm on January 25, 2021: member

    Any consensus surrounding Qt dropping LTS for Qt 5.15?

    I don’t think that’s too relevant here. It means that upstream won’t do any updates on top of 5.15. But we generally don’t track minor versions of Qt so for us it makes no difference. The next Qt bump after this is likely to be 6.x.

  67. laanwj commented at 3:52 pm on January 25, 2021: member

    I’m confused by this Win64 CI error:

     0make[4]: Leaving directory '/tmp/cirrus-ci-build/ci/scratch/build/bitcoin-x86_64-w64-mingw32/src'
     1Running tests: allocator_tests from test/allocator_tests.cpp
     2wine: fixed a temporary directory error, please try running the same command again
     3make[3]: *** [Makefile:16848: test/addrman_tests.cpp.test] Error 1
     4make[3]: *** Waiting for unfinished jobs....
     5wine: fixed a temporary directory error, please try running the same command again
     6make[3]: *** [Makefile:16848: test/allocator_tests.cpp.test] Error 1
     7wine: created the configuration directory '/root/.wine'
     8wine: chdir to /tmp/wine-4SkHOY/server-32-27828a : No such file or directory
     9wine: chdir to /tmp/wine-2CwwWn/server-32-27828a : No such file or directory
    10make[3]: *** [Makefile:16848: test/amount_tests.cpp.test] Error 1
    11make[3]: *** [Makefile:16848: test/arith_uint256_tests.cpp.test] Error 1
    12make[3]: Leaving directory '/tmp/cirrus-ci-build/ci/scratch/build/bitcoin-x86_64-w64-mingw32/src'
    13make[2]: *** [Makefile:15367: check-am] Error 2
    14make[2]: Leaving directory '/tmp/cirrus-ci-build/ci/scratch/build/bitcoin-x86_64-w64-mingw32/src'
    15make[1]: *** [Makefile:15052: check-recursive] Error 1
    16make[1]: Leaving directory '/tmp/cirrus-ci-build/ci/scratch/build/bitcoin-x86_64-w64-mingw32/src'
    17make: *** [Makefile:813: check-recursive] Error 1
    

    Already tried restarting it, to no avail.

  68. MarcoFalke commented at 3:56 pm on January 25, 2021: member
    Looks like an upstream bug. Locally I could fix it by running the command twice, IIRC
  69. MarcoFalke added the label Needs gitian build on Jan 25, 2021
  70. MarcoFalke added the label Needs Guix build on Jan 25, 2021
  71. in ci/test/00_setup_env_win64.sh:10 in 5cdd5e775e outdated
     6@@ -7,7 +7,7 @@
     7 export LC_ALL=C.UTF-8
     8 
     9 export CONTAINER_NAME=ci_win64
    10-export DOCKER_NAME_TAG=ubuntu:18.04  # Check that bionic can cross-compile to win64 (bionic is used in the gitian build as well)
    11+export DOCKER_NAME_TAG=ubuntu:20.04
    


    MarcoFalke commented at 4:37 pm on January 25, 2021:

    I don’t like this change, but without it the ci fails: https://cirrus-ci.com/task/6121023374360576?command=ci#L5504

     0compiling .rcc/release/qrc_qmake_webgradients.cpp
     1In file included from rhi/qrhi.cpp:49:0:
     2rhi/qrhid3d11_p_p.h:57:10: fatal error: dxgi1_3.h: No such file or directory
     3 #include <dxgi1_3.h>
     4          ^~~~~~~~~~~
     5compilation terminated.
     6Makefile.Release:71663: recipe for target '.obj/release/qrhi.o' failed
     7make[3]: *** [.obj/release/qrhi.o] Error 1
     8make[3]: *** Waiting for unfinished jobs....
     9In file included from rhi/qrhid3d11.cpp:37:0:
    10rhi/qrhid3d11_p_p.h:57:10: fatal error: dxgi1_3.h: No such file or directory
    11 #include <dxgi1_3.h>
    12          ^~~~~~~~~~~
    13compilation terminated.
    14Makefile.Release:72684: recipe for target '.obj/release/qrhid3d11.o' failed
    15make[3]: *** [.obj/release/qrhid3d11.o] Error 1
    16make[3]: Leaving directory '/tmp/cirrus-ci-build/depends/work/build/x86_64-w64-mingw32/qt/5.15.2-102170435c3/qtbase/src/gui'
    17Makefile:45: recipe for target 'release' failed
    18make[2]: *** [release] Error 2
    19make[2]: Leaving directory '/tmp/cirrus-ci-build/depends/work/build/x86_64-w64-mingw32/qt/5.15.2-102170435c3/qtbase/src/gui'
    20Makefile:423: recipe for target 'sub-gui' failed
    21make[1]: *** [sub-gui] Error 2
    22make[1]: Leaving directory '/tmp/cirrus-ci-build/depends/work/build/x86_64-w64-mingw32/qt/5.15.2-102170435c3/qtbase/src'
    23funcs.mk:273: recipe for target '/tmp/cirrus-ci-build/depends/work/build/x86_64-w64-mingw32/qt/5.15.2-102170435c3/./.stamp_built' failed
    24make: *** [/tmp/cirrus-ci-build/depends/work/build/x86_64-w64-mingw32/qt/5.15.2-102170435c3/./.stamp_built] Error 2
    25make: Leaving directory '/tmp/cirrus-ci-build/depends'
    26Exit status: 2
    

    MarcoFalke commented at 4:38 pm on January 25, 2021:
    Do the gitian builds pass? If yes, why do they and the ci doesn’t?

    fanquake commented at 1:01 am on January 26, 2021:

    I don’t like this change, but without it the ci fails:

    A newer version of mingw-w64 & headers is required to build this version of Qt, so we (essentially) have to use a newer version of Ubuntu in the CI & gitian (I’ll add those changes, but will PR them separate in advance). This was also discussed above.


    MarcoFalke commented at 7:03 am on January 26, 2021:
    Note to myself: (gitian doesn’t pass either) #19716 (comment)
  72. DrahtBot commented at 3:42 am on January 26, 2021: member

    Gitian builds

    File commit d0852f39a7a3bfbb36437ef20bf94c263cad632a(master) commit 06ddcb1d3dc2627d5262ab22423d2e55e6cd6f95(master and this pull)
    bitcoin-core-linux-22-res.yml 71a83cb9ff92de39...
    bitcoin-core-osx-22-res.yml c24e9746c660fd94...
    bitcoin-core-win-22-res.yml 23c52e66375b8552...
    *-aarch64-linux-gnu-debug.tar.gz 8d57e596b614cac3...
    *-aarch64-linux-gnu.tar.gz 59b3cbe158e31ed6...
    *-arm-linux-gnueabihf-debug.tar.gz c740fceba55b6744...
    *-arm-linux-gnueabihf.tar.gz d048a0e64edaa8bf...
    *-osx-unsigned.dmg 6edea68f072311e4...
    *-osx64.tar.gz d0e07a4123befe5b...
    *-riscv64-linux-gnu-debug.tar.gz 943970e956f65e15...
    *-riscv64-linux-gnu.tar.gz 15cae22d0f1b0cfb...
    *-win64-debug.zip 52f70a8aa6154c7e...
    *-win64-setup-unsigned.exe c25576ac4a20cf8a...
    *-win64.zip 45b4446c73a75b64...
    *-x86_64-linux-gnu-debug.tar.gz 2456b5b723e0dc71...
    *-x86_64-linux-gnu.tar.gz d60a9f2be554d1cf...
    *.tar.gz ef37b0e6911cbe01...
    linux-build.log 5ed6be7e2d31d3b3... 78f6c8f9e04aefaa...
    osx-build.log e606ca23b7750ec0... 5a281933faea8783...
    win-build.log 63a601ac834b5ca7... 16be22c88ea95e56...
    linux-build.log.diff 3243d042b2935296...
    osx-build.log.diff ac0522a525ab3188...
    win-build.log.diff d4d0421cd1f55af3...
  73. DrahtBot removed the label Needs gitian build on Jan 26, 2021
  74. MarcoFalke commented at 7:02 am on January 26, 2021: member
     0make[1]: Leaving directory '/home/ubuntu/build/bitcoin/distsrc-x86_64-apple-darwin18'
     1+ make -j1 -C src check-security
     2make: Entering directory '/home/ubuntu/build/bitcoin/distsrc-x86_64-apple-darwin18/src'
     3Checking binary security...
     4make: Leaving directory '/home/ubuntu/build/bitcoin/distsrc-x86_64-apple-darwin18/src'
     5+ make -j1 -C src check-symbols
     6make: Entering directory '/home/ubuntu/build/bitcoin/distsrc-x86_64-apple-darwin18/src'
     7Checking macOS dynamic libraries...
     8Security is not in ALLOWED_LIBRARIES!
     9Metal is not in ALLOWED_LIBRARIES!
    10QuartzCore is not in ALLOWED_LIBRARIES!
    11IOSurface is not in ALLOWED_LIBRARIES!
    12ColorSync is not in ALLOWED_LIBRARIES!
    13CoreVideo is not in ALLOWED_LIBRARIES!
    14qt/bitcoin-qt: failed DYNAMIC_LIBRARIES
    15Makefile:14994: recipe for target 'check-symbols' failed
    16make: *** [check-symbols] Error 1
    17make: Leaving directory '/home/ubuntu/build/bitcoin/distsrc-x86_64-apple-darwin18/src'
    
     0compiling rhi/qrhi.cpp
     1In file included from rhi/qrhi.cpp:49:0:
     2rhi/qrhid3d11_p_p.h:57:10: fatal error: dxgi1_3.h: No such file or directory
     3 #include <dxgi1_3.h>
     4          ^~~~~~~~~~~
     5compilation terminated.
     6Makefile.Release:71663: recipe for target '.obj/release/qrhi.o' failed
     7make[3]: *** [.obj/release/qrhi.o] Error 1
     8make[3]: Leaving directory '/home/ubuntu/build/bitcoin/depends/work/build/x86_64-w64-mingw32/qt/5.15.2-b4b0c80531f/qtbase/src/gui'
     9Makefile:45: recipe for target 'release' failed
    10make[2]: *** [release] Error 2
    11make[2]: Leaving directory '/home/ubuntu/build/bitcoin/depends/work/build/x86_64-w64-mingw32/qt/5.15.2-b4b0c80531f/qtbase/src/gui'
    12Makefile:423: recipe for target 'sub-gui' failed
    13make[1]: *** [sub-gui] Error 2
    14make[1]: Leaving directory '/home/ubuntu/build/bitcoin/depends/work/build/x86_64-w64-mingw32/qt/5.15.2-b4b0c80531f/qtbase/src'
    15funcs.mk:273: recipe for target '/home/ubuntu/build/bitcoin/depends/work/build/x86_64-w64-mingw32/qt/5.15.2-b4b0c80531f/./.stamp_built' failed
    16make: *** [/home/ubuntu/build/bitcoin/depends/work/build/x86_64-w64-mingw32/qt/5.15.2-b4b0c80531f/./.stamp_built] Error 2
    17make: Leaving directory '/home/ubuntu/build/bitcoin/depends'
    
    0Building libxkbcommon...
    1make[1]: Entering directory '/home/ubuntu/build/bitcoin/depends/work/build/x86_64-linux-gnu/libxkbcommon/0.8.4-68d09a7117d'
    2  YACC     src/xkbcomp/parser.c
    3./build-aux/ylwrap: line 176: yacc: command not found
    4Makefile:1705: recipe for target 'src/xkbcomp/parser.c' failed
    5make[1]: *** [src/xkbcomp/parser.c] Error 127
    6make[1]: Leaving directory '/home/ubuntu/build/bitcoin/depends/work/build/x86_64-linux-gnu/libxkbcommon/0.8.4-68d09a7117d'
    7funcs.mk:273: recipe for target '/home/ubuntu/build/bitcoin/depends/work/build/x86_64-linux-gnu/libxkbcommon/0.8.4-68d09a7117d/./.stamp_built' failed
    8make: *** [/home/ubuntu/build/bitcoin/depends/work/build/x86_64-linux-gnu/libxkbcommon/0.8.4-68d09a7117d/./.stamp_built] Error 2
    9make: Leaving directory '/home/ubuntu/build/bitcoin/depends'
    
  75. jonasschnelli referenced this in commit 7595183543 on Jan 28, 2021
  76. sidhujag referenced this in commit 7310454603 on Jan 28, 2021
  77. laanwj removed this from the "Blockers" column in a project

  78. MarcoFalke referenced this in commit ca85449f22 on Feb 8, 2021
  79. DrahtBot added the label Needs rebase on Feb 8, 2021
  80. DrahtBot commented at 11:55 am on February 8, 2021: member

    🐙 This pull request conflicts with the target branch and needs rebase.

    Want to unsubscribe from rebase notifications on this pull request? Just convert this pull request to a “draft”.

  81. sidhujag referenced this in commit f2c9a6f37e on Feb 8, 2021
  82. fanquake force-pushed on Feb 9, 2021
  83. fanquake removed the label Needs rebase on Feb 9, 2021
  84. fanquake added the label Needs gitian build on Feb 9, 2021
  85. DrahtBot added the label Needs rebase on Feb 9, 2021
  86. fanquake removed the label Needs rebase on Feb 9, 2021
  87. fanquake deleted a comment on Feb 9, 2021
  88. DrahtBot commented at 9:11 am on February 9, 2021: member

    Win64 [unit tests, no gui tests, no boost::process, no functional tests] [bionic]:

    0In file included from rhi/qrhi.cpp:49:0:
    1rhi/qrhid3d11_p_p.h:57:10: fatal error: dxgi1_3.h: No such file or directory
    2 #include <dxgi1_3.h>
    3          ^~~~~~~~~~~
    4compilation terminated.
    
  89. fanquake force-pushed on Feb 9, 2021
  90. fanquake force-pushed on Feb 9, 2021
  91. build: remove qt libpng powerpc patch 9f6ece4890
  92. build: xproto 7.0.31 1ecaffcc2a
  93. build: libXau 1.0.9 eecb1eb911
  94. build: xcb_proto 1.14 45eda952b3
  95. build: expat 2.2.10 c1fb969655
  96. build: freetype 2.10.4
    Co-authored-by: mammix2 <mammix2@hotmail.com>
    f27f581801
  97. build: libxcb 1.14
    Minimum required libxcb to build qt 5.15.x is 1.11.
    
    https://codereview.qt.nokia.com/c/qt/qtbase/+/253905
    
    Some plugins have been re-enabled as they are required by Qt.
    9c157a4ca4
  98. build: add xkbcommon 0.8.4
    Currently 0.8.4 because at 0.9.0 they switch from autotools to meson..
    
    This also requires yacc (bison) to be available at build time.
    5e699b1bb0
  99. build: add libxcb_util 0.4.0 08d98b4dee
  100. build: add libxcb_util_render 0.3.9 ef4bfd7194
  101. build: add libxcb_util_keysyms 0.4.0 f83f196357
  102. build: add libxcb_util_image 0.4.0 9bc4c056f1
  103. build: patch around broken pkg-config in libxcb_util_image 3557e7376a
  104. build: add libxcb_util_wm 0.4.1
    Required for xcb_icccm.
    d2a8432fec
  105. build: qt 5.15.2 eb612c1f86
  106. depends: remove fix_configure_mac.patch from qt
    Fixed upstream in Qt 5.11.0RC1
    
    https://bugreports.qt.io/browse/QTBUG-67286
    7907064f23
  107. depends: remove fix_riscv64_arch.patch from qt
    Was fixed upstream in 6a39e49a6cdeb28a04a3657bb6a22f848d5dfa9d
    2aadc37c67
  108. depends: remove fix_rcc_determinism.patch from qt
    Fixed upstream in https://bugreports.qt.io/browse/QTBUG-62511
    95081b3470
  109. depends: remove xkb-default.patch from qt
    This was removed upstream in d5abf545971da717014d316127045fc19edbcd65
    dc7b699804
  110. build: update fix_pkg_config.patch for qt 5.15 fbd60d9922
  111. build: update fix_no_printer.patch for qt 5.15 2ec8eade4f
  112. build: remove fix_android_qmake_conf.patch from qt build
    This may need to be reinstated in some capacity, but I haven't looked
    through the changes here, and have no ability to test them.
    f27def14c1
  113. build: update no-xlib.patch for qt 5.15 0367ed51f7
  114. build: update fix_android_jni_static.patch for qt 5.15 0b349047d7
  115. build: remove freetype_back_compat.patch for qt 5.15
    By the time we ship a release with Qt 5.15, we'll certainly no-longer be
    supporting Ubuntu 14.04 and Ubuntu 16.04 ships with FreeType 2.6.1,
    which is new enough that using the symbol is no-longer an issue.
    
    The renaming of FT_Get_X11_Font_Format() happened in FreeType 2.6
    b54e861ea6
  116. build: no-longer disable dark mode on macOS
    We should no-longer have to disable darkmode, as Qt should
    properly support it, and we are using a new enough SDK.
    2e6fa254ac
  117. build: remove fix_mingw_cross_compile.patch for qt 5.15 505098f128
  118. build: only pass -optimized-tools to qt in debug mode
    Qt's configure tells us that "-optimized-tools is not useful in -release
    mode.", so don't use it there.
    34b69c487a
  119. build: disable qt SDK version checking
    This tries to invoke xcrun, which is not available when cross-compiling.
    Given we are in control of the SDK versions being used, removing this
    check has minimal-no effect.
    364250b68a
  120. fanquake force-pushed on Feb 10, 2021
  121. DrahtBot commented at 9:43 pm on February 12, 2021: member

    Gitian builds

    File commit b69eab9025678654acd0dda1861152c239f07699(master) commit a85341f3ada7ce08bae3af32851474217e07fbc2(master and this pull)
    *-aarch64-linux-gnu-debug.tar.gz c5fa5486923407ad... 237b175a3d490908...
    *-aarch64-linux-gnu.tar.gz 70fb6e1a9d4ba982... df4e10be78d1818a...
    *-arm-linux-gnueabihf-debug.tar.gz 8a9ff7cbb07d3610... f59262ebcd41f36b...
    *-arm-linux-gnueabihf.tar.gz ec50c9918479cf6e... c68bd696e2f0b050...
    *-osx-unsigned.dmg 91af0e1832b97596... 1a5ccc8d441d98a8...
    *-osx64.tar.gz c8442bc118faf6b9... 5a7461590034f51b...
    *-powerpc64-linux-gnu-debug.tar.gz c0ab553964e4b990... 88481a1519e85c1e...
    *-powerpc64-linux-gnu.tar.gz 04df9adf29c38cc1... 69baba10885ff4db...
    *-powerpc64le-linux-gnu-debug.tar.gz 36fc8fc54968e48d... 327e2cb66d9c9f32...
    *-powerpc64le-linux-gnu.tar.gz fe832434b2b216f9... 2d341bed8323371d...
    *-riscv64-linux-gnu-debug.tar.gz 154bc3714a3e9a62... a1bb4c40011470f8...
    *-riscv64-linux-gnu.tar.gz e94bdad7e34c344c... f435b0d94bce2669...
    *-win64-debug.zip 7c302a10100fef9e...
    *-win64-setup-unsigned.exe 7721a0e923f9a6a8...
    *-win64.zip 9e86debd85c34b51...
    *-x86_64-linux-gnu-debug.tar.gz 055a65b474d29d93... 332070633bc5ab80...
    *-x86_64-linux-gnu.tar.gz 61c01306b0f3d965... b6da26666d0e713c...
    *.tar.gz 95d10633aa05a3f1... 895c79f389973f68...
    bitcoin-core-linux-22-res.yml c6e22aacac425c60... 16d159a458e1758c...
    bitcoin-core-osx-22-res.yml 0895d3848e391422... 396500ef35da3f71...
    bitcoin-core-win-22-res.yml 9529c497b7d2a1ba...
    linux-build.log f815452191141dcd... 23657c74f8bc680a...
    osx-build.log 18ff763035a0d62e... bec8b364d365ae66...
    win-build.log 542fa9b97e1cd10c... da2eab4c7aecafcb...
    bitcoin-core-linux-22-res.yml.diff 14d09a2fc0f18105...
    bitcoin-core-osx-22-res.yml.diff 51f08b318e5c7068...
    linux-build.log.diff d02392065ba1ed4b...
    osx-build.log.diff 3ee7cc51b8e4f011...
    win-build.log.diff e2fcec2f7ecda2a1...
  122. DrahtBot removed the label Needs gitian build on Feb 12, 2021
  123. MarcoFalke commented at 7:40 am on February 13, 2021: member
     0make[1]: Leaving directory '/home/ubuntu/build/bitcoin/distsrc-x86_64-w64-mingw32'
     1+ make -j1 -C src check-security
     2make: Entering directory '/home/ubuntu/build/bitcoin/distsrc-x86_64-w64-mingw32/src'
     3Checking binary security...
     4make: Leaving directory '/home/ubuntu/build/bitcoin/distsrc-x86_64-w64-mingw32/src'
     5+ make -j1 -C src check-symbols
     6make: Entering directory '/home/ubuntu/build/bitcoin/distsrc-x86_64-w64-mingw32/src'
     7Checking Windows dynamic libraries...
     8NETAPI32.dll is not in ALLOWED_LIBRARIES!
     9ole32.dll is not in ALLOWED_LIBRARIES!
    10qt/bitcoin-qt.exe: failed DYNAMIC_LIBRARIES
    11make: *** [Makefile:16867: check-symbols] Error 1
    12make: Leaving directory '/home/ubuntu/build/bitcoin/distsrc-x86_64-w64-mingw32/src'
    
  124. laanwj referenced this in commit 7fca189a2a on Feb 22, 2021
  125. DrahtBot commented at 8:52 am on March 3, 2021: member

    🐙 This pull request conflicts with the target branch and needs rebase.

    Want to unsubscribe from rebase notifications on this pull request? Just convert this pull request to a “draft”.

  126. DrahtBot added the label Needs rebase on Mar 3, 2021
  127. fanquake commented at 9:39 am on March 3, 2021: member
    Going to propose some smaller, simpler changes. New PR as they are substantially different from what is here.
  128. fanquake closed this on Mar 3, 2021

  129. MarcoFalke removed the label Needs Guix build on Mar 3, 2021
  130. MarcoFalke removed the label Needs rebase on Mar 3, 2021
  131. laanwj referenced this in commit e828fc8f52 on Mar 11, 2021
  132. PastaPastaPasta referenced this in commit ead70ab6bc on Jun 27, 2021
  133. PastaPastaPasta referenced this in commit 315944200a on Jun 28, 2021
  134. PastaPastaPasta referenced this in commit f926ca7a02 on Jun 29, 2021
  135. PastaPastaPasta referenced this in commit 060c575fee on Jul 1, 2021
  136. PastaPastaPasta referenced this in commit 9403294d90 on Jul 1, 2021
  137. PastaPastaPasta referenced this in commit 6b23c26640 on Jul 15, 2021
  138. PastaPastaPasta referenced this in commit 0fba9a3ecd on Jul 16, 2021
  139. UdjinM6 referenced this in commit 43ee2ef541 on Oct 23, 2021
  140. UdjinM6 referenced this in commit 1bfb6b9543 on Oct 23, 2021
  141. UdjinM6 referenced this in commit 76528449b5 on Oct 23, 2021
  142. UdjinM6 referenced this in commit 6c797b13e8 on Dec 4, 2021
  143. gades referenced this in commit 7d2463e39f on Apr 20, 2022
  144. DrahtBot locked this on Aug 16, 2022
  145. fanquake deleted the branch on Nov 9, 2022

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-12-18 21:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me