Samples update
[occt.git] / samples / qt / Tutorial / Tutorial.pro
1 TEMPLATE = app
2 CONFIG += debug_and_release qt
3
4 TARGET = Tutorial
5
6 SAMPLESROOT = $$(CASROOT)/samples/qt
7
8 HEADERS   = src/*.h \
9             $${SAMPLESROOT}/Common/src/*.h \
10             $${SAMPLESROOT}/Interface/src/*.h
11
12 SOURCES   = src/*.cxx \
13             $${SAMPLESROOT}/Common/src/*.cxx \
14             $${SAMPLESROOT}/Interface/src/*.cxx
15
16 TS_FILES  = $${SAMPLESROOT}/Common/src/Common-icon.ts \
17             $${SAMPLESROOT}/Common/src/Common-string.ts \
18             ./src/Tutorial-icon.ts \
19             ./src/Tutorial-string.ts
20
21 RES_FILES = $${SAMPLESROOT}/Common/res/* \
22             ./res/*
23
24 RES_DIR   = $$quote($$(RES_DIR))
25
26 INCLUDEPATH += $$quote($${SAMPLESROOT}/Common/src)
27 INCLUDEPATH += $$quote($${SAMPLESROOT}/Interface/src)
28
29 DEFINES = CSFDB
30
31 unix {
32     UNAME = $$system(uname -s)
33     INCLUDES = $$(CSF_OPT_INC)
34     PATHS = $$split(INCLUDES,":")
35     for(path, PATHS):INCLUDEPATH += $${path}
36     LIBLIST = $$(LD_LIBRARY_PATH)
37     LIBPATHS = $$split(LIBLIST,":")
38     for(lib, LIBPATHS):LIBS += -L$${lib}
39
40     CONFIG(debug, debug|release) {
41         DESTDIR = ./$$UNAME/bind
42         OBJECTS_DIR = ./$$UNAME/objd
43         MOC_DIR = ./$$UNAME/srcd
44     } else {
45         DESTDIR = ./$$UNAME/bin
46         OBJECTS_DIR = ./$$UNAME/obj
47         MOC_DIR = ./$$UNAME/src
48     }
49
50     MACOSX_USE_GLX = $$(MACOSX_USE_GLX)
51
52     !macx | equals(MACOSX_USE_GLX, true): INCLUDEPATH += $$QMAKE_INCDIR_X11 $$QMAKE_INCDIR_OPENGL $$QMAKE_INCDIR_THREAD
53     !macx | equals(MACOSX_USE_GLX, true): DEFINES += LIN LININTEL
54     equals(MACOSX_USE_GLX, true): DEFINES += MACOSX_USE_GLX
55     DEFINES += OCC_CONVERT_SIGNALS HAVE_CONFIG_H HAVE_WOK_CONFIG_H QT_NO_STL
56     !macx | equals(MACOSX_USE_GLX, true): LIBS += -L$$QMAKE_LIBDIR_X11 $$QMAKE_LIBS_X11 -L$$QMAKE_LIBDIR_OPENGL $$QMAKE_LIBS_OPENGL $$QMAKE_LIBS_THREAD
57     LIBS += -lfreeimageplus
58     LIBS += -ltbb -ltbbmalloc
59 }
60
61 win32 {
62     INCLUDES = $$(CSF_OPT_INC)
63     PATHS = $$split(INCLUDES,";")
64     for(path, PATHS):INCLUDEPATH += $${path}
65
66     CONFIG(debug, debug|release) {
67         DEFINES += _DEBUG
68         !contains(QMAKE_HOST.arch, x86_64) {
69                 LIBS = -L$(CSF_OPT_LIB32D)
70                 contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1310) {
71                 DESTDIR = ./win32/vc7/bind
72                 OBJECTS_DIR = ./win32/vc7/objd
73                 MOC_DIR = ./win32/vc7/srcd
74             }
75             contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1400) {
76                 DESTDIR = ./win32/vc8/bind
77                 OBJECTS_DIR = ./win32/vc8/objd
78                 MOC_DIR = ./win32/vc8/srcd
79             }
80             contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1500) {
81                 DESTDIR = ./win32/vc9/bind
82                 OBJECTS_DIR = ./win32/vc9/objd
83                 MOC_DIR = ./win32/vc9/srcd
84             }
85             contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1600) {
86                 DESTDIR = ./win32/vc10/bind
87                 OBJECTS_DIR = ./win32/vc10/objd
88                 MOC_DIR = ./win32/vc10/srcd
89             }
90             contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1700) {
91                 DESTDIR = ./win32/vc11/bind
92                 OBJECTS_DIR = ./win32/vc11/objd
93                 MOC_DIR = ./win32/vc11/srcd
94             }
95         } else {
96                 LIBS = -L$(CSF_OPT_LIB64D)
97                 contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1400) {
98                 DESTDIR = ./win64/vc8/bind
99                 OBJECTS_DIR = ./win64/vc8/objd
100                 MOC_DIR = ./win64/vc8/srcd
101             }
102             contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1500) {
103                 DESTDIR = ./win64/vc9/bind
104                 OBJECTS_DIR = ./win64/vc9/objd
105                 MOC_DIR = ./win64/vc9/srcd
106             }
107             contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1600) {
108                 DESTDIR = ./win64/vc10/bind
109                 OBJECTS_DIR = ./win64/vc10/objd
110                 MOC_DIR = ./win64/vc10/srcd
111             }
112             contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1700) {
113                 DESTDIR = ./win64/vc11/bind
114                 OBJECTS_DIR = ./win64/vc11/objd
115                 MOC_DIR = ./win64/vc11/srcd
116             }
117         }
118     } else {
119         DEFINES += NDEBUG
120         !contains(QMAKE_HOST.arch, x86_64) {
121                 LIBS = -L$(CSF_OPT_LIB32)
122                 contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1310) {
123                 DESTDIR = ./win32/vc7/bin
124                 OBJECTS_DIR = ./win32/vc7/obj
125                 MOC_DIR = ./win32/vc7/src
126             }
127             contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1400) {
128                 DESTDIR = ./win32/vc8/bin
129                 OBJECTS_DIR = ./win32/vc8/obj
130                 MOC_DIR = ./win32/vc8/src
131             }
132             contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1500) {
133                 DESTDIR = ./win32/vc9/bin
134                 OBJECTS_DIR = ./win32/vc9/obj
135                 MOC_DIR = ./win32/vc9/src
136             }
137             contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1600) {
138                 DESTDIR = ./win32/vc10/bin
139                 OBJECTS_DIR = ./win32/vc10/obj
140                 MOC_DIR = ./win32/vc10/src
141             }
142             contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1700) {
143                 DESTDIR = ./win32/vc11/bin
144                 OBJECTS_DIR = ./win32/vc11/obj
145                 MOC_DIR = ./win32/vc11/src
146             }
147         } else {
148                 LIBS = -L$(CSF_OPT_LIB64)
149                 contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1400) {
150                 DESTDIR = ./win64/vc8/bin
151                 OBJECTS_DIR = ./win64/vc8/obj
152                 MOC_DIR = ./win64/vc8/src
153             }
154             contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1500) {
155                 DESTDIR = ./win64/vc9/bin
156                 OBJECTS_DIR = ./win64/vc9/obj
157                 MOC_DIR = ./win64/vc9/src
158             }
159             contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1600) {
160                 DESTDIR = ./win64/vc10/bin
161                 OBJECTS_DIR = ./win64/vc10/obj
162                 MOC_DIR = ./win64/vc10/src
163             }
164             contains(QMAKE_COMPILER_DEFINES, _MSC_VER=1700) {
165                 DESTDIR = ./win64/vc11/bin
166                 OBJECTS_DIR = ./win64/vc11/obj
167                 MOC_DIR = ./win64/vc11/src
168             }
169         }
170     }
171     DEFINES +=WNT WIN32 NO_COMMONSAMPLE_EXPORTS NO_IESAMPLE_EXPORTS
172 }
173
174 LIBS += -lTKernel -lPTKernel -lTKMath -lTKService -lTKV3d -lTKOpenGl \
175         -lTKBRep -lTKIGES -lTKSTL -lTKVRML -lTKSTEP -lTKSTEPAttr -lTKSTEP209 \
176         -lTKSTEPBase -lTKShapeSchema -lTKGeomBase -lTKGeomAlgo -lTKG3d -lTKG2d \
177         -lTKXSBase -lTKPShape -lTKShHealing -lTKHLR -lTKTopAlgo -lTKMesh -lTKPrim \
178         -lTKCDF -lTKBool -lTKBO -lTKFillet -lTKOffset \
179
180 !exists($${RES_DIR}) {
181     win32 {
182         system(mkdir $${RES_DIR})
183     } else {
184         system(mkdir -p $${RES_DIR})
185     }
186 }
187
188 lrelease.name = LRELEASE ${QMAKE_FILE_IN}
189 lrelease.commands = lrelease ${QMAKE_FILE_IN} -qm $${RES_DIR}/${QMAKE_FILE_BASE}.qm
190 lrelease.output = ${QMAKE_FILE_BASE}.qm
191 lrelease.input = TS_FILES
192 lrelease.clean = $${RES_DIR}/${QMAKE_FILE_BASE}.qm
193 lrelease.CONFIG += no_link target_predeps
194 QMAKE_EXTRA_COMPILERS += lrelease
195
196 copy_res.name = Copy resource ${QMAKE_FILE_IN}
197 copy_res.output = ${QMAKE_FILE_BASE}${QMAKE_FILE_EXT}
198 copy_res.clean = $${RES_DIR}/${QMAKE_FILE_BASE}${QMAKE_FILE_EXT}
199 copy_res.input = RES_FILES
200 copy_res.CONFIG += no_link target_predeps
201 win32: copy_res.commands = type ${QMAKE_FILE_IN} > $${RES_DIR}/${QMAKE_FILE_BASE}${QMAKE_FILE_EXT}
202 unix:  copy_res.commands = cp -f ${QMAKE_FILE_IN} $${RES_DIR}
203 QMAKE_EXTRA_COMPILERS += copy_res
204