Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Qt: Do not require mkDerivation #108888

Merged
merged 8 commits into from
Jan 26, 2021

Conversation

ttuegel
Copy link
Member

@ttuegel ttuegel commented Jan 9, 2021

Motivation for this change

The return of #71089.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

doc/languages-frameworks/qt.section.md Outdated Show resolved Hide resolved
@@ -39,6 +40,7 @@ stdenv.mkDerivation {

name = "qtbase-${version}";
inherit qtCompatVersion src version;
inherit debug;
Copy link
Member

Choose a reason for hiding this comment

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

What does this option do? In https://github.com/NixOS/nixpkgs/pull/109239/files#diff-a178028d8bf3d9cb5c68fe3e5856be45f904bc22e1b9c6f938ed3c7c386026fdR259 there was a configure flag require to have debug symbols.

Copy link
Member Author

Choose a reason for hiding this comment

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

I don't know, that didn't used to be the case. This isn't a new option. The only thing "new" here, is that Qt will remember which option it was built with so that we don't have to pass a debug flag into every package that depends on it.

@@ -22,6 +22,7 @@
libGL,
buildExamples ? false,
buildTests ? false,
debug ? false,
developerBuild ? false,
Copy link
Member

Choose a reason for hiding this comment

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

What is the difference between debug and developerBuild?

Copy link
Member Author

Choose a reason for hiding this comment

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

According to the upstream build documentation, a "developer build" is an in-source build of Qt for developers. I have no idea why that would be useful to have in Nixpkgs, but I will make sure that we respect that flag for the purpose of propagating the correct CFLAGS.

The qmake hook sets its own `CONFIG+=debug` or `CONFIG+=release` depending on
how `qtbase` was built. We no longer rely on using the custom deriver for this
feature.
@ttuegel
Copy link
Member Author

ttuegel commented Jan 24, 2021

The documentation is now up-to-date and I have integrated some recent changes to developerBuild. I am re-running the NixOS tests, and then I will consider this "ready".

@jonringer
Copy link
Contributor

do you mind squashing related commits? Mostly looking at the ~6 fixup commits for qtbase-setup-hook.sh

@ttuegel
Copy link
Member Author

ttuegel commented Jan 25, 2021

Tests pass, so I'll clean up the commit history and we'll be good to go.

@ttuegel ttuegel force-pushed the feature--staging--qt-no-mkDerivation branch from 6779f25 to 13e3ec0 Compare January 25, 2021 21:56
@ttuegel ttuegel merged commit 0e418a1 into NixOS:staging Jan 26, 2021
@ttuegel ttuegel deleted the feature--staging--qt-no-mkDerivation branch January 26, 2021 22:24
@mweinelt mweinelt mentioned this pull request Feb 9, 2021
10 tasks
@Artturin Artturin mentioned this pull request Jun 22, 2021
11 tasks
@ilya-fedin ilya-fedin mentioned this pull request May 5, 2022
13 tasks
@NickCao NickCao mentioned this pull request Jan 21, 2023
13 tasks
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.

5 participants