1 CONFIG += c++14 exceptions_off rtti_off optimize_full
5 DEFINES += APP_VERSION="$$VERSION"
8 DEFINES += APP_NAME="$$APP_NAME"
10 APP_UNIX_NAME = minitube
11 DEFINES += APP_UNIX_NAME="$$APP_UNIX_NAME"
13 DEFINES += APP_SNAPSHOT
15 message(Building $${APP_NAME} $${VERSION})
16 message(Qt $$[QT_VERSION] in $$[QT_INSTALL_PREFIX])
18 DEFINES *= QT_NO_DEBUG_OUTPUT
19 DEFINES *= QT_USE_QSTRINGBUILDER
20 DEFINES *= QT_STRICT_ITERATORS
22 !contains(DEFINES, APP_GOOGLE_API_KEY=.+) {
23 warning("You need to specify a Google API Key, refer to the README.md file for details")
26 TARGET = $${APP_UNIX_NAME}
28 QT += widgets network sql qml
30 include(lib/http/http.pri)
31 include(lib/idle/idle.pri)
34 include(lib/media/media.pri)
36 include(src/qtsingleapplication/qtsingleapplication.pri)
38 HEADERS += src/video.h \
41 src/playlistitemdelegate.h \
48 src/videodefinition.h \
50 src/globalshortcuts.h \
51 src/globalshortcutbackend.h \
52 src/downloadmanager.h \
56 src/downloadlistview.h \
57 src/downloadsettings.h \
59 src/channelsuggest.h \
61 src/segmentedcontrol.h \
63 src/refinesearchwidget.h \
64 src/refinesearchbutton.h \
75 src/ytstandardfeed.h \
76 src/standardfeedsview.h \
80 src/videosourcewidget.h \
82 src/ytsinglevideosource.h \
89 src/channelaggregator.h \
91 src/aggregatevideosource.h \
93 src/channelitemdelegate.h \
96 src/snapshotsettings.h \
97 src/snapshotpreview.h \
102 src/paginatedvideosource.h \
104 src/channellistview.h \
107 src/clickablelabel.h \
113 SOURCES += src/main.cpp \
116 src/videomimedata.cpp \
117 src/updatechecker.cpp \
118 src/searchparams.cpp \
119 src/minisplitter.cpp \
120 src/loadingwidget.cpp \
121 src/autocomplete.cpp \
122 src/videodefinition.cpp \
125 src/globalshortcuts.cpp \
126 src/globalshortcutbackend.cpp \
127 src/downloadmanager.cpp \
128 src/downloaditem.cpp \
129 src/downloadview.cpp \
130 src/downloadmodel.cpp \
131 src/downloadlistview.cpp \
132 src/downloadsettings.cpp \
133 src/channelsuggest.cpp \
135 src/segmentedcontrol.cpp \
136 src/playlistview.cpp \
137 src/refinesearchwidget.cpp \
138 src/refinesearchbutton.cpp \
139 src/sidebarwidget.cpp \
145 src/playlistitemdelegate.cpp \
146 src/playlistmodel.cpp \
147 src/videosource.cpp \
149 src/ytstandardfeed.cpp \
150 src/standardfeedsview.cpp \
152 src/ytcategories.cpp \
153 src/ytsuggester.cpp \
154 src/videosourcewidget.cpp \
155 src/regionsview.cpp \
156 src/ytsinglevideosource.cpp \
157 src/sidebarheader.cpp \
161 src/painterutils.cpp \
163 src/channelaggregator.cpp \
164 src/channelmodel.cpp \
165 src/aggregatevideosource.cpp \
166 src/channelview.cpp \
167 src/channelitemdelegate.cpp \
168 src/jsfunctions.cpp \
170 src/snapshotsettings.cpp \
171 src/snapshotpreview.cpp \
173 src/yt3listparser.cpp \
176 src/paginatedvideosource.cpp \
177 src/channellistview.cpp \
180 src/clickablelabel.cpp \
182 src/toolbarmenu.cpp \
183 src/sharetoolbar.cpp \
185 src/searchlineedit.cpp
187 RESOURCES += resources.qrc
188 RESOURCES += $$files(icons/*.png, true)
190 DESTDIR = build/target/
191 OBJECTS_DIR = build/obj/
195 # Tell Qt Linguist that we use UTF-8 strings in our sources
199 include(locale/locale.pri)
202 DISTFILES += CHANGES COPYING
206 HEADERS += src/gnomeglobalshortcutbackend.h
207 SOURCES += src/gnomeglobalshortcutbackend.cpp
209 isEmpty(PREFIX):PREFIX = /usr
211 BINDIR = $$PREFIX/bin
213 target.path = $$BINDIR
215 DATADIR = $$PREFIX/share
216 PKGDATADIR = $$DATADIR/minitube
217 DEFINES += DATADIR=\\\"$$DATADIR\\\" \
218 PKGDATADIR=\\\"$$PKGDATADIR\\\"
220 INSTALLS += translations \
233 translations.path = $$PKGDATADIR
234 translations.files += $$DESTDIR/locale
235 sounds.path = $$PKGDATADIR
236 sounds.files += sounds/
237 desktop.path = $$DATADIR/applications
238 desktop.files += minitube.desktop
239 appdata.path = $$DATADIR/appdata
240 appdata.files += minitube.appdata.xml
241 iconsvg.path = $$DATADIR/icons/hicolor/scalable/apps
242 iconsvg.files += data/minitube.svg
243 icon16.path = $$DATADIR/icons/hicolor/16x16/apps
244 icon16.files += data/16x16/minitube.png
245 icon22.path = $$DATADIR/icons/hicolor/22x22/apps
246 icon22.files += data/22x22/minitube.png
247 icon32.path = $$DATADIR/icons/hicolor/32x32/apps
248 icon32.files += data/32x32/minitube.png
249 icon48.path = $$DATADIR/icons/hicolor/48x48/apps
250 icon48.files += data/48x48/minitube.png
251 icon64.path = $$DATADIR/icons/hicolor/64x64/apps
252 icon64.files += data/64x64/minitube.png
253 icon128.path = $$DATADIR/icons/hicolor/128x128/apps
254 icon128.files += data/128x128/minitube.png
255 icon256.path = $$DATADIR/icons/hicolor/256x256/apps
256 icon256.files += data/256x256/minitube.png
257 icon512.path = $$DATADIR/icons/hicolor/512x512/apps
258 icon512.files += data/512x512/minitube.png
261 mac|win32|contains(DEFINES, APP_UBUNTU):include(local/local.pri)