1 isEmpty(TEMPLATE):TEMPLATE=app |
|
2 CONFIG += qt warn_on console depend_includepath |
|
3 |
|
4 wince*:{ |
|
5 LIBS += corelibc.lib ole32.lib oleaut32.lib uuid.lib commctrl.lib coredll.lib winsock.lib |
|
6 CONFIG(debug, debug|release) { |
|
7 LIBS += $$[QT_INSTALL_LIBS]/qtmaind.lib |
|
8 } else { |
|
9 LIBS += $$[QT_INSTALL_LIBS]/qtmain.lib |
|
10 } |
|
11 } |
|
12 |
|
13 symbian:{ |
|
14 # qt.prf sets TARGET.EPOCSTACKSIZE and TARGET.EPOCHEAPSIZE |
|
15 # DEFINES += QTEST_NO_SPECIALIZATIONS |
|
16 TARGET.UID3 = $$generate_test_uid($$TARGET) |
|
17 TARGET.CAPABILITY="ALL -TCB" |
|
18 RSS_RULES ="group_name=\"QtTests\";" |
|
19 } |
|
20 |
|
21 # find testlib's prl file and extract the librarie's name |
|
22 QTEST_LIB = |
|
23 mac:exists($$[QT_INSTALL_LIBS]/QtTest.framework):QTEST_LIB = QtTest.framework |
|
24 CONFIG(debug, debug|release) { |
|
25 isEmpty(QTEST_LIB) { |
|
26 win32 { |
|
27 QTEST_LIB = $$fromfile($$[QT_INSTALL_LIBS]/QtTest$${QT_LIBINFIX}d.prl, QMAKE_PRL_TARGET)4.dll |
|
28 } |
|
29 mac { |
|
30 QTEST_LIB = $$fromfile($$[QT_INSTALL_LIBS]/libQtTest$${QT_LIBINFIX}_debug.prl, QMAKE_PRL_TARGET) |
|
31 } |
|
32 unix:!mac:!symbian { |
|
33 QTEST_LIB = $$fromfile($$[QT_INSTALL_LIBS]/libQtTest$${QT_LIBINFIX}.prl, QMAKE_PRL_TARGET) |
|
34 } |
|
35 symbian { |
|
36 QTEST_LIB = $$fromfile($$[QT_INSTALL_LIBS]/QtTest$${QT_LIBINFIX}.prl, QMAKE_PRL_TARGET).dll |
|
37 } |
|
38 } |
|
39 OBJECTS_DIR = tmp/debug |
|
40 MOC_DIR = tmp/debug |
|
41 } else { |
|
42 isEmpty(QTEST_LIB) { |
|
43 win32 { |
|
44 QTEST_LIB = $$fromfile($$[QT_INSTALL_LIBS]/QtTest$${QT_LIBINFIX}.prl, QMAKE_PRL_TARGET)4.dll |
|
45 } symbian { |
|
46 QTEST_LIB = $$fromfile($$[QT_INSTALL_LIBS]/QtTest$${QT_LIBINFIX}.prl, QMAKE_PRL_TARGET).dll |
|
47 } else { |
|
48 QTEST_LIB = $$fromfile($$[QT_INSTALL_LIBS]/libQtTest$${QT_LIBINFIX}.prl, QMAKE_PRL_TARGET) |
|
49 } |
|
50 } |
|
51 OBJECTS_DIR = tmp/release |
|
52 MOC_DIR = tmp/release |
|
53 } |
|
54 |
|
55 isEmpty(QTEST_LIB) { |
|
56 warning("Cannot find testlib's prl file, run qmake in $QTDIR/src/testlib") |
|
57 CONFIG += embed_testlib |
|
58 } else { |
|
59 # Never embed automatically in Symbian, as checking for existence is not reliable |
|
60 # due to the fact that we support multiple platforms (WINSCW, ARMV5, GCCE, ...), which |
|
61 # each build the lib to different location. |
|
62 !symbian { |
|
63 !exists($$[QT_INSTALL_LIBS]/$$QTEST_LIB):CONFIG += embed_testlib |
|
64 } |
|
65 } |
|
66 |
|
67 # make sure the test is build according to your Qt configuration |
|
68 contains(QT_CONFIG, embedded):CONFIG += embedded |
|
69 |
|
70 embed_testlib { |
|
71 QTESTDIR = $${QT_SOURCE_TREE} |
|
72 isEmpty(QTESTDIR):QTESTDIR = $$(QTSRCDIR) |
|
73 isEmpty(QTESTDIR):QTESTDIR = $$(QTDIR) |
|
74 isEmpty(QTESTDIR):warning("Cannot find QTestLib sources, set QTDIR or QTSRCDIR") |
|
75 QTESTDIR = $${QTESTDIR}/src/testlib |
|
76 HEADERS += $${QTESTDIR}/qtesteventloop.h |
|
77 SOURCES += $${QTESTDIR}/qasciikey.cpp \ |
|
78 $${QTESTDIR}/qabstracttestlogger.cpp \ |
|
79 $${QTESTDIR}/qsignaldumper.cpp \ |
|
80 $${QTESTDIR}/qtestdata.cpp \ |
|
81 $${QTESTDIR}/qtestresult.cpp \ |
|
82 $${QTESTDIR}/qxmltestlogger.cpp \ |
|
83 $${QTESTDIR}/qplaintestlogger.cpp \ |
|
84 $${QTESTDIR}/qtestcase.cpp \ |
|
85 $${QTESTDIR}/qbenchmark.cpp \ |
|
86 $${QTESTDIR}/qbenchmarkevent.cpp \ |
|
87 $${QTESTDIR}/qbenchmarkmeasurement.cpp \ |
|
88 $${QTESTDIR}/qbenchmarkvalgrind.cpp \ |
|
89 $${QTESTDIR}/qtestlog.cpp \ |
|
90 $${QTESTDIR}/qtesttable.cpp |
|
91 DEFINES += QTEST_EMBED QTEST_LIGHT |
|
92 } else { |
|
93 CONFIG += qtestlib |
|
94 } |
|
95 |
|
96 embedded:QMAKE_CXXFLAGS+=-fno-rtti |
|
97 |
|
98 # prefix test binary with tst_ |
|
99 !contains(TARGET, ^tst_.*):TARGET = $$join(TARGET,,"tst_") |
|
100 |
|
101 ######################################################################## |
|
102 # Use install rule to run test application. |
|
103 # This lets you do 'make install' on a test to both build and run it, |
|
104 # and lets you easily build and run all tests from the parent directory. |
|
105 # ---------------------------------------------------------------------- |
|
106 |
|
107 runme.files = |
|
108 runme.path = . |
|
109 !isEmpty(DESTDIR): runme.commands = cd ./$(DESTDIR) && |
|
110 macx: runme.commands += ./$(QMAKE_TARGET).app/Contents/MacOS/$(QMAKE_TARGET) |
|
111 else:unix: runme.commands += ./$(QMAKE_TARGET) |
|
112 else:win32: { |
|
113 CONFIG(debug, debug|release):runme.commands += debug\\$(QMAKE_TARGET) |
|
114 else:runme.commands += release\\$(QMAKE_TARGET) |
|
115 } |
|
116 embedded: runme.commands += -qws |
|
117 INSTALLS += runme |
|
118 |
|
119 |
|
120 ######################################################################## |
|