QGCApplication.pro 21.9 KB
Newer Older
Lorenz Meier's avatar
Lorenz Meier committed
1 2 3 4 5
# -------------------------------------------------
# QGroundControl - Micro Air Vehicle Groundstation
# Please see our website at <http://qgroundcontrol.org>
# Maintainer:
# Lorenz Meier <lm@inf.ethz.ch>
Lorenz Meier's avatar
Lorenz Meier committed
6
# (c) 2009-2014 QGroundControl Developers
Lorenz Meier's avatar
Lorenz Meier committed
7 8 9 10 11 12 13 14 15 16 17 18 19
# This file is part of the open groundstation project
# QGroundControl is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
# QGroundControl is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
# along with QGroundControl. If not, see <http://www.gnu.org/licenses/>.
# -------------------------------------------------

20
include(QGCCommon.pri)
Daniel Agar's avatar
Daniel Agar committed
21
include(git_version.pri)
Don Gagne's avatar
Don Gagne committed
22

23
TARGET = qgroundcontrol
Daniel Agar's avatar
Daniel Agar committed
24
TEMPLATE = app
dogmaphobic's avatar
dogmaphobic committed
25

26 27 28 29 30 31
# Load additional config flags from user_config.pri
exists(user_config.pri):infile(user_config.pri, CONFIG) {
    CONFIG += $$fromfile(user_config.pri, CONFIG)
    message($$sprintf("Using user-supplied additional config: '%1' specified in user_config.pri", $$fromfile(user_config.pri, CONFIG)))
}

32 33
LinuxBuild {
    CONFIG += link_pkgconfig
Don Gagne's avatar
Don Gagne committed
34
}
35

36
# QGC QtLocation plugin
37

38
LIBS += -L$${LOCATION_PLUGIN_DESTDIR}
Don Gagne's avatar
Don Gagne committed
39
LIBS += -l$${LOCATION_PLUGIN_NAME}
40 41

WindowsBuild {
Don Gagne's avatar
Don Gagne committed
42
    PRE_TARGETDEPS += $${LOCATION_PLUGIN_DESTDIR}/$${LOCATION_PLUGIN_NAME}.lib
dogmaphobic's avatar
dogmaphobic committed
43 44
} else {
    PRE_TARGETDEPS += $${LOCATION_PLUGIN_DESTDIR}/lib$${LOCATION_PLUGIN_NAME}.a
45 46
}

Lorenz Meier's avatar
Lorenz Meier committed
47
# Qt configuration
48

Lorenz Meier's avatar
Lorenz Meier committed
49
CONFIG += qt \
Don Gagne's avatar
Don Gagne committed
50
    thread
Bill Bonney's avatar
Bill Bonney committed
51

dogmaphobic's avatar
dogmaphobic committed
52 53
QT += \
    network \
54 55
    concurrent \
    gui \
dogmaphobic's avatar
dogmaphobic committed
56 57 58
    location \
    opengl \
    positioning \
Don Gagne's avatar
Don Gagne committed
59
    qml \
60
    quick \
61
    quickwidgets \
dogmaphobic's avatar
dogmaphobic committed
62 63 64 65
    sql \
    svg \
    widgets \
    xml \
66

dogmaphobic's avatar
dogmaphobic committed
67 68 69 70
!MobileBuild {
    QT += \
    printsupport \
    serialport \
dogmaphobic's avatar
dogmaphobic committed
71 72
}

73 74 75
contains(DEFINES, QGC_NOTIFY_TUNES_ENABLED) {
    QT += multimedia
}
76

77 78
#  testlib is needed even in release flavor for QSignalSpy support
QT += testlib
Don Gagne's avatar
Don Gagne committed
79

Don Gagne's avatar
Don Gagne committed
80 81 82
#
# OS Specific settings
#
83

Don Gagne's avatar
Don Gagne committed
84 85
MacBuild {
    QMAKE_INFO_PLIST = Custom-Info.plist
dogmaphobic's avatar
dogmaphobic committed
86 87 88 89 90 91 92 93
    ICON = $${BASEDIR}/resources/icons/macx.icns
    OTHER_FILES += Custom-Info.plist
}

iOSBuild {
    QMAKE_INFO_PLIST = $${BASEDIR}/ios/iOS-Info.plist
    ICON = $${BASEDIR}/resources/icons/macx.icns
    OTHER_FILES += $${BASEDIR}/iOS-Info.plist
Don Gagne's avatar
Don Gagne committed
94
}
95

Don Gagne's avatar
Don Gagne committed
96
LinuxBuild {
97
    CONFIG += qesp_linux_udev
Don Gagne's avatar
Don Gagne committed
98 99 100
}

WindowsBuild {
dogmaphobic's avatar
dogmaphobic committed
101
    RC_FILE = $${BASEDIR}/qgroundcontrol.rc
Don Gagne's avatar
Don Gagne committed
102
}
Lorenz Meier's avatar
Lorenz Meier committed
103

Don Gagne's avatar
Don Gagne committed
104
#
Bryant's avatar
Bryant committed
105
# Build-specific settings
Don Gagne's avatar
Don Gagne committed
106
#
Lorenz Meier's avatar
Lorenz Meier committed
107

Don Gagne's avatar
Don Gagne committed
108
DebugBuild {
dogmaphobic's avatar
dogmaphobic committed
109
!iOSBuild {
Don Gagne's avatar
Don Gagne committed
110
    CONFIG += console
Lorenz Meier's avatar
Lorenz Meier committed
111
}
dogmaphobic's avatar
dogmaphobic committed
112
}
Lorenz Meier's avatar
Lorenz Meier committed
113

dogmaphobic's avatar
dogmaphobic committed
114
!MobileBuild {
115 116
# qextserialport should not be used by general QGroundControl code. Use QSerialPort instead. This is only
# here to support special case Firmware Upgrade code.
117
include(libs/qextserialport/src/qextserialport.pri)
118
}
119

Don Gagne's avatar
Don Gagne committed
120 121 122
#
# External library configuration
#
123

Don Gagne's avatar
Don Gagne committed
124
include(QGCExternalLibs.pri)
125

Don Gagne's avatar
Don Gagne committed
126 127 128
#
# Main QGroundControl portion of project file
#
129

Don Gagne's avatar
Don Gagne committed
130
RESOURCES += qgroundcontrol.qrc
Bill Bonney's avatar
Bill Bonney committed
131

Don Gagne's avatar
Don Gagne committed
132 133
DEPENDPATH += \
    . \
Bill Bonney's avatar
Bill Bonney committed
134 135 136
    plugins

INCLUDEPATH += .
Lorenz Meier's avatar
Lorenz Meier committed
137

Don Gagne's avatar
Don Gagne committed
138
INCLUDEPATH += \
dogmaphobic's avatar
dogmaphobic committed
139
    include/ui \
Don Gagne's avatar
Don Gagne committed
140
    src \
141
    src/audio \
dogmaphobic's avatar
dogmaphobic committed
142 143
    src/AutoPilotPlugins \
    src/comm \
Don Gagne's avatar
Don Gagne committed
144 145
    src/input \
    src/lib/qmapcontrol \
dogmaphobic's avatar
dogmaphobic committed
146 147 148 149 150 151 152 153
    src/QmlControls \
    src/uas \
    src/ui \
    src/ui/flightdisplay \
    src/ui/linechart \
    src/ui/map \
    src/ui/mapdisplay \
    src/ui/mavlink \
Don Gagne's avatar
Don Gagne committed
154
    src/ui/mission \
155
    src/ui/px4_configuration \
dogmaphobic's avatar
dogmaphobic committed
156
    src/ui/toolbar \
dogmaphobic's avatar
dogmaphobic committed
157
    src/ui/uas \
158
    src/VehicleSetup \
dogmaphobic's avatar
dogmaphobic committed
159
    src/ViewWidgets \
Lorenz Meier's avatar
Lorenz Meier committed
160

Don Gagne's avatar
Don Gagne committed
161
FORMS += \
dogmaphobic's avatar
dogmaphobic committed
162 163 164
    src/QGCQmlWidgetHolder.ui \
    src/ui/HDDisplay.ui \
    src/ui/Linechart.ui \
Don Gagne's avatar
Don Gagne committed
165
    src/ui/LogReplayLinkConfigurationWidget.ui \
dogmaphobic's avatar
dogmaphobic committed
166
    src/ui/MainWindow.ui \
Lorenz Meier's avatar
Lorenz Meier committed
167 168 169
    src/ui/map/QGCMapTool.ui \
    src/ui/map/QGCMapToolBar.ui \
    src/ui/mavlink/QGCMAVLinkMessageSender.ui \
dogmaphobic's avatar
dogmaphobic committed
170
    src/ui/MAVLinkSettingsWidget.ui \
Lorenz Meier's avatar
Lorenz Meier committed
171
    src/ui/mission/QGCMissionConditionDelay.ui \
dogmaphobic's avatar
dogmaphobic committed
172 173 174 175
    src/ui/mission/QGCMissionDoFinishSearch.ui \
    src/ui/mission/QGCMissionDoJump.ui \
    src/ui/mission/QGCMissionDoStartSearch.ui \
    src/ui/mission/QGCMissionNavLand.ui \
Lorenz Meier's avatar
Lorenz Meier committed
176
    src/ui/mission/QGCMissionNavLoiterTime.ui \
dogmaphobic's avatar
dogmaphobic committed
177 178
    src/ui/mission/QGCMissionNavLoiterTurns.ui \
    src/ui/mission/QGCMissionNavLoiterUnlim.ui \
Lorenz Meier's avatar
Lorenz Meier committed
179 180
    src/ui/mission/QGCMissionNavReturnToLaunch.ui \
    src/ui/mission/QGCMissionNavSweep.ui \
dogmaphobic's avatar
dogmaphobic committed
181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199
    src/ui/mission/QGCMissionNavTakeoff.ui \
    src/ui/mission/QGCMissionNavWaypoint.ui \
    src/ui/mission/QGCMissionOther.ui \
    src/ui/QGCCommConfiguration.ui \
    src/ui/QGCDataPlot2D.ui \
    src/ui/QGCLinkConfiguration.ui \
    src/ui/QGCMapRCToParamDialog.ui \
    src/ui/QGCMAVLinkInspector.ui \
    src/ui/QGCMAVLinkLogPlayer.ui \
    src/ui/QGCPluginHost.ui \
    src/ui/QGCTabbedInfoView.ui \
    src/ui/QGCTCPLinkConfiguration.ui \
    src/ui/QGCUASFileView.ui \
    src/ui/QGCUASFileViewMulti.ui \
    src/ui/QGCUDPLinkConfiguration.ui \
    src/ui/QGCWaypointListMulti.ui \
    src/ui/SettingsDialog.ui \
    src/ui/uas/QGCUnconnectedInfoWidget.ui \
    src/ui/uas/UASMessageView.ui \
200
    src/ui/uas/UASQuickView.ui \
201
    src/ui/uas/UASQuickViewItemSelect.ui \
dogmaphobic's avatar
dogmaphobic committed
202 203 204
    src/ui/UASControl.ui \
    src/ui/UASInfo.ui \
    src/ui/UASList.ui \
205
    src/ui/UASRawStatusView.ui \
dogmaphobic's avatar
dogmaphobic committed
206 207 208 209
    src/ui/UASView.ui \
    src/ui/WaypointEditableView.ui \
    src/ui/WaypointList.ui \
    src/ui/WaypointViewOnlyView.ui \
210

dogmaphobic's avatar
dogmaphobic committed
211 212 213 214 215 216
!iOSBuild {
FORMS += \
    src/ui/SerialSettings.ui \
}

!MobileBuild {
dogmaphobic's avatar
dogmaphobic committed
217 218 219
FORMS += \
    src/ui/JoystickButton.ui \
    src/ui/JoystickAxis.ui \
dogmaphobic's avatar
dogmaphobic committed
220 221 222 223 224
    src/ui/JoystickWidget.ui \
    src/ui/QGCHilConfiguration.ui \
    src/ui/QGCHilFlightGearConfiguration.ui \
    src/ui/QGCHilJSBSimConfiguration.ui \
    src/ui/QGCHilXPlaneConfiguration.ui \
dogmaphobic's avatar
dogmaphobic committed
225 226
}

Don Gagne's avatar
Don Gagne committed
227
HEADERS += \
dogmaphobic's avatar
dogmaphobic committed
228 229 230
    src/audio/QGCAudioWorker.h \
    src/CmdLineOptParser.h \
    src/comm/LinkConfiguration.h \
Lorenz Meier's avatar
Lorenz Meier committed
231
    src/comm/LinkInterface.h \
dogmaphobic's avatar
dogmaphobic committed
232
    src/comm/LinkManager.h \
Don Gagne's avatar
Don Gagne committed
233
    src/comm/LogReplayLink.h \
Lorenz Meier's avatar
Lorenz Meier committed
234
    src/comm/MAVLinkProtocol.h \
235
    src/comm/MockLink.h \
236
    src/comm/MockLinkFileServer.h \
237
    src/comm/MockLinkMissionItemHandler.h \
dogmaphobic's avatar
dogmaphobic committed
238 239
    src/comm/ProtocolInterface.h \
    src/comm/QGCMAVLink.h \
Don Gagne's avatar
Don Gagne committed
240
    src/comm/TCPLink.h \
dogmaphobic's avatar
dogmaphobic committed
241
    src/comm/UDPLink.h \
Lorenz Meier's avatar
Lorenz Meier committed
242 243
    src/GAudioOutput.h \
    src/LogCompressor.h \
dogmaphobic's avatar
dogmaphobic committed
244
    src/MG.h \
Lorenz Meier's avatar
Lorenz Meier committed
245
    src/QGC.h \
dogmaphobic's avatar
dogmaphobic committed
246 247 248 249 250 251 252 253 254 255 256 257 258
    src/QGCApplication.h \
    src/QGCComboBox.h \
    src/QGCConfig.h \
    src/QGCDockWidget.h \
    src/QGCFileDialog.h \
    src/QGCGeo.h \
    src/QGCLoggingCategory.h \
    src/QGCMessageBox.h \
    src/QGCPalette.h \
    src/QGCQmlWidgetHolder.h \
    src/QGCQuickWidget.h \
    src/QGCSingleton.h \
    src/QGCTemporaryFile.h \
259
    src/QmlControls/MavManager.h \
dogmaphobic's avatar
dogmaphobic committed
260
    src/QmlControls/ParameterEditorController.h \
Don Gagne's avatar
Don Gagne committed
261
    src/QmlControls/ScreenToolsController.h \
262
    src/SerialPortIds.h \
dogmaphobic's avatar
dogmaphobic committed
263
    src/uas/QGCMAVLinkUASFactory.h \
264
    src/uas/FileManager.h \
dogmaphobic's avatar
dogmaphobic committed
265 266 267 268 269 270
    src/uas/UAS.h \
    src/uas/UASInterface.h \
    src/uas/UASManager.h \
    src/uas/UASManagerInterface.h \
    src/uas/UASMessageHandler.h \
    src/uas/UASWaypointManager.h \
271
    src/ui/flightdisplay/FlightDisplay.h \
dogmaphobic's avatar
dogmaphobic committed
272 273 274 275 276 277 278 279 280 281
    src/ui/HDDisplay.h \
    src/ui/HSIDisplay.h \
    src/ui/HUD.h \
    src/ui/linechart/ChartPlot.h \
    src/ui/linechart/IncrementalPlot.h \
    src/ui/linechart/LinechartPlot.h \
    src/ui/linechart/Linecharts.h \
    src/ui/linechart/LinechartWidget.h \
    src/ui/linechart/Scrollbar.h \
    src/ui/linechart/ScrollZoomer.h \
Don Gagne's avatar
Don Gagne committed
282
    src/ui/LogReplayLinkConfigurationWidget.h \
dogmaphobic's avatar
dogmaphobic committed
283 284 285 286 287 288 289 290 291 292
    src/ui/MainWindow.h \
    src/ui/map/MAV2DIcon.h \
    src/ui/map/QGCMapTool.h \
    src/ui/map/QGCMapToolBar.h \
    src/ui/map/QGCMapWidget.h \
    src/ui/map/Waypoint2DIcon.h \
    src/ui/mapdisplay/QGCMapDisplay.h \
    src/ui/mavlink/QGCMAVLinkMessageSender.h \
    src/ui/MAVLinkDecoder.h \
    src/ui/MAVLinkSettingsWidget.h \
Lorenz Meier's avatar
Lorenz Meier committed
293
    src/ui/mission/QGCMissionConditionDelay.h \
dogmaphobic's avatar
dogmaphobic committed
294 295 296 297
    src/ui/mission/QGCMissionDoFinishSearch.h \
    src/ui/mission/QGCMissionDoJump.h \
    src/ui/mission/QGCMissionDoStartSearch.h \
    src/ui/mission/QGCMissionNavLand.h \
Lorenz Meier's avatar
Lorenz Meier committed
298
    src/ui/mission/QGCMissionNavLoiterTime.h \
dogmaphobic's avatar
dogmaphobic committed
299 300
    src/ui/mission/QGCMissionNavLoiterTurns.h \
    src/ui/mission/QGCMissionNavLoiterUnlim.h \
Lorenz Meier's avatar
Lorenz Meier committed
301 302
    src/ui/mission/QGCMissionNavReturnToLaunch.h \
    src/ui/mission/QGCMissionNavSweep.h \
dogmaphobic's avatar
dogmaphobic committed
303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327
    src/ui/mission/QGCMissionNavTakeoff.h \
    src/ui/mission/QGCMissionNavWaypoint.h \
    src/ui/mission/QGCMissionOther.h \
    src/ui/QGCCommConfiguration.h \
    src/ui/QGCDataPlot2D.h \
    src/ui/QGCLinkConfiguration.h \
    src/ui/QGCMainWindowAPConfigurator.h \
    src/ui/QGCMapRCToParamDialog.h \
    src/ui/QGCMAVLinkInspector.h \
    src/ui/QGCMAVLinkLogPlayer.h \
    src/ui/QGCPluginHost.h \
    src/ui/QGCRGBDView.h \
    src/ui/QGCTabbedInfoView.h \
    src/ui/QGCTCPLinkConfiguration.h \
    src/ui/QGCUASFileView.h \
    src/ui/QGCUASFileViewMulti.h \
    src/ui/QGCUDPLinkConfiguration.h \
    src/ui/QGCWaypointListMulti.h \
    src/ui/SettingsDialog.h \
    src/ui/toolbar/MainToolBar.h \
    src/ui/uas/QGCUnconnectedInfoWidget.h \
    src/ui/uas/UASControlWidget.h \
    src/ui/uas/UASInfoWidget.h \
    src/ui/uas/UASListWidget.h \
    src/ui/uas/UASMessageView.h \
328
    src/ui/uas/UASQuickView.h \
dogmaphobic's avatar
dogmaphobic committed
329
    src/ui/uas/UASQuickViewGaugeItem.h \
330
    src/ui/uas/UASQuickViewItem.h \
331
    src/ui/uas/UASQuickViewItemSelect.h \
332
    src/ui/uas/UASQuickViewTextItem.h \
dogmaphobic's avatar
dogmaphobic committed
333
    src/ui/uas/UASView.h \
334
    src/ui/UASRawStatusView.h \
dogmaphobic's avatar
dogmaphobic committed
335 336 337
    src/ui/WaypointEditableView.h \
    src/ui/WaypointList.h \
    src/ui/WaypointViewOnlyView.h \
Don Gagne's avatar
Don Gagne committed
338 339
    src/ViewWidgets/CustomCommandWidget.h \
    src/ViewWidgets/CustomCommandWidgetController.h \
340
    src/ViewWidgets/ParameterEditorWidget.h \
341
    src/ViewWidgets/ViewWidgetController.h \
dogmaphobic's avatar
dogmaphobic committed
342
    src/Waypoint.h \
343
    src/AutoPilotPlugins/PX4/PX4AirframeLoader.h
Lorenz Meier's avatar
Lorenz Meier committed
344

dogmaphobic's avatar
dogmaphobic committed
345
!iOSBuild {
dogmaphobic's avatar
dogmaphobic committed
346
HEADERS += \
dogmaphobic's avatar
dogmaphobic committed
347 348 349 350 351 352 353 354 355 356
    src/comm/SerialLink.h \
    src/ui/SerialConfigurationWindow.h \
}

!MobileBuild {
HEADERS += \
    src/comm/QGCFlightGearLink.h \
    src/comm/QGCHilLink.h \
    src/comm/QGCJSBSimLink.h \
    src/comm/QGCXPlaneLink.h \
dogmaphobic's avatar
dogmaphobic committed
357
    src/input/JoystickInput.h \
dogmaphobic's avatar
dogmaphobic committed
358
    src/ui/CameraView.h \
dogmaphobic's avatar
dogmaphobic committed
359 360 361
    src/ui/JoystickAxis.h \
    src/ui/JoystickButton.h \
    src/ui/JoystickWidget.h \
dogmaphobic's avatar
dogmaphobic committed
362 363 364 365
    src/ui/QGCHilConfiguration.h \
    src/ui/QGCHilFlightGearConfiguration.h \
    src/ui/QGCHilJSBSimConfiguration.h \
    src/ui/QGCHilXPlaneConfiguration.h \
dogmaphobic's avatar
dogmaphobic committed
366 367
}

Don Gagne's avatar
Don Gagne committed
368
SOURCES += \
dogmaphobic's avatar
dogmaphobic committed
369 370 371
    src/audio/QGCAudioWorker.cpp \
    src/CmdLineOptParser.cc \
    src/comm/LinkConfiguration.cc \
Lorenz Meier's avatar
Lorenz Meier committed
372
    src/comm/LinkManager.cc \
Don Gagne's avatar
Don Gagne committed
373
    src/comm/LogReplayLink.cc \
Lorenz Meier's avatar
Lorenz Meier committed
374
    src/comm/MAVLinkProtocol.cc \
375
    src/comm/MockLink.cc \
376
    src/comm/MockLinkFileServer.cc \
377
    src/comm/MockLinkMissionItemHandler.cc \
Don Gagne's avatar
Don Gagne committed
378
    src/comm/TCPLink.cc \
dogmaphobic's avatar
dogmaphobic committed
379
    src/comm/UDPLink.cc \
Lorenz Meier's avatar
Lorenz Meier committed
380 381
    src/GAudioOutput.cc \
    src/LogCompressor.cc \
dogmaphobic's avatar
dogmaphobic committed
382
    src/main.cc \
Lorenz Meier's avatar
Lorenz Meier committed
383
    src/QGC.cc \
dogmaphobic's avatar
dogmaphobic committed
384 385 386 387 388 389 390 391 392 393
    src/QGCApplication.cc \
    src/QGCComboBox.cc \
    src/QGCDockWidget.cc \
    src/QGCFileDialog.cc \
    src/QGCLoggingCategory.cc \
    src/QGCPalette.cc \
    src/QGCQmlWidgetHolder.cpp \
    src/QGCQuickWidget.cc \
    src/QGCSingleton.cc \
    src/QGCTemporaryFile.cc \
394
    src/QmlControls/MavManager.cc \
dogmaphobic's avatar
dogmaphobic committed
395
    src/QmlControls/ParameterEditorController.cc \
Don Gagne's avatar
Don Gagne committed
396
    src/QmlControls/ScreenToolsController.cc \
dogmaphobic's avatar
dogmaphobic committed
397
    src/uas/QGCMAVLinkUASFactory.cc \
398
    src/uas/FileManager.cc \
dogmaphobic's avatar
dogmaphobic committed
399 400 401 402
    src/uas/UAS.cc \
    src/uas/UASManager.cc \
    src/uas/UASMessageHandler.cc \
    src/uas/UASWaypointManager.cc \
403
    src/ui/flightdisplay/FlightDisplay.cc \
dogmaphobic's avatar
dogmaphobic committed
404 405 406 407 408 409 410 411 412 413
    src/ui/HDDisplay.cc \
    src/ui/HSIDisplay.cc \
    src/ui/HUD.cc \
    src/ui/linechart/ChartPlot.cc \
    src/ui/linechart/IncrementalPlot.cc \
    src/ui/linechart/LinechartPlot.cc \
    src/ui/linechart/Linecharts.cc \
    src/ui/linechart/LinechartWidget.cc \
    src/ui/linechart/Scrollbar.cc \
    src/ui/linechart/ScrollZoomer.cc \
Don Gagne's avatar
Don Gagne committed
414
    src/ui/LogReplayLinkConfigurationWidget.cc \
dogmaphobic's avatar
dogmaphobic committed
415
    src/ui/MainWindow.cc \
Lorenz Meier's avatar
Lorenz Meier committed
416 417 418
    src/ui/map/MAV2DIcon.cc \
    src/ui/map/QGCMapTool.cc \
    src/ui/map/QGCMapToolBar.cc \
dogmaphobic's avatar
dogmaphobic committed
419 420 421
    src/ui/map/QGCMapWidget.cc \
    src/ui/map/Waypoint2DIcon.cc \
    src/ui/mapdisplay/QGCMapDisplay.cc \
Lorenz Meier's avatar
Lorenz Meier committed
422
    src/ui/mavlink/QGCMAVLinkMessageSender.cc \
dogmaphobic's avatar
dogmaphobic committed
423 424
    src/ui/MAVLinkDecoder.cc \
    src/ui/MAVLinkSettingsWidget.cc \
Lorenz Meier's avatar
Lorenz Meier committed
425
    src/ui/mission/QGCMissionConditionDelay.cc \
dogmaphobic's avatar
dogmaphobic committed
426 427 428 429
    src/ui/mission/QGCMissionDoFinishSearch.cc \
    src/ui/mission/QGCMissionDoJump.cc \
    src/ui/mission/QGCMissionDoStartSearch.cc \
    src/ui/mission/QGCMissionNavLand.cc \
Lorenz Meier's avatar
Lorenz Meier committed
430
    src/ui/mission/QGCMissionNavLoiterTime.cc \
dogmaphobic's avatar
dogmaphobic committed
431 432
    src/ui/mission/QGCMissionNavLoiterTurns.cc \
    src/ui/mission/QGCMissionNavLoiterUnlim.cc \
Lorenz Meier's avatar
Lorenz Meier committed
433 434
    src/ui/mission/QGCMissionNavReturnToLaunch.cc \
    src/ui/mission/QGCMissionNavSweep.cc \
dogmaphobic's avatar
dogmaphobic committed
435 436 437 438 439 440 441 442 443 444 445 446
    src/ui/mission/QGCMissionNavTakeoff.cc \
    src/ui/mission/QGCMissionNavWaypoint.cc \
    src/ui/mission/QGCMissionOther.cc \
    src/ui/QGCCommConfiguration.cc \
    src/ui/QGCDataPlot2D.cc \
    src/ui/QGCLinkConfiguration.cc \
    src/ui/QGCMainWindowAPConfigurator.cc \
    src/ui/QGCMapRCToParamDialog.cpp \
    src/ui/QGCMAVLinkInspector.cc \
    src/ui/QGCMAVLinkLogPlayer.cc \
    src/ui/QGCPluginHost.cc \
    src/ui/QGCRGBDView.cc \
447
    src/ui/QGCTabbedInfoView.cpp \
dogmaphobic's avatar
dogmaphobic committed
448
    src/ui/QGCTCPLinkConfiguration.cc \
449
    src/ui/QGCUASFileView.cc \
dogmaphobic's avatar
dogmaphobic committed
450
    src/ui/QGCUASFileViewMulti.cc \
451
    src/ui/QGCUDPLinkConfiguration.cc \
dogmaphobic's avatar
dogmaphobic committed
452 453
    src/ui/QGCWaypointListMulti.cc \
    src/ui/SettingsDialog.cc \
Don Gagne's avatar
Don Gagne committed
454
    src/ui/toolbar/MainToolBar.cc \
dogmaphobic's avatar
dogmaphobic committed
455 456 457 458 459 460 461 462 463 464 465 466 467 468 469
    src/ui/uas/QGCUnconnectedInfoWidget.cc \
    src/ui/uas/UASControlWidget.cc \
    src/ui/uas/UASInfoWidget.cc \
    src/ui/uas/UASListWidget.cc \
    src/ui/uas/UASMessageView.cc \
    src/ui/uas/UASQuickView.cc \
    src/ui/uas/UASQuickViewGaugeItem.cc \
    src/ui/uas/UASQuickViewItem.cc \
    src/ui/uas/UASQuickViewItemSelect.cc \
    src/ui/uas/UASQuickViewTextItem.cc \
    src/ui/uas/UASView.cc \
    src/ui/UASRawStatusView.cpp \
    src/ui/WaypointEditableView.cc \
    src/ui/WaypointList.cc \
    src/ui/WaypointViewOnlyView.cc \
Don Gagne's avatar
Don Gagne committed
470 471
    src/ViewWidgets/CustomCommandWidget.cc \
    src/ViewWidgets/CustomCommandWidgetController.cc \
472
    src/ViewWidgets/ParameterEditorWidget.cc \
473
    src/ViewWidgets/ViewWidgetController.cc \
dogmaphobic's avatar
dogmaphobic committed
474
    src/Waypoint.cc \
475
    src/AutoPilotPlugins/PX4/PX4AirframeLoader.cc
476

dogmaphobic's avatar
dogmaphobic committed
477
!iOSBuild {
dogmaphobic's avatar
dogmaphobic committed
478
SOURCES += \
dogmaphobic's avatar
dogmaphobic committed
479 480 481 482 483 484 485 486 487
    src/comm/SerialLink.cc \
    src/ui/SerialConfigurationWindow.cc \
}

!MobileBuild {
SOURCES += \
    src/comm/QGCFlightGearLink.cc \
    src/comm/QGCJSBSimLink.cc \
    src/comm/QGCXPlaneLink.cc \
dogmaphobic's avatar
dogmaphobic committed
488
    src/input/JoystickInput.cc \
dogmaphobic's avatar
dogmaphobic committed
489
    src/ui/CameraView.cc \
dogmaphobic's avatar
dogmaphobic committed
490 491 492
    src/ui/JoystickAxis.cc \
    src/ui/JoystickButton.cc \
    src/ui/JoystickWidget.cc \
dogmaphobic's avatar
dogmaphobic committed
493 494 495 496
    src/ui/QGCHilConfiguration.cc \
    src/ui/QGCHilFlightGearConfiguration.cc \
    src/ui/QGCHilJSBSimConfiguration.cc \
    src/ui/QGCHilXPlaneConfiguration.cc \
dogmaphobic's avatar
dogmaphobic committed
497 498
}

499 500
#
# Unit Test specific configuration goes here
501 502
#
# We have to special case Windows debug_and_release builds because you can't have files
503 504
# which are only in the debug variant [QTBUG-40351]. So in this case we include unit tests
# even in the release variant. If you want a Windows release build with no unit tests run
505 506 507 508 509
# qmake with CONFIG-=debug_and_release CONFIG+=release.
#

DebugBuild|WindowsDebugAndRelease {

dogmaphobic's avatar
dogmaphobic committed
510 511 512
HEADERS += src/QmlControls/QmlTestWidget.h
SOURCES += src/QmlControls/QmlTestWidget.cc

dogmaphobic's avatar
dogmaphobic committed
513
!MobileBuild {
dogmaphobic's avatar
dogmaphobic committed
514

515 516 517 518
INCLUDEPATH += \
	src/qgcunittest

HEADERS += \
dogmaphobic's avatar
dogmaphobic committed
519 520 521 522 523 524 525
    src/qgcunittest/FlightGearTest.h \
    src/qgcunittest/MultiSignalSpy.h \
    src/qgcunittest/TCPLinkTest.h \
    src/qgcunittest/TCPLoopBackServer.h \
    src/FactSystem/FactSystemTestBase.h \
    src/FactSystem/FactSystemTestGeneric.h \
    src/FactSystem/FactSystemTestPX4.h \
526
    src/qgcunittest/FileDialogTest.h \
Don Gagne's avatar
Don Gagne committed
527
    src/qgcunittest/LinkManagerTest.h \
528
    src/qgcunittest/MainWindowTest.h \
Don Gagne's avatar
Don Gagne committed
529
    src/qgcunittest/MavlinkLogTest.h \
dogmaphobic's avatar
dogmaphobic committed
530 531
    src/qgcunittest/MessageBoxTest.h \
    src/qgcunittest/UnitTest.h \
532
    src/VehicleSetup/SetupViewTest.h \
533
    src/qgcunittest/FileManagerTest.h \
534
    src/qgcunittest/PX4RCCalibrationTest.h \
Don Gagne's avatar
Don Gagne committed
535

536
SOURCES += \
dogmaphobic's avatar
dogmaphobic committed
537 538 539 540 541 542 543
    src/qgcunittest/FlightGearTest.cc \
    src/qgcunittest/MultiSignalSpy.cc \
    src/qgcunittest/TCPLinkTest.cc \
    src/qgcunittest/TCPLoopBackServer.cc \
    src/FactSystem/FactSystemTestBase.cc \
    src/FactSystem/FactSystemTestGeneric.cc \
    src/FactSystem/FactSystemTestPX4.cc \
544
    src/qgcunittest/FileDialogTest.cc \
Don Gagne's avatar
Don Gagne committed
545
    src/qgcunittest/LinkManagerTest.cc \
546
    src/qgcunittest/MainWindowTest.cc \
Don Gagne's avatar
Don Gagne committed
547
    src/qgcunittest/MavlinkLogTest.cc \
dogmaphobic's avatar
dogmaphobic committed
548 549
    src/qgcunittest/MessageBoxTest.cc \
    src/qgcunittest/UnitTest.cc \
550
    src/VehicleSetup/SetupViewTest.cc \
551
    src/qgcunittest/FileManagerTest.cc \
552
    src/qgcunittest/PX4RCCalibrationTest.cc \
Don Gagne's avatar
Don Gagne committed
553

dogmaphobic's avatar
dogmaphobic committed
554
} # DebugBuild|WindowsDebugAndRelease
dogmaphobic's avatar
dogmaphobic committed
555
} # MobileBuild
556 557 558 559

#
# AutoPilot Plugin Support
#
560 561

INCLUDEPATH += \
Don Gagne's avatar
Don Gagne committed
562 563
    src/VehicleSetup \
    src/AutoPilotPlugins/PX4 \
564

565 566
HEADERS+= \
    src/AutoPilotPlugins/AutoPilotPlugin.h \
dogmaphobic's avatar
dogmaphobic committed
567
    src/AutoPilotPlugins/AutoPilotPluginManager.h \
568
    src/AutoPilotPlugins/Generic/GenericAutoPilotPlugin.h \
569
    src/AutoPilotPlugins/Generic/GenericParameterFacts.h \
570
    src/AutoPilotPlugins/PX4/AirframeComponent.h \
571 572
    src/AutoPilotPlugins/PX4/AirframeComponentAirframes.h \
    src/AutoPilotPlugins/PX4/AirframeComponentController.h \
dogmaphobic's avatar
dogmaphobic committed
573 574
    src/AutoPilotPlugins/PX4/FlightModesComponent.h \
    src/AutoPilotPlugins/PX4/FlightModesComponentController.h \
dogmaphobic's avatar
dogmaphobic committed
575
    src/AutoPilotPlugins/PX4/PowerComponent.h \
576
    src/AutoPilotPlugins/PX4/PowerComponentController.h \
dogmaphobic's avatar
dogmaphobic committed
577 578
    src/AutoPilotPlugins/PX4/PX4AutoPilotPlugin.h \
    src/AutoPilotPlugins/PX4/PX4Component.h \
579
    src/AutoPilotPlugins/PX4/PX4ParameterLoader.h \
dogmaphobic's avatar
dogmaphobic committed
580
    src/AutoPilotPlugins/PX4/RadioComponent.h \
Don Gagne's avatar
Don Gagne committed
581
    src/AutoPilotPlugins/PX4/RadioComponentController.h \
dogmaphobic's avatar
dogmaphobic committed
582 583 584 585 586
    src/AutoPilotPlugins/PX4/SafetyComponent.h \
    src/AutoPilotPlugins/PX4/SensorsComponent.h \
    src/AutoPilotPlugins/PX4/SensorsComponentController.h \
    src/VehicleSetup/SetupView.h \
    src/VehicleSetup/VehicleComponent.h \
587

dogmaphobic's avatar
dogmaphobic committed
588
!MobileBuild {
589 590
HEADERS += \
    src/VehicleSetup/FirmwareUpgradeController.h \
591 592 593 594
    src/VehicleSetup/Bootloader.h \
    src/VehicleSetup/PX4FirmwareUpgradeThread.h \
    src/VehicleSetup/FirmwareImage.h \

595 596
}

597
SOURCES += \
598
    src/AutoPilotPlugins/AutoPilotPlugin.cc \
dogmaphobic's avatar
dogmaphobic committed
599
    src/AutoPilotPlugins/AutoPilotPluginManager.cc \
600
    src/AutoPilotPlugins/Generic/GenericAutoPilotPlugin.cc \
601
    src/AutoPilotPlugins/Generic/GenericParameterFacts.cc \
602
    src/AutoPilotPlugins/PX4/AirframeComponent.cc \
603 604
    src/AutoPilotPlugins/PX4/AirframeComponentAirframes.cc \
    src/AutoPilotPlugins/PX4/AirframeComponentController.cc \
dogmaphobic's avatar
dogmaphobic committed
605 606
    src/AutoPilotPlugins/PX4/FlightModesComponent.cc \
    src/AutoPilotPlugins/PX4/FlightModesComponentController.cc \
dogmaphobic's avatar
dogmaphobic committed
607
    src/AutoPilotPlugins/PX4/PowerComponent.cc \
608
    src/AutoPilotPlugins/PX4/PowerComponentController.cc \
dogmaphobic's avatar
dogmaphobic committed
609 610
    src/AutoPilotPlugins/PX4/PX4AutoPilotPlugin.cc \
    src/AutoPilotPlugins/PX4/PX4Component.cc \
611
    src/AutoPilotPlugins/PX4/PX4ParameterLoader.cc \
dogmaphobic's avatar
dogmaphobic committed
612
    src/AutoPilotPlugins/PX4/RadioComponent.cc \
Don Gagne's avatar
Don Gagne committed
613
    src/AutoPilotPlugins/PX4/RadioComponentController.cc \
dogmaphobic's avatar
dogmaphobic committed
614 615 616 617 618
    src/AutoPilotPlugins/PX4/SafetyComponent.cc \
    src/AutoPilotPlugins/PX4/SensorsComponent.cc \
    src/AutoPilotPlugins/PX4/SensorsComponentController.cc \
    src/VehicleSetup/SetupView.cc \
    src/VehicleSetup/VehicleComponent.cc \
Don Gagne's avatar
Don Gagne committed
619

dogmaphobic's avatar
dogmaphobic committed
620
!MobileBuild {
621 622
SOURCES += \
    src/VehicleSetup/FirmwareUpgradeController.cc \
623 624 625 626
    src/VehicleSetup/Bootloader.cc \
    src/VehicleSetup/PX4FirmwareUpgradeThread.cc \
    src/VehicleSetup/FirmwareImage.cc \

627 628
}

Don Gagne's avatar
Don Gagne committed
629 630 631
# Fact System code

INCLUDEPATH += \
632 633
    src/FactSystem \
    src/FactSystem/FactControls \
Don Gagne's avatar
Don Gagne committed
634 635 636 637

HEADERS += \
    src/FactSystem/Fact.h \
    src/FactSystem/FactMetaData.h \
dogmaphobic's avatar
dogmaphobic committed
638
    src/FactSystem/FactSystem.h \
Don Gagne's avatar
Don Gagne committed
639
    src/FactSystem/FactValidator.h \
640
    src/FactSystem/ParameterLoader.h \
641
    src/FactSystem/FactControls/FactPanelController.h \
Don Gagne's avatar
Don Gagne committed
642 643 644 645

SOURCES += \
    src/FactSystem/Fact.cc \
    src/FactSystem/FactMetaData.cc \
dogmaphobic's avatar
dogmaphobic committed
646
    src/FactSystem/FactSystem.cc \
Don Gagne's avatar
Don Gagne committed
647
    src/FactSystem/FactValidator.cc \
648
    src/FactSystem/ParameterLoader.cc \
649
    src/FactSystem/FactControls/FactPanelController.cc \
dogmaphobic's avatar
dogmaphobic committed
650

651
#-------------------------------------------------------------------------------------
Gus Grubba's avatar
Gus Grubba committed
652
# Video Streaming
653 654 655 656 657 658 659 660 661 662 663 664 665 666 667

INCLUDEPATH += \
    src/VideoStreaming

HEADERS += \
    src/VideoStreaming/VideoItem.h \
    src/VideoStreaming/VideoReceiver.h \
    src/VideoStreaming/VideoSurface.h \
    src/VideoStreaming/VideoSurface_p.h \

SOURCES += \
    src/VideoStreaming/VideoItem.cc \
    src/VideoStreaming/VideoReceiver.cc \
    src/VideoStreaming/VideoSurface.cc \

Gus Grubba's avatar
Gus Grubba committed
668 669 670 671 672 673 674 675 676 677
contains (DEFINES, DISABLE_VIDEOSTREAMING) {
    message("Skipping support for video streaming (manual override from command line)")
    DEFINES -= DISABLE_VIDEOSTREAMING
# Otherwise the user can still disable this feature in the user_config.pri file.
} else:exists(user_config.pri):infile(user_config.pri, DEFINES, DISABLE_VIDEOSTREAMING) {
    message("Skipping support for video streaming (manual override from user_config.pri)")
} else {
    include(src/VideoStreaming/VideoStreaming.pri)
}

678
#-------------------------------------------------------------------------------------
dogmaphobic's avatar
dogmaphobic committed
679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700
# Android

AndroidBuild {
    include($$PWD/libs/qtandroidserialport/src/qtandroidserialport.pri)
    message("Adding Serial Java Classes")
    QT += androidextras
    ANDROID_PACKAGE_SOURCE_DIR = $$PWD/android
    OTHER_FILES += \
        $$PWD/android/AndroidManifest.xml \
        $$PWD/android/res/xml/device_filter.xml \
        $$PWD/android/src/com/hoho/android/usbserial/driver/CdcAcmSerialDriver.java \
        $$PWD/android/src/com/hoho/android/usbserial/driver/CommonUsbSerialDriver.java \
        $$PWD/android/src/com/hoho/android/usbserial/driver/Cp2102SerialDriver.java \
        $$PWD/android/src/com/hoho/android/usbserial/driver/FtdiSerialDriver.java \
        $$PWD/android/src/com/hoho/android/usbserial/driver/ProlificSerialDriver.java \
        $$PWD/android/src/com/hoho/android/usbserial/driver/UsbId.java \
        $$PWD/android/src/com/hoho/android/usbserial/driver/UsbSerialDriver.java \
        $$PWD/android/src/com/hoho/android/usbserial/driver/UsbSerialProber.java \
        $$PWD/android/src/com/hoho/android/usbserial/driver/UsbSerialRuntimeException.java \
        $$PWD/android/src/org/qgroundcontrol/qgchelper/UsbDeviceJNI.java \
        $$PWD/android/src/org/qgroundcontrol/qgchelper/UsbIoManager.java
}
701 702 703 704 705 706 707 708 709 710 711 712 713

#-------------------------------------------------------------------------------------
#
# Post link configuration
#

include(QGCSetup.pri)

#
# Installer targets
#

include(QGCInstaller.pri)