summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/qmake_use.prf
diff options
context:
space:
mode:
Diffstat (limited to 'mkspecs/features/qmake_use.prf')
-rw-r--r--mkspecs/features/qmake_use.prf32
1 files changed, 20 insertions, 12 deletions
diff --git a/mkspecs/features/qmake_use.prf b/mkspecs/features/qmake_use.prf
index dba45de92a..8159e471a2 100644
--- a/mkspecs/features/qmake_use.prf
+++ b/mkspecs/features/qmake_use.prf
@@ -1,23 +1,31 @@
suffix =
for(ever) {
- QMAKE_USE$${suffix} = $$unique(QMAKE_USE$${suffix})
+ CC_USES =
+ LD_USES =
for (use, QMAKE_USE$${suffix}) {
use = $$split(use, /)
name = $$take_first(use)
nu = $$upper($$name)
+ !contains(use, linkonly): CC_USES += $$nu
+ !contains(use, nolink): LD_USES += $$nu
+ }
+ CC_USES = $$resolve_depends(CC_USES, QMAKE_DEPENDS_, _CC)
+ for (nu, CC_USES) {
+ !defined(QMAKE_LIBS_$$nu, var): \
+ error("Library '$$lower($$nu)' is not defined.")
+
+ DEFINES += $$eval(QMAKE_DEFINES_$${nu})
+ INCLUDEPATH += $$eval(QMAKE_INCDIR_$${nu})
+ }
+ LD_USES = $$resolve_depends(LD_USES, QMAKE_DEPENDS_, _LD)
+ for (nu, LD_USES) {
!defined(QMAKE_LIBS_$$nu, var): \
- error("Library '$$name' is not defined.")
+ error("Library '$$lower($$nu)' is not defined.")
- !contains(use, nolink) {
- debug: \
- LIBS$${suffix} += $$eval(QMAKE_LIBS_$${nu}_DEBUG) $$eval(QMAKE_LIBS_$$nu)
- else: \
- LIBS$${suffix} += $$eval(QMAKE_LIBS_$${nu}_RELEASE) $$eval(QMAKE_LIBS_$$nu)
- }
- !contains(use, linkonly) {
- DEFINES += $$eval(QMAKE_DEFINES_$${nu})
- INCLUDEPATH += $$eval(QMAKE_INCDIR_$${nu})
- }
+ debug: \
+ LIBS$${suffix} += $$eval(QMAKE_LIBS_$${nu}_DEBUG) $$eval(QMAKE_LIBS_$$nu)
+ else: \
+ LIBS$${suffix} += $$eval(QMAKE_LIBS_$${nu}_RELEASE) $$eval(QMAKE_LIBS_$$nu)
}
!isEmpty(suffix): break()
suffix = "_PRIVATE"