0
|
1 |
defineReplace(qtLibraryTarget) {
|
|
2 |
unset(LIBRARY_NAME)
|
|
3 |
LIBRARY_NAME = $$1
|
|
4 |
mac:!static:contains(QT_CONFIG, qt_framework) {
|
|
5 |
QMAKE_FRAMEWORK_BUNDLE_NAME = $$LIBRARY_NAME
|
|
6 |
export(QMAKE_FRAMEWORK_BUNDLE_NAME)
|
|
7 |
}
|
|
8 |
contains(TEMPLATE, .*lib):CONFIG(debug, debug|release) {
|
|
9 |
!debug_and_release|build_pass {
|
|
10 |
mac:RET = $$member(LIBRARY_NAME, 0)_debug
|
|
11 |
else:win32:RET = $$member(LIBRARY_NAME, 0)d
|
|
12 |
}
|
|
13 |
}
|
|
14 |
isEmpty(RET):RET = $$LIBRARY_NAME
|
|
15 |
return($$RET)
|
|
16 |
}
|
|
17 |
|
|
18 |
defineTest(qtAddLibrary) {
|
|
19 |
INCLUDEPATH -= $$QMAKE_INCDIR_QT/$$1
|
|
20 |
INCLUDEPATH = $$QMAKE_INCDIR_QT/$$1 $$INCLUDEPATH
|
|
21 |
|
|
22 |
LIB_NAME = $$1
|
|
23 |
unset(LINKAGE)
|
|
24 |
mac {
|
|
25 |
CONFIG(qt_framework, qt_framework|qt_no_framework) { #forced
|
|
26 |
QMAKE_FRAMEWORKPATH *= $${QMAKE_LIBDIR_QT}
|
|
27 |
FRAMEWORK_INCLUDE = $$QMAKE_LIBDIR_QT/$${LIB_NAME}.framework/Headers
|
|
28 |
!qt_no_framework_direct_includes:exists($$FRAMEWORK_INCLUDE) {
|
|
29 |
INCLUDEPATH -= $$FRAMEWORK_INCLUDE
|
|
30 |
INCLUDEPATH = $$FRAMEWORK_INCLUDE $$INCLUDEPATH
|
|
31 |
}
|
|
32 |
LINKAGE = -framework $${LIB_NAME}$${QT_LIBINFIX}
|
|
33 |
} else:!qt_no_framework { #detection
|
|
34 |
for(frmwrk_dir, $$list($$QMAKE_LIBDIR_QT $$QMAKE_LIBDIR $$(DYLD_FRAMEWORK_PATH) /Library/Frameworks)) {
|
|
35 |
exists($${frmwrk_dir}/$${LIB_NAME}.framework) {
|
|
36 |
QMAKE_FRAMEWORKPATH *= $${frmwrk_dir}
|
|
37 |
FRAMEWORK_INCLUDE = $$frmwrk_dir/$${LIB_NAME}.framework/Headers
|
|
38 |
!qt_no_framework_direct_includes:exists($$FRAMEWORK_INCLUDE) {
|
|
39 |
INCLUDEPATH -= $$FRAMEWORK_INCLUDE
|
|
40 |
INCLUDEPATH = $$FRAMEWORK_INCLUDE $$INCLUDEPATH
|
|
41 |
}
|
|
42 |
LINKAGE = -framework $${LIB_NAME}
|
|
43 |
break()
|
|
44 |
}
|
|
45 |
}
|
|
46 |
}
|
|
47 |
}
|
|
48 |
symbian {
|
|
49 |
isEqual(LIB_NAME, QtGui) {
|
|
50 |
# Needed for #include <QtGui> because qs60mainapplication.h includes aknapp.h
|
|
51 |
INCLUDEPATH *= $$MW_LAYER_SYSTEMINCLUDE
|
|
52 |
}
|
|
53 |
isEqual(LIB_NAME, QtWebKit) {
|
|
54 |
# Needed for #include <QtXmlPatterns/QtXmlPatterns> because relative inclusion problem in toolchain
|
|
55 |
INCLUDEPATH *= $$QMAKE_INCDIR_QT/QtXmlPatterns
|
|
56 |
}
|
|
57 |
}
|
|
58 |
isEmpty(LINKAGE) {
|
|
59 |
if(!debug_and_release|build_pass):CONFIG(debug, debug|release) {
|
|
60 |
win32:LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}d
|
|
61 |
mac:LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}_debug
|
|
62 |
}
|
|
63 |
isEmpty(LINKAGE):LINKAGE = -l$${LIB_NAME}$${QT_LIBINFIX}
|
|
64 |
}
|
|
65 |
!isEmpty(QMAKE_LSB) {
|
|
66 |
QMAKE_LFLAGS *= --lsb-libpath=$$$$QMAKE_LIBDIR_QT
|
|
67 |
QMAKE_LFLAGS *= -L/opt/lsb/lib
|
|
68 |
QMAKE_LFLAGS *= --lsb-shared-libs=$${LIB_NAME}$${QT_LIBINFIX}
|
|
69 |
}
|
|
70 |
LIBS += $$LINKAGE
|
|
71 |
export(LIBS)
|
|
72 |
export(INCLUDEPATH)
|
|
73 |
export(QMAKE_FRAMEWORKPATH)
|
|
74 |
export(QMAKE_LFLAGS)
|
|
75 |
return(true)
|
|
76 |
}
|