qmake: don't misuse cache()

... when QMAKE_DEFAULT_{INC,LIB}DIRS cannot be determined.

it would have been nicer to actually persist empty results, but cache()
won't do that, and fixing it doesn't seem worth the effort now.

Change-Id: I95d5645e40a0da572f0def16462703373eaeb804
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
bb10
Oswald Buddenhagen 2018-12-13 17:53:38 +01:00
parent 74cdd89e0f
commit 852b1afa56
1 changed files with 5 additions and 2 deletions

View File

@ -183,8 +183,11 @@ isEmpty($${target_prefix}.INCDIRS) {
isEmpty(QMAKE_DEFAULT_LIBDIRS): QMAKE_DEFAULT_LIBDIRS = /lib /usr/lib
}
cache($${target_prefix}.INCDIRS, set stash, QMAKE_DEFAULT_INCDIRS)
cache($${target_prefix}.LIBDIRS, set stash, QMAKE_DEFAULT_LIBDIRS)
# cache() complains about undefined variables and doesn't persist empty ones.
!isEmpty(QMAKE_DEFAULT_INCDIRS): \
cache($${target_prefix}.INCDIRS, set stash, QMAKE_DEFAULT_INCDIRS)
!isEmpty(QMAKE_DEFAULT_LIBDIRS): \
cache($${target_prefix}.LIBDIRS, set stash, QMAKE_DEFAULT_LIBDIRS)
} else {
QMAKE_DEFAULT_INCDIRS = $$eval($${target_prefix}.INCDIRS)
QMAKE_DEFAULT_LIBDIRS = $$eval($${target_prefix}.LIBDIRS)