-
Notifications
You must be signed in to change notification settings - Fork 0
/
lumina.pro
151 lines (135 loc) · 5.1 KB
/
lumina.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
QT += opengl xml network script gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TEMPLATE = app
RESOURCES = lumina.qrc
DEFINES += QTSCRIPT
LIBS += -lGLEW -llz4
MOC_DIR = .build/moc
UI_DIR = .build/uic
OBJECTS_DIR = .build/obj
RCC_DIR = .build/qrc
exists($$[QT_INSTALL_HEADERS]/QtScript){
message(Lumina configured for QT with QtScript)
}
QMAKE_CXXFLAGS += -std=c++14 -Wall -frtti -fexceptions -Werror=return-type
#original code heavy uses overloaded virtuals
#QMAKE_CXXFLAGS +=-Werror=overloaded-virtual
QMAKE_CXXFLAGS += -Wctor-dtor-privacy -Werror=delete-non-virtual-dtor -fstrict-aliasing
QMAKE_CXXFLAGS += -Werror=strict-aliasing -Wstrict-aliasing=2
QMAKE_CXXFLAGS += -Wno-warning=gnu-statement-expression
CONFIG += c++14
#using new C++ libs for macos http://blog.michael.kuron-germany.de/2013/02/using-c11-on-mac-os-x-10-8/
#that may not work with C++14 though, Apple is slow
macx: QMAKE_CXXFLAGS += -stdlib=libc++
macx: QMAKE_LFLAGS += -lc++
macx: QMAKE_CXXFLAGS += -mmacosx-version-min=10.10
macx: QMAKE_MACOSX_DEPLOYMENT_TARGET=10.10
CONFIG(debug, debug|release) {
message( "Building the DEBUG Version" )
#lets optimize for CPU on debug, for release - packager should do
QMAKE_CXXFLAGS += -march=native -O0 -g
DEFINES += _DEBUG
unix:!maxc:QMAKE_CXXFLAGS += -fsanitize=undefined -fsanitize=vptr
unix:!maxc:LIBS += -lubsan
}
else {
DEFINES += NDEBUG
message( "Building the RELEASE Version" )
#delegated to packager - didn't work easy, let it be here
#QMAKE_CXXFLAGS += -O3 -march=native
QMAKE_CXXFLAGS_RELEASE = -O3 -march=native
}
include($$PWD/src/base64/base64.pri)
include($$PWD/src/editors/editors.pri)
PRE_TARGETDEPS += base64
HEADERS += src/mainwindow.h \
src/glcam.h src/tree.h \
src/item.h \
src/item_image.h \
src/item_virtual.h \
src/item_mesh.h \
src/item_index.h \
src/item_component.h \
src/item_texture.h \
src/glwrapper.h \
src/sourceedit.h \
src/lumfile.h \
src/timewidget.h \
src/profiler.h \
src/console.h \
src/factory/dialog_factory_private.h \
src/factory/file_factory_private.h \
src/factory/network_factory_private.h \
src/factory/glwidget_factory_private.h \
src/factory/colorwidget_factory_private.h \
src/factory/factory.h \
src/importer/parsercodec.h \
src/half.h \
src/script_extender.h \
src/script_extender_engine.h \
src/incgl.h \
src/saveable_widget.h \
src/loaderpaths.h \
src/file_loader.h \
src/palgorithm.h \
src/no_copy.h \
src/script_header_parser.h \
src/filterableitem.h \
src/globals.h \
src/dock_prep.h \
src/prohibited_filter.h \
src/texture2lum.h \
src/endianness.h
SOURCES += src/main.cpp \
src/mainwindow.cpp \
src/glcam.cpp \
src/tree.cpp \
src/item.cpp \
src/item_world.cpp \
src/item_matrix.cpp \
src/item_node.cpp \
src/item_edit.cpp \
src/item_shader.cpp \
src/item_cam.cpp \
src/item_script.cpp \
src/item_texture.cpp \
src/item_index.cpp \
src/item_component.cpp \
src/item_mesh.cpp \
src/item_buffer.cpp \
src/item_uniform.cpp \
src/item_image.cpp \
src/item_virtual.cpp \
src/sourceedit.cpp \
src/lumfile.cpp \
src/timewidget.cpp \
src/item_bone.cpp \
src/glwrapper.cpp \
src/glwrapper_shader.cpp \
src/glwrapper_framebuffer.cpp \
src/profiler.cpp \
src/console.cpp \
src/script_extender.cpp \
src/importer/genNormal.cpp \
src/importer/genTangent.cpp \
src/importer/genTexSpaceQuaternion.cpp \
src/importer/importModel.cpp \
src/importer/importMD2.cpp \
src/importer/importMD3.cpp \
src/importer/import3DS.cpp \
src/importer/importOBJ.cpp \
src/importer/importCR2.cpp \
src/importer/importX.cpp \
src/importer/importCMF.cpp \
src/importer/parsercodec.cpp \
src/factory/dialog_factory_private.cpp \
src/factory/dialog_factory_dock_private.cpp \
src/factory/file_factory_private.cpp \
src/factory/colorwidget_factory_private.cpp \
src/factory/factory.cpp \
src/loaderpaths.cpp \
src/script_extender_engine.cpp \
src/script_header_parser.cpp \
src/filterableitem.cpp \
src/dock_prep.cpp
debug: SOURCES += src/tests.cpp