]> OCCT Git - occt.git/blame_incremental - samples/qt/Tutorial/Tutorial.pro
Testing - Fix master validation workflow (#611)
[occt.git] / samples / qt / Tutorial / Tutorial.pro
... / ...
CommitLineData
1TEMPLATE = app
2CONFIG += debug_and_release qt
3
4TARGET = Tutorial
5
6isEmpty(CSF_OCCTSamplesPath) {
7 SAMPLESROOT = $$PWD/..
8} else {
9 SAMPLESROOT = $$quote($$(CSF_OCCTSamplesPath)/qt)
10}
11
12HEADERS = src/*.h \
13 $${SAMPLESROOT}/Common/src/*.h \
14 $${SAMPLESROOT}/Interface/src/*.h
15
16SOURCES = src/*.cxx \
17 $${SAMPLESROOT}/Common/src/*.cxx \
18 $${SAMPLESROOT}/Interface/src/*.cxx
19
20TS_FILES = $${SAMPLESROOT}/Common/src/Common-icon.ts \
21 $${SAMPLESROOT}/Common/src/Common-string.ts \
22 ./src/Tutorial-icon.ts \
23 ./src/Tutorial-string.ts
24
25RES_FILES = $${SAMPLESROOT}/Common/res/* \
26 ./res/*
27
28RES_DIR = $$quote($$(RES_DIR))
29
30INCLUDEPATH += $$quote($${SAMPLESROOT}/Common/src)
31INCLUDEPATH += $$quote($${SAMPLESROOT}/Interface/src)
32INCLUDEPATH += $$quote($$(CSF_OCCTIncludePath))
33
34OCCT_DEFINES = $$(CSF_DEFINES)
35
36DEFINES = $$split(OCCT_DEFINES, ;)
37
38unix {
39 UNAME = $$system(uname -s)
40 LIBLIST = $$(LD_LIBRARY_PATH)
41 LIBPATHS = $$split(LIBLIST,":")
42 for(lib, LIBPATHS):LIBS += -L$${lib}
43
44 CONFIG(debug, debug|release) {
45 DESTDIR = ./$$UNAME/bind
46 OBJECTS_DIR = ./$$UNAME/objd
47 MOC_DIR = ./$$UNAME/mocd
48 } else {
49 DESTDIR = ./$$UNAME/bin
50 OBJECTS_DIR = ./$$UNAME/obj
51 MOC_DIR = ./$$UNAME/moc
52 }
53
54 MACOSX_USE_GLX = $$(MACOSX_USE_GLX)
55
56 !macx | equals(MACOSX_USE_GLX, true): INCLUDEPATH += $$QMAKE_INCDIR_X11 $$QMAKE_INCDIR_OPENGL $$QMAKE_INCDIR_THREAD
57 equals(MACOSX_USE_GLX, true): DEFINES += MACOSX_USE_GLX
58 DEFINES += OCC_CONVERT_SIGNALS QT_NO_STL
59 !macx | equals(MACOSX_USE_GLX, true): LIBS += -L$$QMAKE_LIBDIR_X11 $$QMAKE_LIBS_X11 -L$$QMAKE_LIBDIR_OPENGL $$QMAKE_LIBS_OPENGL $$QMAKE_LIBS_THREAD
60 QMAKE_CXXFLAGS += -std=c++17
61}
62
63win32 {
64 CONFIG(debug, debug|release) {
65 DEFINES += _DEBUG
66 DESTDIR = ./win$$(ARCH)/$$(VCVER)/bind
67 OBJECTS_DIR = ./win$$(ARCH)/$$(VCVER)/objd
68 MOC_DIR = ./win$$(ARCH)/$$(VCVER)/mocd
69 } else {
70 DEFINES += NDEBUG
71 DESTDIR = ./win$$(ARCH)/$$(VCVER)/bin
72 OBJECTS_DIR = ./win$$(ARCH)/$$(VCVER)/obj
73 MOC_DIR = ./win$$(ARCH)/$$(VCVER)/moc
74 }
75 LIBS = -L$$(QTDIR)/lib;$$(CSF_OCCTLibPath)
76 QMAKE_CXXFLAGS += /std:c++17
77 DEFINES += NO_COMMONSAMPLE_EXPORTS NO_IESAMPLE_EXPORTS
78}
79
80LIBS += -lTKernel -lTKMath -lTKService -lTKV3d -lTKOpenGl \
81 -lTKBRep -lTKDEIGES -lTKDESTL -lTKDEVRML -lTKDESTEP \
82 -lTKGeomBase -lTKGeomAlgo -lTKG3d -lTKG2d \
83 -lTKXSBase -lTKShHealing -lTKHLR -lTKTopAlgo -lTKMesh -lTKPrim \
84 -lTKCDF -lTKBool -lTKBO -lTKFillet -lTKOffset -lTKLCAF \
85
86!exists($${RES_DIR}) {
87 win32 {
88 system(mkdir $${RES_DIR})
89 } else {
90 system(mkdir -p $${RES_DIR})
91 }
92}
93
94lrelease.name = LRELEASE ${QMAKE_FILE_IN}
95lrelease.commands = lrelease ${QMAKE_FILE_IN} -qm $${RES_DIR}/${QMAKE_FILE_BASE}.qm
96lrelease.output = ${QMAKE_FILE_BASE}.qm
97lrelease.input = TS_FILES
98lrelease.clean = $${RES_DIR}/${QMAKE_FILE_BASE}.qm
99lrelease.CONFIG += no_link target_predeps
100QMAKE_EXTRA_COMPILERS += lrelease
101
102copy_res.name = Copy resource ${QMAKE_FILE_IN}
103copy_res.output = ${QMAKE_FILE_BASE}${QMAKE_FILE_EXT}
104copy_res.clean = $${RES_DIR}/${QMAKE_FILE_BASE}${QMAKE_FILE_EXT}
105copy_res.input = RES_FILES
106copy_res.CONFIG += no_link target_predeps
107win32: copy_res.commands = type ${QMAKE_FILE_IN} > $${RES_DIR}/${QMAKE_FILE_BASE}${QMAKE_FILE_EXT}
108unix: copy_res.commands = cp -f ${QMAKE_FILE_IN} $${RES_DIR}
109QMAKE_EXTRA_COMPILERS += copy_res
110#QMAKE_CXXFLAGS += /wd4996
111
112greaterThan(QT_MAJOR_VERSION, 4) {
113 QT += widgets
114}