-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcg3D.pro
304 lines (249 loc) · 8.3 KB
/
cg3D.pro
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
TEMPLATE = app
TARGET = cg3D
CONFIG += qt opengl warn_on debug
QT *= xml opengl
HEADERS = *.h
SOURCES = *.cpp
macx:LIBS *= -framework Glut
linux-g++*:LIBS *= -lglut
QT_VERSION=$$[QT_VERSION]
### Unix configuration ###
unix {
CONFIG -= debug debug_and_release
CONFIG *= release
isEmpty( PREFIX ) {
# Try same INCLUDE_DIR and LIB_DIR parameters than for the make install.
PREFIX=/usr
}
# LIB_NAME
LIB_NAME = libQGLViewer*.so*
macx|darwin-g++ {
LIB_NAME = libQGLViewer.$${QMAKE_EXTENSION_SHLIB}
}
hpux {
LIB_NAME = libQGLViewer*.sl*
}
!isEmpty( QGLVIEWER_STATIC ) {
LIB_NAME = libQGLViewer*.a
}
# LIB_DIR
isEmpty( LIB_DIR ) {
LIB_DIR = $${PREFIX}/lib
}
!exists( $${LIB_DIR}/$${LIB_NAME} ) {
exists( ../../QGLViewer/$${LIB_NAME} ) {
#message( The library was found in ../../QGLViewer which will be set as the LIB_DIR )
LIB_DIR = ../../QGLViewer
}
}
!exists( $${LIB_DIR}/$${LIB_NAME} ) {
exists( ../../QGLViewer-build-desktop/$${LIB_NAME} ) {
#message( The library was found in ../../QGLViewer-build-desktop which will be set as the LIB_DIR )
LIB_DIR = ../../QGLViewer-build-desktop
}
}
macx|darwin-g++ {
!exists( $${LIB_DIR}/$${LIB_NAME} ) {
# DYLIB was not found, try to find Framework instead
LIB_NAME = QGLViewer.framework/QGLViewer
LIB_DIR = ~/Library/Frameworks
# qmake does not handle tilde
LIB_DIR = $$system(cd $${LIB_DIR};pwd)
!exists( $${LIB_DIR}/$${LIB_NAME} ) {
exists( ../../QGLViewer/$${LIB_NAME} ) {
#message( The framework was found in ../../QGLViewer which will be set as the LIB_DIR )
LIB_DIR = ../../QGLViewer
}
}
!exists( $${LIB_DIR}/$${LIB_NAME} ) {
exists( ../../QGLViewer-build-desktop/$${LIB_NAME} ) {
#message( The framework was found in ../../QGLViewer-build-desktop which will be set as the LIB_DIR )
LIB_DIR = ../../QGLViewer-build-desktop
}
}
}
}
!exists( $${LIB_DIR}/$${LIB_NAME} ) {
message( Unable to find $${LIB_NAME} in $${LIB_DIR}. Make sure you have built it. )
message( If you have, you should run qmake LIB_DIR=/path/to/QGLViewer/$${LIB_NAME} )
}
# The actual directory where the library/framework was found
LIB_DIR_ABSOLUTE_PATH = $$system(cd $${LIB_DIR};pwd)
# INCLUDE_DIR
isEmpty( INCLUDE_DIR ) {
INCLUDE_DIR = $${PREFIX}/include
}
macx|darwin-g++ {
!exists( $${INCLUDE_DIR}/QGLViewer/qglviewer.h ) {
INCLUDE_DIR=$${LIB_DIR}/QGLViewer.framework
exists( $${LIB_DIR}/QGLViewer.framework/Headers/QGLViewer/qglviewer.h ) {
INCLUDE_DIR = $${LIB_DIR}/QGLViewer.framework/Headers
}
}
}
!exists( $${INCLUDE_DIR}/QGLViewer/qglviewer.h ) {
exists( ../../QGLViewer/qglviewer.h ) {
# message( libQGLViewer header files were not installed in standard $${INCLUDE_DIR} directory )
# message( Headers were found in ../.. which will be set as the INCLUDE_DIR )
INCLUDE_DIR = ../..
}
}
!exists( $${INCLUDE_DIR}/QGLViewer/qglviewer.h ) {
message( Unable to find QGLViewer/qglviewer.h in $${INCLUDE_DIR} )
message( Use qmake INCLUDE_DIR=/path/to/QGLViewerDir )
}
macx|darwin-g++ {
# On Mac, the lib path can be specified in the executable using install_name_tool
contains( LIB_NAME, ".*QGLViewer.framework.*" ) {
# If framework was not found in a standard directory
!contains( LIB_DIR, ".*/Library/Frameworks/*$" ) {
QMAKE_LFLAGS += -F$${LIB_DIR}
!plugin:QMAKE_POST_LINK=install_name_tool -change QGLViewer.framework/Versions/2/QGLViewer $${LIB_DIR_ABSOLUTE_PATH}/QGLViewer.framework/Versions/2/QGLViewer $${TARGET}.app/Contents/MacOS/$${TARGET}
}
LIBS += -F$${LIB_DIR} -framework QGLViewer
} else {
!plugin:QMAKE_POST_LINK=install_name_tool -change libQGLViewer.2.dylib $${LIB_DIR_ABSOLUTE_PATH}/libQGLViewer.2.dylib $${TARGET}.app/Contents/MacOS/$${TARGET}
LIBS *= -L$${LIB_DIR} -lQGLViewer
}
} else {
isEmpty(QMAKE_LFLAGS_RPATH) {
!plugin:QMAKE_LFLAGS += -Wl,-rpath,$${LIB_DIR_ABSOLUTE_PATH}
} else {
!plugin:QMAKE_RPATHDIR *= $${LIB_DIR_ABSOLUTE_PATH}
}
LIBS *= -L$${LIB_DIR} -lQGLViewer
# Qt 4.8 removed the GLU dependency
QMAKE_LIBS_OPENGL *= -lGLU
}
# Paths were correctly detected
INCLUDEPATH *= $${INCLUDE_DIR}
DEPENDPATH *= $${INCLUDE_DIR}
!isEmpty( QGLVIEWER_STATIC ) {
LIBS *= $${LIB_DIR}/$${LIB_NAME}
}
macx|darwin-g++ {
contains( QT_VERSION, "^3.*" ) {
# Qt3 only
LIBS *= -lobjc
CONFIG -= thread
}
}
# Remove debugging options in release mode makes files much smaller
release:QMAKE_CFLAGS_RELEASE -= -g
release:QMAKE_CXXFLAGS_RELEASE -= -g
# Intermediate files are created in an hidden folder
MOC_DIR = .moc
OBJECTS_DIR = .obj
}
win32 {
CONFIG *= debug_and_release
# Seems to be needed for Visual Studio with Intel compiler
DEFINES *= WIN32
!isEmpty( QGLVIEWER_STATIC ) {
DEFINES *= QGLVIEWER_STATIC
}
# INCLUDE_DIR
!exists( $${INCLUDE_DIR}/QGLViewer/qglviewer.h ) {
exists( ../../QGLViewer/qglviewer.h ) {
# message( libQGLViewer header files were not installed in standard $${INCLUDE_DIR} directory )
# message( Headers were found in ../.. which will be set as the INCLUDE_DIR )
INCLUDE_DIR = ../..
}
}
!exists( $${INCLUDE_DIR}/QGLViewer/qglviewer.h ) {
message( Unable to find QGLViewer/qglviewer.h in $${INCLUDE_DIR} )
error( Use qmake INCLUDE_DIR=/path/to/QGLViewerDir )
}
# Paths were correctly detected
INCLUDEPATH *= $${INCLUDE_DIR}
DEPENDPATH *= $${INCLUDE_DIR}
# LIB_NAME
LIB_NAME = QGLViewer
build_pass:CONFIG(debug, debug|release) {
LIB_NAME = $$join(LIB_NAME,,,d)
}
LIB_NAME = $$join(LIB_NAME,,,2) #TODO 2
win32-g++: LIB_FILE_NAME = lib$${LIB_NAME}.a
!win32-g++: LIB_FILE_NAME = $${LIB_NAME}.lib
isEmpty( LIB_DIR ) {
LIB_DIR = C:\\Windows\\System32
}
!exists( $${LIB_DIR}/$${LIB_FILE_NAME} ) {
exists( ../../QGLViewer/$${LIB_FILE_NAME} ) {
LIB_DIR = ../../QGLViewer
}
}
!exists( $${LIB_DIR}/$${LIB_FILE_NAME} ) {
exists( ../../QGLViewer/Release/$${LIB_FILE_NAME} ) {
LIB_DIR = ../../QGLViewer/Release
}
}
!exists( $${LIB_DIR}/$${LIB_FILE_NAME} ) {
exists( ../../QGLViewer/release/$${LIB_FILE_NAME} ) {
LIB_DIR = ../../QGLViewer/release
}
}
!exists( $${LIB_DIR}/$${LIB_FILE_NAME} ) {
exists( ../../QGLViewer/Debug/$${LIB_FILE_NAME} ) {
LIB_DIR = ../../QGLViewer/Debug
}
}
!exists( $${LIB_DIR}/$${LIB_FILE_NAME} ) {
exists( ../../QGLViewer/debug/$${LIB_FILE_NAME} ) {
LIB_DIR = ../../QGLViewer/debug
}
}
!exists( $${LIB_DIR}/$${LIB_FILE_NAME} ) {
exists( ../../QGLViewer-build-desktop/$${LIB_FILE_NAME} ) {
LIB_DIR = ../../QGLViewer-build-desktop
}
}
!exists( $${LIB_DIR}/$${LIB_FILE_NAME} ) {
exists( ../../QGLViewer-build-desktop/Release/$${LIB_FILE_NAME} ) {
LIB_DIR = ../../QGLViewer-build-desktop/Release
}
}
!exists( $${LIB_DIR}/$${LIB_FILE_NAME} ) {
exists( ../../QGLViewer-build-desktop/release/$${LIB_FILE_NAME} ) {
LIB_DIR = ../../QGLViewer-build-desktop/release
}
}
!exists( $${LIB_DIR}/$${LIB_FILE_NAME} ) {
exists( ../../QGLViewer-build-desktop/Debug/$${LIB_FILE_NAME} ) {
LIB_DIR = ../../QGLViewer-build-desktop/Debug
}
}
!exists( $${LIB_DIR}/$${LIB_FILE_NAME} ) {
exists( ../../QGLViewer-build-desktop/debug/$${LIB_FILE_NAME} ) {
LIB_DIR = ../../QGLViewer-build-desktop/debug
}
}
!exists( $${LIB_DIR}/$${LIB_FILE_NAME} ) {
message( Unable to find $${LIB_FILE_NAME} in $${LIB_DIR} )
error( Use qmake LIB_DIR=/path/to/QGLViewer/$${LIB_FILE_NAME} )
}
win32-g++ {
# The actual directory where the library/framework was found
# LIB_DIR_ABSOLUTE_PATH = $$system(cd $${LIB_DIR} && cd)
isEmpty( QGLVIEWER_STATIC ) {
LIBS *= -L$${LIB_DIR} -l$${LIB_NAME}
} else {
LIBS *= $${LIB_DIR}/$${LIB_FILE_NAME}
}
}
!win32-g++ {
# Use the Qt DLL version. Only needed with Qt3
contains( QT_VERSION, "^3.*" ) {
DEFINES *= QT_DLL QT_THREAD_SUPPORT
}
LIBS *= -L$${LIB_DIR} -l$${LIB_NAME}
}
}
macx|darwin-g++ {
ICON = $${INCLUDEPATH}/QGLViewer/qglviewer.icns
}
win32 {
!designer {
RC_FILE = ../qglviewer.rc
}
}