qmake: Select debug or release build

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.
This commit is contained in:
Thomas Tuegel 2019-10-12 11:17:02 -05:00
parent c49c0928ed
commit b80ce0aeca
No known key found for this signature in database
GPG key ID: 22CBF5249D4B4D59
5 changed files with 14 additions and 4 deletions

View file

@ -197,6 +197,7 @@ let
qmake = makeSetupHook {
deps = [ self.qtbase.dev ];
substitutions = {
inherit debug;
fix_qmake_libtool = ../hooks/fix-qmake-libtool.sh;
};
} ../hooks/qmake-hook.sh;

View file

@ -199,6 +199,7 @@ let
qmake = makeSetupHook {
deps = [ self.qtbase.dev ];
substitutions = {
inherit debug;
fix_qmake_libtool = ../hooks/fix-qmake-libtool.sh;
};
} ../hooks/qmake-hook.sh;

View file

@ -179,6 +179,7 @@ let
qmake = makeSetupHook {
deps = [ self.qtbase.dev ];
substitutions = {
inherit debug;
fix_qmake_libtool = ../hooks/fix-qmake-libtool.sh;
};
} ../hooks/qmake-hook.sh;

View file

@ -3,6 +3,9 @@
qmakeFlags=( ${qmakeFlags-} )
qmakePrePhase() {
qmakeFlags_orig=( "${qmakeFlags[@]}" )
# These flags must be added _before_ the flags specified in the derivation.
qmakeFlags=( \
"PREFIX=$out" \
"NIX_OUTPUT_OUT=$out" \
@ -11,8 +14,15 @@ qmakePrePhase() {
"NIX_OUTPUT_DOC=${!outputDev}/${qtDocPrefix:?}" \
"NIX_OUTPUT_QML=${!outputBin}/${qtQmlPrefix:?}" \
"NIX_OUTPUT_PLUGIN=${!outputBin}/${qtPluginPrefix:?}" \
"${qmakeFlags[@]}" \
)
if [ -n "@debug@" ]; then
qmakeFlags+=( "CONFIG+=debug" )
else
qmakeFlags+=( "CONFIG+=release" )
fi
qmakeFlags+=( "${qmakeFlags_orig[@]}" )
}
prePhases+=" qmakePrePhase"

View file

@ -9,9 +9,6 @@ args:
let
args_ = {
qmakeFlags = [ ("CONFIG+=" + (if debug then "debug" else "release")) ]
++ (args.qmakeFlags or []);
NIX_CFLAGS_COMPILE = toString (
optional (!debug) "-DQT_NO_DEBUG"
++ lib.toList (args.NIX_CFLAGS_COMPILE or []));