Skip to content

Conversation

@Fuzzbawls
Copy link
Collaborator

Coming straight from bitcoin#16408

These X packages are not necessary to build our Qt dependency (Qt required them in earlier versions), so remove them.

Previously, in 683b7d7 and
0e75263, we accidentally broke QT's
ability to pick up Xlib thru the config.gui.tests.xlib configuration
test, which also means that config.gui.libraries.xcb_xlib wasn't run.

This resulted in a QT build that was implicitly -no-xcb-lib and
-no-feature-xlib.

This is actually a desired behaviour, as it means less required shared
objects for our final bitcoin-qt binary. Specifically, it eliminated the
libX11-xcb.so.1 and libX11.so.6 requirements.

In this commit, we explicitly build without Xlib. We should continue to
track upstream ticket https://bugreports.qt.io/browse/QTBUG-61452 which
talks about adding a -no-xlib (non-hidden) flag instead of the
-no-feature-xlib (hidden) flag.
We're no longer building QT with libX11/XLib, however, libX11/XLib
headers are still required for parts of QT. In this commit we add a
minimal configure.ac for libX11/XLib that is headers-only.

This change allows us to remove all of libX11/XLib's dependencies.
We're no longer building QT with libX11/XLib, so it doesn't make sense
to check for the x11-xcb package.
libXext was only needed (as a library) by QT when it was using
XLib/libX11 (as a library), now that we're building QT without
XLib/libX11, we can safely remove libXext.
They should no longer be needed as we build QT without libX11/XLib
libraries now.
There was a previous attempt to achieve this, and it was bad. This
works.
We can actually patch QT to remove its dependency on libX11's headers.
It turns it this wasn't that hard.
@Fuzzbawls Fuzzbawls added this to the Future milestone Mar 24, 2021
@Fuzzbawls Fuzzbawls self-assigned this Mar 24, 2021
@random-zebra random-zebra modified the milestones: Future, 6.0.0 Mar 25, 2021
Copy link

@random-zebra random-zebra left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

utACK 67c6c5a

Copy link

@furszy furszy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

utACK 67c6c5a

@furszy furszy merged commit e2085e5 into PIVX-Project:master Mar 31, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants