diff options
author | Dominik Riebeling <Dominik.Riebeling@gmail.com> | 2021-12-25 10:58:46 +0100 |
---|---|---|
committer | Dominik Riebeling <Dominik.Riebeling@gmail.com> | 2021-12-25 17:47:14 +0100 |
commit | e9ef7f0dd36f9ad3cbf9538e28c45fc6db9b91e2 (patch) | |
tree | 109d75f391055f43ba206ad8461e3ca6aa3fa7c9 /utils | |
parent | c979717b806479e5c429c89dc2800367df28b372 (diff) | |
download | rockbox-e9ef7f0dd36f9ad3cbf9538e28c45fc6db9b91e2.tar.gz rockbox-e9ef7f0dd36f9ad3cbf9538e28c45fc6db9b91e2.zip |
rbutil: Split out rbutilqt parts into separate cmake list.
Change-Id: I84ada20765b98620e1f06bc7116bbdaaae296fe9
Diffstat (limited to 'utils')
-rw-r--r-- | utils/CMakeLists.txt | 393 | ||||
-rw-r--r-- | utils/rbutilqt/CMakeLists.txt | 406 |
2 files changed, 408 insertions, 391 deletions
diff --git a/utils/CMakeLists.txt b/utils/CMakeLists.txt index 84d085d792..cb0e683d75 100644 --- a/utils/CMakeLists.txt +++ b/utils/CMakeLists.txt | |||
@@ -76,345 +76,6 @@ if(APPLE) | |||
76 | find_library(FRAMEWORK_CORESERVICES CoreServices) | 76 | find_library(FRAMEWORK_CORESERVICES CoreServices) |
77 | endif() | 77 | endif() |
78 | 78 | ||
79 | set(RBUTIL_TS_FILES | ||
80 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_cs.ts | ||
81 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_de.ts | ||
82 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_fi.ts | ||
83 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_fr.ts | ||
84 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_gr.ts | ||
85 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_he.ts | ||
86 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_it.ts | ||
87 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_ja.ts | ||
88 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_nl.ts | ||
89 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_pl.ts | ||
90 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_pt_BR.ts | ||
91 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_pt.ts | ||
92 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_ru.ts | ||
93 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_tr.ts | ||
94 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_zh_CN.ts | ||
95 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutil_zh_TW.ts | ||
96 | ) | ||
97 | if(QT_VERSION_MAJOR EQUAL 5) | ||
98 | qt5_add_translation(RBUTIL_QM_FILES ${RBUTIL_TS_FILES}) | ||
99 | else() | ||
100 | qt6_add_translation(RBUTIL_QM_FILES ${RBUTIL_TS_FILES}) | ||
101 | endif() | ||
102 | |||
103 | # The qrc file searches input files based on its location, and the qm files are | ||
104 | # generated in the build dir. Copy the qrc file to the build dir, make it | ||
105 | # depend on the qm files. cmake will then get deps right. | ||
106 | add_custom_command( | ||
107 | OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/rbutilqt-lang.qrc | ||
108 | COMMAND ${CMAKE_COMMAND} -E copy_if_different | ||
109 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/lang/rbutilqt-lang.qrc | ||
110 | ${CMAKE_CURRENT_BINARY_DIR} | ||
111 | DEPENDS ${RBUTIL_QM_FILES} | ||
112 | ) | ||
113 | |||
114 | add_executable(RockboxUtility WIN32 MACOSX_BUNDLE | ||
115 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/main.cpp | ||
116 | |||
117 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/aboutbox.ui | ||
118 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/configure.cpp | ||
119 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/configurefrm.ui | ||
120 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/configure.h | ||
121 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/createvoicefrm.ui | ||
122 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/createvoicewindow.cpp | ||
123 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/createvoicewindow.h | ||
124 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/encttscfggui.cpp | ||
125 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/encttscfggui.h | ||
126 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/installtalkfrm.ui | ||
127 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/installtalkwindow.cpp | ||
128 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/installtalkwindow.h | ||
129 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/preview.cpp | ||
130 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/previewfrm.ui | ||
131 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/preview.h | ||
132 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/progressloggerfrm.ui | ||
133 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/progressloggergui.cpp | ||
134 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/progressloggergui.h | ||
135 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/rbutilqt.cpp | ||
136 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/rbutilqtfrm.ui | ||
137 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/rbutilqt.h | ||
138 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/sysinfo.cpp | ||
139 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/sysinfofrm.ui | ||
140 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/sysinfo.h | ||
141 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/systrace.cpp | ||
142 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/systracefrm.ui | ||
143 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/systrace.h | ||
144 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/themesinstallfrm.ui | ||
145 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/themesinstallwindow.cpp | ||
146 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/themesinstallwindow.h | ||
147 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/uninstallfrm.ui | ||
148 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/uninstallwindow.cpp | ||
149 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/uninstallwindow.h | ||
150 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/version.h | ||
151 | |||
152 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui/backupdialog.cpp | ||
153 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui/backupdialogfrm.ui | ||
154 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui/backupdialog.h | ||
155 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui/changelog.cpp | ||
156 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui/changelogfrm.ui | ||
157 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui/changelog.h | ||
158 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui/comboboxviewdelegate.cpp | ||
159 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui/comboboxviewdelegate.h | ||
160 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui/infowidget.cpp | ||
161 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui/infowidgetfrm.ui | ||
162 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui/infowidget.h | ||
163 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui/selectiveinstallwidget.cpp | ||
164 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui/selectiveinstallwidgetfrm.ui | ||
165 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui/selectiveinstallwidget.h | ||
166 | |||
167 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/rbutilqt.qrc | ||
168 | ${CMAKE_CURRENT_BINARY_DIR}/rbutilqt-lang.qrc | ||
169 | ) | ||
170 | |||
171 | if(WIN32) | ||
172 | target_sources(RockboxUtility PRIVATE | ||
173 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/rbutilqt-win.qrc | ||
174 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/rbutilqt.rc) | ||
175 | # needed on Windows, otherwise svg icons won't show. | ||
176 | target_link_libraries(RockboxUtility Qt${QT_VERSION_MAJOR}::QSvgIconPlugin) | ||
177 | endif() | ||
178 | if(APPLE) | ||
179 | # MacOS Application Bundle specifics. | ||
180 | target_sources(RockboxUtility PRIVATE | ||
181 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/icons/rbutilqt.icns) | ||
182 | set_target_properties(RockboxUtility | ||
183 | PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/Info.plist) | ||
184 | set_source_files_properties(${CMAKE_CURRENT_LIST_DIR}/rbutilqt/icons/rbutilqt.icns | ||
185 | PROPERTIES MACOSX_PACKAGE_LOCATION Resources) | ||
186 | endif() | ||
187 | |||
188 | target_link_libraries(RockboxUtility rbbase cutelogger | ||
189 | Qt${QT_VERSION_MAJOR}::Widgets Qt${QT_VERSION_MAJOR}::Multimedia) | ||
190 | |||
191 | target_include_directories(RockboxUtility PRIVATE | ||
192 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui | ||
193 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt) | ||
194 | target_compile_definitions(RockboxUtility PRIVATE | ||
195 | QT_DEPRECATED_WARNINGS | ||
196 | RBUTIL _LARGEFILE64_SOURCE UNICODE) | ||
197 | |||
198 | set_property(TARGET RockboxUtility PROPERTY AUTOMOC ON) | ||
199 | set_property(TARGET RockboxUtility PROPERTY AUTORCC ON) | ||
200 | set_property(TARGET RockboxUtility PROPERTY AUTOUIC ON) | ||
201 | |||
202 | include(${CMAKE_CURRENT_LIST_DIR}/cmake/deploy.cmake) | ||
203 | deploy_qt(RockboxUtility | ||
204 | ${QT_BINDIR} | ||
205 | ${CMAKE_CURRENT_LIST_DIR}/../docs/logo/rockbox-clef.svg | ||
206 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/RockboxUtility.desktop | ||
207 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/dmgbuild.cfg) | ||
208 | |||
209 | add_library(rbbase | ||
210 | ${CMAKE_CURRENT_LIST_DIR}/../tools/iriver.c | ||
211 | ${CMAKE_CURRENT_LIST_DIR}/../tools/iriver.h | ||
212 | ${CMAKE_CURRENT_LIST_DIR}/../tools/mkboot.c | ||
213 | ${CMAKE_CURRENT_LIST_DIR}/../tools/mkboot.h | ||
214 | ${CMAKE_CURRENT_LIST_DIR}/../tools/wavtrim.c | ||
215 | ${CMAKE_CURRENT_LIST_DIR}/../tools/wavtrim.h | ||
216 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/archiveutil.cpp | ||
217 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/archiveutil.h | ||
218 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/autodetection.cpp | ||
219 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/autodetection.h | ||
220 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallams.cpp | ||
221 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallams.h | ||
222 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallbase.cpp | ||
223 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallbase.h | ||
224 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallbspatch.cpp | ||
225 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallbspatch.h | ||
226 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallchinachip.cpp | ||
227 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallchinachip.h | ||
228 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallfile.cpp | ||
229 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallfile.h | ||
230 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallhelper.cpp | ||
231 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallhelper.h | ||
232 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallhex.cpp | ||
233 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallhex.h | ||
234 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallimx.cpp | ||
235 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallimx.h | ||
236 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallipod.cpp | ||
237 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallipod.h | ||
238 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallmi4.cpp | ||
239 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallmi4.h | ||
240 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallmpio.cpp | ||
241 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallmpio.h | ||
242 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstalls5l.cpp | ||
243 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstalls5l.h | ||
244 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallsansa.cpp | ||
245 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstallsansa.h | ||
246 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstalltcc.cpp | ||
247 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/bootloaderinstalltcc.h | ||
248 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/encoderbase.cpp | ||
249 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/encoderbase.h | ||
250 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/encoderexe.cpp | ||
251 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/encoderexe.h | ||
252 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/encoderlame.cpp | ||
253 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/encoderlame.h | ||
254 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/encoderrbspeex.cpp | ||
255 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/encoderrbspeex.h | ||
256 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/encttssettings.cpp | ||
257 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/encttssettings.h | ||
258 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/httpget.cpp | ||
259 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/httpget.h | ||
260 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/mspackutil.cpp | ||
261 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/mspackutil.h | ||
262 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/progressloggerinterface.h | ||
263 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/playerbuildinfo.cpp | ||
264 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/playerbuildinfo.h | ||
265 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/rbsettings.cpp | ||
266 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/rbsettings.h | ||
267 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/rockboxinfo.cpp | ||
268 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/rockboxinfo.h | ||
269 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/system.cpp | ||
270 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/system.h | ||
271 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/talkfile.cpp | ||
272 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/talkfile.h | ||
273 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/talkgenerator.cpp | ||
274 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/talkgenerator.h | ||
275 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttsbase.cpp | ||
276 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttsbase.h | ||
277 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttsespeak.h | ||
278 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttsespeakng.h | ||
279 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttsexes.cpp | ||
280 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttsexes.h | ||
281 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttsfestival.cpp | ||
282 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttsfestival.h | ||
283 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttsflite.h | ||
284 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttsmimic.h | ||
285 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttsmssp.h | ||
286 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttssapi.cpp | ||
287 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttssapi.h | ||
288 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttssapi4.h | ||
289 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttsswift.h | ||
290 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/uninstall.cpp | ||
291 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/uninstall.h | ||
292 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/utils.cpp | ||
293 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/utils.h | ||
294 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/voicefile.cpp | ||
295 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/voicefile.h | ||
296 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/zipinstaller.cpp | ||
297 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/zipinstaller.h | ||
298 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ziputil.cpp | ||
299 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ziputil.h | ||
300 | ) | ||
301 | |||
302 | if(APPLE) | ||
303 | target_sources(rbbase PRIVATE | ||
304 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttscarbon.cpp | ||
305 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttscarbon.h) | ||
306 | endif() | ||
307 | |||
308 | target_link_libraries(rbbase | ||
309 | cutelogger quazip mspack bspatch rbspeex voicefont | ||
310 | sansapatcher ipodpatcher chinachippatcher | ||
311 | mkamsboot mkimxboot mkmpioboot mktccboot mks5lboot | ||
312 | Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Network) | ||
313 | target_include_directories(rbbase PUBLIC ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base) | ||
314 | target_include_directories(rbbase PRIVATE ${CMAKE_CURRENT_LIST_DIR}/rbutilqt) | ||
315 | target_include_directories(rbbase PUBLIC ${CMAKE_CURRENT_LIST_DIR}/../tools) | ||
316 | target_compile_definitions(rbbase PUBLIC RBUTIL _LARGEFILE64_SOURCE UNICODE) | ||
317 | target_compile_definitions(rbbase PRIVATE QT_DEPRECATED_WARNINGS) | ||
318 | if(WIN32) | ||
319 | target_link_libraries(rbbase setupapi ws2_32 netapi32 crypt32 iphlpapi) | ||
320 | elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") | ||
321 | target_link_libraries(rbbase PkgConfig::libusb) | ||
322 | elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin") | ||
323 | target_link_libraries(rbbase ${FRAMEWORK_IOKIT} ${FRAMEWORK_COREFOUNDATION} | ||
324 | ${FRAMEWORK_CARBON} ${FRAMEWORK_SYSTEMCONFIGURATION} ${FRAMEWORK_CORESERVICES}) | ||
325 | endif() | ||
326 | set_property(TARGET rbbase PROPERTY AUTOMOC ON) | ||
327 | |||
328 | # TODO: Upstream has cmake support, use that instead. | ||
329 | add_library(cutelogger) | ||
330 | # need to put those separate, otherwise cmake will not add them correctly -- seems to be related to moc'ing. | ||
331 | target_sources(cutelogger PUBLIC | ||
332 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/include/AbstractAppender.h | ||
333 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/include/AbstractStringAppender.h | ||
334 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/include/ConsoleAppender.h | ||
335 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/include/CuteLogger_global.h | ||
336 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/include/FileAppender.h | ||
337 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/include/Logger.h | ||
338 | #${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/include/OutputDebugAppender.h | ||
339 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/src/AbstractAppender.cpp | ||
340 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/src/AbstractStringAppender.cpp | ||
341 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/src/ConsoleAppender.cpp | ||
342 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/src/FileAppender.cpp | ||
343 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/src/Logger.cpp | ||
344 | #${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/src/OutputDebugAppender.cpp | ||
345 | ) | ||
346 | target_include_directories(cutelogger PUBLIC ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/include) | ||
347 | target_link_libraries(cutelogger PUBLIC Qt${QT_VERSION_MAJOR}::Core) | ||
348 | target_compile_definitions(cutelogger PUBLIC CUTELOGGER_STATIC) | ||
349 | set_property(TARGET cutelogger PROPERTY AUTOMOC ON) | ||
350 | |||
351 | # TODO: Upstream has cmake support, use that instead. | ||
352 | add_library(quazip | ||
353 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/ioapi.h | ||
354 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/minizip_crypt.h | ||
355 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/qioapi.cpp | ||
356 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/quazip.cpp | ||
357 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/quazipfile.cpp | ||
358 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/quazipfile.h | ||
359 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/quazipfileinfo.cpp | ||
360 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/quazipfileinfo.h | ||
361 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/quazip_global.h | ||
362 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/quazip.h | ||
363 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/quazipnewinfo.cpp | ||
364 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/quazipnewinfo.h | ||
365 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/unzip.c | ||
366 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/unzip.h | ||
367 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/zip.c | ||
368 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip/zip.h | ||
369 | ) | ||
370 | target_include_directories(quazip PUBLIC ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip) | ||
371 | target_link_libraries(quazip z Qt${QT_VERSION_MAJOR}::Core) | ||
372 | if(QT_VERSION_MAJOR EQUAL 6) | ||
373 | target_link_libraries(quazip Qt${QT_VERSION_MAJOR}::Core5Compat) | ||
374 | endif() | ||
375 | target_compile_definitions(quazip PUBLIC QUAZIP_STATIC) | ||
376 | set_property(TARGET quazip PROPERTY AUTOMOC ON) | ||
377 | |||
378 | add_library(mspack | ||
379 | rbutilqt/mspack/cabc.c | ||
380 | rbutilqt/mspack/cabd.c | ||
381 | rbutilqt/mspack/cab.h | ||
382 | #rbutilqt/mspack/chmc.c | ||
383 | #rbutilqt/mspack/chmd.c | ||
384 | #rbutilqt/mspack/chm.h | ||
385 | rbutilqt/mspack/des.h | ||
386 | #rbutilqt/mspack/hlpc.c | ||
387 | #rbutilqt/mspack/hlpd.c | ||
388 | #rbutilqt/mspack/hlp.h | ||
389 | #rbutilqt/mspack/kwajc.c | ||
390 | #rbutilqt/mspack/kwajd.c | ||
391 | #rbutilqt/mspack/kwaj.h | ||
392 | #rbutilqt/mspack/litc.c | ||
393 | #rbutilqt/mspack/litd.c | ||
394 | #rbutilqt/mspack/lit.h | ||
395 | #rbutilqt/mspack/lzssd.c | ||
396 | #rbutilqt/mspack/lzss.h | ||
397 | rbutilqt/mspack/lzxc.c | ||
398 | rbutilqt/mspack/lzxd.c | ||
399 | rbutilqt/mspack/lzx.h | ||
400 | rbutilqt/mspack/mspack.h | ||
401 | rbutilqt/mspack/mszipc.c | ||
402 | rbutilqt/mspack/mszipd.c | ||
403 | rbutilqt/mspack/mszip.h | ||
404 | rbutilqt/mspack/qtmd.c | ||
405 | rbutilqt/mspack/qtm.h | ||
406 | rbutilqt/mspack/readbits.h | ||
407 | rbutilqt/mspack/readhuff.h | ||
408 | rbutilqt/mspack/sha.h | ||
409 | rbutilqt/mspack/system-mspack.c | ||
410 | rbutilqt/mspack/system-mspack.h | ||
411 | #rbutilqt/mspack/szddc.c | ||
412 | #rbutilqt/mspack/szddd.c | ||
413 | #rbutilqt/mspack/szdd.h | ||
414 | ) | ||
415 | |||
416 | target_include_directories(mspack PUBLIC ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/mspack) | ||
417 | |||
418 | 79 | ||
419 | add_library(ipodpatcher | 80 | add_library(ipodpatcher |
420 | ipodpatcher/arc4.h | 81 | ipodpatcher/arc4.h |
@@ -672,55 +333,5 @@ add_library(rbtomcrypt | |||
672 | ) | 333 | ) |
673 | target_include_directories(rbtomcrypt PUBLIC ${CMAKE_CURRENT_LIST_DIR}/tomcrypt/src/headers) | 334 | target_include_directories(rbtomcrypt PUBLIC ${CMAKE_CURRENT_LIST_DIR}/tomcrypt/src/headers) |
674 | 335 | ||
675 | 336 | include(${CMAKE_CURRENT_LIST_DIR}/cmake/deploy.cmake) | |
676 | # Unit tests | 337 | add_subdirectory(rbutilqt) |
677 | add_executable(test_compareversion | ||
678 | rbutilqt/base/utils.cpp | ||
679 | rbutilqt/base/utils.h | ||
680 | rbutilqt/test/stubs/stubs-compareversion.cpp | ||
681 | rbutilqt/test/test-compareversion.cpp) | ||
682 | |||
683 | target_link_libraries(test_compareversion Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Test) | ||
684 | target_compile_definitions(test_compareversion PRIVATE UNICODE) | ||
685 | if(APPLE) | ||
686 | target_link_libraries(test_compareversion ${FRAMEWORK_IOKIT} ${FRAMEWORK_COREFOUNDATION} | ||
687 | ${FRAMEWORK_CARBON} ${FRAMEWORK_SYSTEMCONFIGURATION} ${FRAMEWORK_CORESERVICES}) | ||
688 | endif() | ||
689 | target_include_directories(test_compareversion PRIVATE rbutilqt/base rbutilqt/test/stubs) | ||
690 | add_test(test_compareversion test_compareversion) | ||
691 | set_property(TARGET test_compareversion PROPERTY AUTOMOC ON) | ||
692 | |||
693 | add_executable(test_httpget | ||
694 | rbutilqt/test/test-httpget.cpp | ||
695 | rbutilqt/base/httpget.cpp | ||
696 | rbutilqt/base/httpget.h) | ||
697 | target_link_libraries(test_httpget Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Test Qt${QT_VERSION_MAJOR}::Network) | ||
698 | target_include_directories(test_httpget PRIVATE rbutilqt/base rbutilqt/test/stubs) | ||
699 | add_test(test_httpget test_httpget) | ||
700 | set_property(TARGET test_httpget PROPERTY AUTOMOC ON) | ||
701 | |||
702 | add_executable(test_playerbuildinfo | ||
703 | rbutilqt/base/playerbuildinfo.cpp | ||
704 | rbutilqt/base/playerbuildinfo.h | ||
705 | rbutilqt/base/rbsettings.h | ||
706 | rbutilqt/base/rockboxinfo.h | ||
707 | rbutilqt/rbutilqt.qrc # needed for rbutil.ini resource. | ||
708 | rbutilqt/test/stubs/stubs-playerbuildinfo.cpp | ||
709 | rbutilqt/test/test-playerbuildinfo.cpp) | ||
710 | target_link_libraries(test_playerbuildinfo Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Test) | ||
711 | target_include_directories(test_playerbuildinfo PRIVATE rbutilqt/base rbutilqt/test/stubs) | ||
712 | add_test(test_playerbuildinfo test_playerbuildinfo) | ||
713 | set_property(TARGET test_playerbuildinfo PROPERTY AUTOMOC ON) | ||
714 | set_property(TARGET test_playerbuildinfo PROPERTY AUTORCC ON) | ||
715 | |||
716 | add_executable(test_rockboxinfo | ||
717 | rbutilqt/base/rockboxinfo.cpp | ||
718 | rbutilqt/base/rockboxinfo.h | ||
719 | rbutilqt/test/test-rockboxinfo.cpp) | ||
720 | |||
721 | target_link_libraries(test_rockboxinfo Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Test) | ||
722 | target_include_directories(test_rockboxinfo PRIVATE rbutilqt/base rbutilqt/test/stubs) | ||
723 | target_compile_definitions(test_rockboxinfo PRIVATE UNICODE) | ||
724 | add_test(test_rockboxinfo test_rockboxinfo) | ||
725 | set_property(TARGET test_rockboxinfo PROPERTY AUTOMOC ON) | ||
726 | |||
diff --git a/utils/rbutilqt/CMakeLists.txt b/utils/rbutilqt/CMakeLists.txt new file mode 100644 index 0000000000..138d0903cf --- /dev/null +++ b/utils/rbutilqt/CMakeLists.txt | |||
@@ -0,0 +1,406 @@ | |||
1 | # | ||
2 | # __________ __ ___. | ||
3 | # Open \______ \ ____ ____ | | _\_ |__ _______ ___ | ||
4 | # Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / | ||
5 | # Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < | ||
6 | # Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ | ||
7 | # \/ \/ \/ \/ \/ | ||
8 | # | ||
9 | # All files in this archive are subject to the GNU General Public License. | ||
10 | # See the file COPYING in the source tree root for full license agreement. | ||
11 | # | ||
12 | # This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY | ||
13 | # KIND, either express or implied. | ||
14 | # | ||
15 | |||
16 | set(RBUTIL_TS_FILES | ||
17 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_cs.ts | ||
18 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_de.ts | ||
19 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_fi.ts | ||
20 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_fr.ts | ||
21 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_gr.ts | ||
22 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_he.ts | ||
23 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_it.ts | ||
24 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_ja.ts | ||
25 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_nl.ts | ||
26 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_pl.ts | ||
27 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_pt_BR.ts | ||
28 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_pt.ts | ||
29 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_ru.ts | ||
30 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_tr.ts | ||
31 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_zh_CN.ts | ||
32 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutil_zh_TW.ts | ||
33 | ) | ||
34 | if(QT_VERSION_MAJOR EQUAL 5) | ||
35 | qt5_add_translation(RBUTIL_QM_FILES ${RBUTIL_TS_FILES}) | ||
36 | else() | ||
37 | qt6_add_translation(RBUTIL_QM_FILES ${RBUTIL_TS_FILES}) | ||
38 | endif() | ||
39 | |||
40 | # The qrc file searches input files based on its location, and the qm files are | ||
41 | # generated in the build dir. Copy the qrc file to the build dir, make it | ||
42 | # depend on the qm files. cmake will then get deps right. | ||
43 | add_custom_command( | ||
44 | OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/rbutilqt-lang.qrc | ||
45 | COMMAND ${CMAKE_COMMAND} -E copy_if_different | ||
46 | ${CMAKE_CURRENT_LIST_DIR}/lang/rbutilqt-lang.qrc | ||
47 | ${CMAKE_CURRENT_BINARY_DIR} | ||
48 | DEPENDS ${RBUTIL_QM_FILES} | ||
49 | ) | ||
50 | |||
51 | add_executable(RockboxUtility WIN32 MACOSX_BUNDLE | ||
52 | ${CMAKE_CURRENT_LIST_DIR}/main.cpp | ||
53 | |||
54 | ${CMAKE_CURRENT_LIST_DIR}/aboutbox.ui | ||
55 | ${CMAKE_CURRENT_LIST_DIR}/configure.cpp | ||
56 | ${CMAKE_CURRENT_LIST_DIR}/configurefrm.ui | ||
57 | ${CMAKE_CURRENT_LIST_DIR}/configure.h | ||
58 | ${CMAKE_CURRENT_LIST_DIR}/createvoicefrm.ui | ||
59 | ${CMAKE_CURRENT_LIST_DIR}/createvoicewindow.cpp | ||
60 | ${CMAKE_CURRENT_LIST_DIR}/createvoicewindow.h | ||
61 | ${CMAKE_CURRENT_LIST_DIR}/encttscfggui.cpp | ||
62 | ${CMAKE_CURRENT_LIST_DIR}/encttscfggui.h | ||
63 | ${CMAKE_CURRENT_LIST_DIR}/installtalkfrm.ui | ||
64 | ${CMAKE_CURRENT_LIST_DIR}/installtalkwindow.cpp | ||
65 | ${CMAKE_CURRENT_LIST_DIR}/installtalkwindow.h | ||
66 | ${CMAKE_CURRENT_LIST_DIR}/preview.cpp | ||
67 | ${CMAKE_CURRENT_LIST_DIR}/previewfrm.ui | ||
68 | ${CMAKE_CURRENT_LIST_DIR}/preview.h | ||
69 | ${CMAKE_CURRENT_LIST_DIR}/progressloggerfrm.ui | ||
70 | ${CMAKE_CURRENT_LIST_DIR}/progressloggergui.cpp | ||
71 | ${CMAKE_CURRENT_LIST_DIR}/progressloggergui.h | ||
72 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt.cpp | ||
73 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqtfrm.ui | ||
74 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt.h | ||
75 | ${CMAKE_CURRENT_LIST_DIR}/sysinfo.cpp | ||
76 | ${CMAKE_CURRENT_LIST_DIR}/sysinfofrm.ui | ||
77 | ${CMAKE_CURRENT_LIST_DIR}/sysinfo.h | ||
78 | ${CMAKE_CURRENT_LIST_DIR}/systrace.cpp | ||
79 | ${CMAKE_CURRENT_LIST_DIR}/systracefrm.ui | ||
80 | ${CMAKE_CURRENT_LIST_DIR}/systrace.h | ||
81 | ${CMAKE_CURRENT_LIST_DIR}/themesinstallfrm.ui | ||
82 | ${CMAKE_CURRENT_LIST_DIR}/themesinstallwindow.cpp | ||
83 | ${CMAKE_CURRENT_LIST_DIR}/themesinstallwindow.h | ||
84 | ${CMAKE_CURRENT_LIST_DIR}/uninstallfrm.ui | ||
85 | ${CMAKE_CURRENT_LIST_DIR}/uninstallwindow.cpp | ||
86 | ${CMAKE_CURRENT_LIST_DIR}/uninstallwindow.h | ||
87 | ${CMAKE_CURRENT_LIST_DIR}/version.h | ||
88 | |||
89 | ${CMAKE_CURRENT_LIST_DIR}/gui/backupdialog.cpp | ||
90 | ${CMAKE_CURRENT_LIST_DIR}/gui/backupdialogfrm.ui | ||
91 | ${CMAKE_CURRENT_LIST_DIR}/gui/backupdialog.h | ||
92 | ${CMAKE_CURRENT_LIST_DIR}/gui/changelog.cpp | ||
93 | ${CMAKE_CURRENT_LIST_DIR}/gui/changelogfrm.ui | ||
94 | ${CMAKE_CURRENT_LIST_DIR}/gui/changelog.h | ||
95 | ${CMAKE_CURRENT_LIST_DIR}/gui/comboboxviewdelegate.cpp | ||
96 | ${CMAKE_CURRENT_LIST_DIR}/gui/comboboxviewdelegate.h | ||
97 | ${CMAKE_CURRENT_LIST_DIR}/gui/infowidget.cpp | ||
98 | ${CMAKE_CURRENT_LIST_DIR}/gui/infowidgetfrm.ui | ||
99 | ${CMAKE_CURRENT_LIST_DIR}/gui/infowidget.h | ||
100 | ${CMAKE_CURRENT_LIST_DIR}/gui/selectiveinstallwidget.cpp | ||
101 | ${CMAKE_CURRENT_LIST_DIR}/gui/selectiveinstallwidgetfrm.ui | ||
102 | ${CMAKE_CURRENT_LIST_DIR}/gui/selectiveinstallwidget.h | ||
103 | |||
104 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt.qrc | ||
105 | ${CMAKE_CURRENT_BINARY_DIR}/rbutilqt-lang.qrc | ||
106 | ) | ||
107 | |||
108 | if(WIN32) | ||
109 | target_sources(RockboxUtility PRIVATE | ||
110 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt-win.qrc | ||
111 | ${CMAKE_CURRENT_LIST_DIR}/rbutilqt.rc) | ||
112 | # needed on Windows, otherwise svg icons won't show. | ||
113 | target_link_libraries(RockboxUtility Qt${QT_VERSION_MAJOR}::QSvgIconPlugin) | ||
114 | endif() | ||
115 | if(APPLE) | ||
116 | # MacOS Application Bundle specifics. | ||
117 | target_sources(RockboxUtility PRIVATE | ||
118 | ${CMAKE_CURRENT_LIST_DIR}/icons/rbutilqt.icns) | ||
119 | set_target_properties(RockboxUtility | ||
120 | PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_LIST_DIR}/Info.plist) | ||
121 | set_source_files_properties(${CMAKE_CURRENT_LIST_DIR}/icons/rbutilqt.icns | ||
122 | PROPERTIES MACOSX_PACKAGE_LOCATION Resources) | ||
123 | endif() | ||
124 | |||
125 | target_link_libraries(RockboxUtility rbbase cutelogger | ||
126 | Qt${QT_VERSION_MAJOR}::Widgets Qt${QT_VERSION_MAJOR}::Multimedia) | ||
127 | |||
128 | target_include_directories(RockboxUtility PRIVATE | ||
129 | ${CMAKE_CURRENT_LIST_DIR}/gui | ||
130 | ${CMAKE_CURRENT_LIST_DIR}) | ||
131 | target_compile_definitions(RockboxUtility PRIVATE | ||
132 | QT_DEPRECATED_WARNINGS | ||
133 | RBUTIL _LARGEFILE64_SOURCE UNICODE) | ||
134 | |||
135 | set_property(TARGET RockboxUtility PROPERTY AUTOMOC ON) | ||
136 | set_property(TARGET RockboxUtility PROPERTY AUTORCC ON) | ||
137 | set_property(TARGET RockboxUtility PROPERTY AUTOUIC ON) | ||
138 | |||
139 | deploy_qt(RockboxUtility | ||
140 | ${QT_BINDIR} | ||
141 | ${CMAKE_CURRENT_LIST_DIR}/../../docs/logo/rockbox-clef.svg | ||
142 | ${CMAKE_CURRENT_LIST_DIR}/RockboxUtility.desktop | ||
143 | ${CMAKE_CURRENT_LIST_DIR}/dmgbuild.cfg) | ||
144 | |||
145 | add_library(rbbase | ||
146 | ${CMAKE_CURRENT_LIST_DIR}/../../tools/iriver.c | ||
147 | ${CMAKE_CURRENT_LIST_DIR}/../../tools/iriver.h | ||
148 | ${CMAKE_CURRENT_LIST_DIR}/../../tools/mkboot.c | ||
149 | ${CMAKE_CURRENT_LIST_DIR}/../../tools/mkboot.h | ||
150 | ${CMAKE_CURRENT_LIST_DIR}/../../tools/wavtrim.c | ||
151 | ${CMAKE_CURRENT_LIST_DIR}/../../tools/wavtrim.h | ||
152 | ${CMAKE_CURRENT_LIST_DIR}/base/archiveutil.cpp | ||
153 | ${CMAKE_CURRENT_LIST_DIR}/base/archiveutil.h | ||
154 | ${CMAKE_CURRENT_LIST_DIR}/base/autodetection.cpp | ||
155 | ${CMAKE_CURRENT_LIST_DIR}/base/autodetection.h | ||
156 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallams.cpp | ||
157 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallams.h | ||
158 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallbase.cpp | ||
159 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallbase.h | ||
160 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallbspatch.cpp | ||
161 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallbspatch.h | ||
162 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallchinachip.cpp | ||
163 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallchinachip.h | ||
164 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallfile.cpp | ||
165 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallfile.h | ||
166 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallhelper.cpp | ||
167 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallhelper.h | ||
168 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallhex.cpp | ||
169 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallhex.h | ||
170 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallimx.cpp | ||
171 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallimx.h | ||
172 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallipod.cpp | ||
173 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallipod.h | ||
174 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallmi4.cpp | ||
175 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallmi4.h | ||
176 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallmpio.cpp | ||
177 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallmpio.h | ||
178 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstalls5l.cpp | ||
179 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstalls5l.h | ||
180 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallsansa.cpp | ||
181 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstallsansa.h | ||
182 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstalltcc.cpp | ||
183 | ${CMAKE_CURRENT_LIST_DIR}/base/bootloaderinstalltcc.h | ||
184 | ${CMAKE_CURRENT_LIST_DIR}/base/encoderbase.cpp | ||
185 | ${CMAKE_CURRENT_LIST_DIR}/base/encoderbase.h | ||
186 | ${CMAKE_CURRENT_LIST_DIR}/base/encoderexe.cpp | ||
187 | ${CMAKE_CURRENT_LIST_DIR}/base/encoderexe.h | ||
188 | ${CMAKE_CURRENT_LIST_DIR}/base/encoderlame.cpp | ||
189 | ${CMAKE_CURRENT_LIST_DIR}/base/encoderlame.h | ||
190 | ${CMAKE_CURRENT_LIST_DIR}/base/encoderrbspeex.cpp | ||
191 | ${CMAKE_CURRENT_LIST_DIR}/base/encoderrbspeex.h | ||
192 | ${CMAKE_CURRENT_LIST_DIR}/base/encttssettings.cpp | ||
193 | ${CMAKE_CURRENT_LIST_DIR}/base/encttssettings.h | ||
194 | ${CMAKE_CURRENT_LIST_DIR}/base/httpget.cpp | ||
195 | ${CMAKE_CURRENT_LIST_DIR}/base/httpget.h | ||
196 | ${CMAKE_CURRENT_LIST_DIR}/base/mspackutil.cpp | ||
197 | ${CMAKE_CURRENT_LIST_DIR}/base/mspackutil.h | ||
198 | ${CMAKE_CURRENT_LIST_DIR}/base/progressloggerinterface.h | ||
199 | ${CMAKE_CURRENT_LIST_DIR}/base/playerbuildinfo.cpp | ||
200 | ${CMAKE_CURRENT_LIST_DIR}/base/playerbuildinfo.h | ||
201 | ${CMAKE_CURRENT_LIST_DIR}/base/rbsettings.cpp | ||
202 | ${CMAKE_CURRENT_LIST_DIR}/base/rbsettings.h | ||
203 | ${CMAKE_CURRENT_LIST_DIR}/base/rockboxinfo.cpp | ||
204 | ${CMAKE_CURRENT_LIST_DIR}/base/rockboxinfo.h | ||
205 | ${CMAKE_CURRENT_LIST_DIR}/base/system.cpp | ||
206 | ${CMAKE_CURRENT_LIST_DIR}/base/system.h | ||
207 | ${CMAKE_CURRENT_LIST_DIR}/base/talkfile.cpp | ||
208 | ${CMAKE_CURRENT_LIST_DIR}/base/talkfile.h | ||
209 | ${CMAKE_CURRENT_LIST_DIR}/base/talkgenerator.cpp | ||
210 | ${CMAKE_CURRENT_LIST_DIR}/base/talkgenerator.h | ||
211 | ${CMAKE_CURRENT_LIST_DIR}/base/ttsbase.cpp | ||
212 | ${CMAKE_CURRENT_LIST_DIR}/base/ttsbase.h | ||
213 | ${CMAKE_CURRENT_LIST_DIR}/base/ttsespeak.h | ||
214 | ${CMAKE_CURRENT_LIST_DIR}/base/ttsespeakng.h | ||
215 | ${CMAKE_CURRENT_LIST_DIR}/base/ttsexes.cpp | ||
216 | ${CMAKE_CURRENT_LIST_DIR}/base/ttsexes.h | ||
217 | ${CMAKE_CURRENT_LIST_DIR}/base/ttsfestival.cpp | ||
218 | ${CMAKE_CURRENT_LIST_DIR}/base/ttsfestival.h | ||
219 | ${CMAKE_CURRENT_LIST_DIR}/base/ttsflite.h | ||
220 | ${CMAKE_CURRENT_LIST_DIR}/base/ttsmimic.h | ||
221 | ${CMAKE_CURRENT_LIST_DIR}/base/ttsmssp.h | ||
222 | ${CMAKE_CURRENT_LIST_DIR}/base/ttssapi.cpp | ||
223 | ${CMAKE_CURRENT_LIST_DIR}/base/ttssapi.h | ||
224 | ${CMAKE_CURRENT_LIST_DIR}/base/ttssapi4.h | ||
225 | ${CMAKE_CURRENT_LIST_DIR}/base/ttsswift.h | ||
226 | ${CMAKE_CURRENT_LIST_DIR}/base/uninstall.cpp | ||
227 | ${CMAKE_CURRENT_LIST_DIR}/base/uninstall.h | ||
228 | ${CMAKE_CURRENT_LIST_DIR}/base/utils.cpp | ||
229 | ${CMAKE_CURRENT_LIST_DIR}/base/utils.h | ||
230 | ${CMAKE_CURRENT_LIST_DIR}/base/voicefile.cpp | ||
231 | ${CMAKE_CURRENT_LIST_DIR}/base/voicefile.h | ||
232 | ${CMAKE_CURRENT_LIST_DIR}/base/zipinstaller.cpp | ||
233 | ${CMAKE_CURRENT_LIST_DIR}/base/zipinstaller.h | ||
234 | ${CMAKE_CURRENT_LIST_DIR}/base/ziputil.cpp | ||
235 | ${CMAKE_CURRENT_LIST_DIR}/base/ziputil.h | ||
236 | ) | ||
237 | |||
238 | if(APPLE) | ||
239 | target_sources(rbbase PRIVATE | ||
240 | ${CMAKE_CURRENT_LIST_DIR}/base/ttscarbon.cpp | ||
241 | ${CMAKE_CURRENT_LIST_DIR}/base/ttscarbon.h) | ||
242 | endif() | ||
243 | |||
244 | target_link_libraries(rbbase | ||
245 | cutelogger quazip mspack bspatch rbspeex voicefont | ||
246 | sansapatcher ipodpatcher chinachippatcher | ||
247 | mkamsboot mkimxboot mkmpioboot mktccboot mks5lboot | ||
248 | Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Network) | ||
249 | target_include_directories(rbbase PUBLIC ${CMAKE_CURRENT_LIST_DIR}/base) | ||
250 | target_include_directories(rbbase PRIVATE ${CMAKE_CURRENT_LIST_DIR}) | ||
251 | target_include_directories(rbbase PUBLIC ${CMAKE_CURRENT_LIST_DIR}/../../tools) | ||
252 | target_compile_definitions(rbbase PUBLIC RBUTIL _LARGEFILE64_SOURCE UNICODE) | ||
253 | target_compile_definitions(rbbase PRIVATE QT_DEPRECATED_WARNINGS) | ||
254 | if(WIN32) | ||
255 | target_link_libraries(rbbase setupapi ws2_32 netapi32 crypt32 iphlpapi) | ||
256 | elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") | ||
257 | target_link_libraries(rbbase PkgConfig::libusb) | ||
258 | elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin") | ||
259 | target_link_libraries(rbbase ${FRAMEWORK_IOKIT} ${FRAMEWORK_COREFOUNDATION} | ||
260 | ${FRAMEWORK_CARBON} ${FRAMEWORK_SYSTEMCONFIGURATION} ${FRAMEWORK_CORESERVICES}) | ||
261 | endif() | ||
262 | set_property(TARGET rbbase PROPERTY AUTOMOC ON) | ||
263 | |||
264 | # TODO: Upstream has cmake support, use that instead. | ||
265 | add_library(cutelogger) | ||
266 | # need to put those separate, otherwise cmake will not add them correctly -- seems to be related to moc'ing. | ||
267 | target_sources(cutelogger PUBLIC | ||
268 | ${CMAKE_CURRENT_LIST_DIR}/logger/include/AbstractAppender.h | ||
269 | ${CMAKE_CURRENT_LIST_DIR}/logger/include/AbstractStringAppender.h | ||
270 | ${CMAKE_CURRENT_LIST_DIR}/logger/include/ConsoleAppender.h | ||
271 | ${CMAKE_CURRENT_LIST_DIR}/logger/include/CuteLogger_global.h | ||
272 | ${CMAKE_CURRENT_LIST_DIR}/logger/include/FileAppender.h | ||
273 | ${CMAKE_CURRENT_LIST_DIR}/logger/include/Logger.h | ||
274 | #${CMAKE_CURRENT_LIST_DIR}/logger/include/OutputDebugAppender.h | ||
275 | ${CMAKE_CURRENT_LIST_DIR}/logger/src/AbstractAppender.cpp | ||
276 | ${CMAKE_CURRENT_LIST_DIR}/logger/src/AbstractStringAppender.cpp | ||
277 | ${CMAKE_CURRENT_LIST_DIR}/logger/src/ConsoleAppender.cpp | ||
278 | ${CMAKE_CURRENT_LIST_DIR}/logger/src/FileAppender.cpp | ||
279 | ${CMAKE_CURRENT_LIST_DIR}/logger/src/Logger.cpp | ||
280 | #${CMAKE_CURRENT_LIST_DIR}/logger/src/OutputDebugAppender.cpp | ||
281 | ) | ||
282 | target_include_directories(cutelogger PUBLIC ${CMAKE_CURRENT_LIST_DIR}/logger/include) | ||
283 | target_link_libraries(cutelogger PUBLIC Qt${QT_VERSION_MAJOR}::Core) | ||
284 | target_compile_definitions(cutelogger PUBLIC CUTELOGGER_STATIC) | ||
285 | set_property(TARGET cutelogger PROPERTY AUTOMOC ON) | ||
286 | |||
287 | # TODO: Upstream has cmake support, use that instead. | ||
288 | add_library(quazip | ||
289 | ${CMAKE_CURRENT_LIST_DIR}/quazip/ioapi.h | ||
290 | ${CMAKE_CURRENT_LIST_DIR}/quazip/minizip_crypt.h | ||
291 | ${CMAKE_CURRENT_LIST_DIR}/quazip/qioapi.cpp | ||
292 | ${CMAKE_CURRENT_LIST_DIR}/quazip/quazip.cpp | ||
293 | ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipfile.cpp | ||
294 | ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipfile.h | ||
295 | ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipfileinfo.cpp | ||
296 | ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipfileinfo.h | ||
297 | ${CMAKE_CURRENT_LIST_DIR}/quazip/quazip_global.h | ||
298 | ${CMAKE_CURRENT_LIST_DIR}/quazip/quazip.h | ||
299 | ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipnewinfo.cpp | ||
300 | ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipnewinfo.h | ||
301 | ${CMAKE_CURRENT_LIST_DIR}/quazip/unzip.c | ||
302 | ${CMAKE_CURRENT_LIST_DIR}/quazip/unzip.h | ||
303 | ${CMAKE_CURRENT_LIST_DIR}/quazip/zip.c | ||
304 | ${CMAKE_CURRENT_LIST_DIR}/quazip/zip.h | ||
305 | ) | ||
306 | target_include_directories(quazip PUBLIC ${CMAKE_CURRENT_LIST_DIR}/quazip) | ||
307 | target_link_libraries(quazip z Qt${QT_VERSION_MAJOR}::Core) | ||
308 | if(QT_VERSION_MAJOR EQUAL 6) | ||
309 | target_link_libraries(quazip Qt${QT_VERSION_MAJOR}::Core5Compat) | ||
310 | endif() | ||
311 | target_compile_definitions(quazip PUBLIC QUAZIP_STATIC) | ||
312 | set_property(TARGET quazip PROPERTY AUTOMOC ON) | ||
313 | |||
314 | add_library(mspack | ||
315 | mspack/cabc.c | ||
316 | mspack/cabd.c | ||
317 | mspack/cab.h | ||
318 | #mspack/chmc.c | ||
319 | #mspack/chmd.c | ||
320 | #mspack/chm.h | ||
321 | mspack/des.h | ||
322 | #mspack/hlpc.c | ||
323 | #mspack/hlpd.c | ||
324 | #mspack/hlp.h | ||
325 | #mspack/kwajc.c | ||
326 | #mspack/kwajd.c | ||
327 | #mspack/kwaj.h | ||
328 | #mspack/litc.c | ||
329 | #mspack/litd.c | ||
330 | #mspack/lit.h | ||
331 | #mspack/lzssd.c | ||
332 | #mspack/lzss.h | ||
333 | mspack/lzxc.c | ||
334 | mspack/lzxd.c | ||
335 | mspack/lzx.h | ||
336 | mspack/mspack.h | ||
337 | mspack/mszipc.c | ||
338 | mspack/mszipd.c | ||
339 | mspack/mszip.h | ||
340 | mspack/qtmd.c | ||
341 | mspack/qtm.h | ||
342 | mspack/readbits.h | ||
343 | mspack/readhuff.h | ||
344 | mspack/sha.h | ||
345 | mspack/system-mspack.c | ||
346 | mspack/system-mspack.h | ||
347 | #mspack/szddc.c | ||
348 | #mspack/szddd.c | ||
349 | #mspack/szdd.h | ||
350 | ) | ||
351 | |||
352 | target_include_directories(mspack PUBLIC ${CMAKE_CURRENT_LIST_DIR}/mspack) | ||
353 | |||
354 | |||
355 | # Unit tests | ||
356 | add_executable(test_compareversion | ||
357 | base/utils.cpp | ||
358 | base/utils.h | ||
359 | test/stubs/stubs-compareversion.cpp | ||
360 | test/test-compareversion.cpp) | ||
361 | |||
362 | target_link_libraries(test_compareversion Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Test) | ||
363 | target_compile_definitions(test_compareversion PRIVATE UNICODE) | ||
364 | if(APPLE) | ||
365 | target_link_libraries(test_compareversion ${FRAMEWORK_IOKIT} ${FRAMEWORK_COREFOUNDATION} | ||
366 | ${FRAMEWORK_CARBON} ${FRAMEWORK_SYSTEMCONFIGURATION} ${FRAMEWORK_CORESERVICES}) | ||
367 | endif() | ||
368 | target_include_directories(test_compareversion PRIVATE base test/stubs) | ||
369 | add_test(test_compareversion test_compareversion) | ||
370 | set_property(TARGET test_compareversion PROPERTY AUTOMOC ON) | ||
371 | |||
372 | add_executable(test_httpget | ||
373 | test/test-httpget.cpp | ||
374 | base/httpget.cpp | ||
375 | base/httpget.h) | ||
376 | target_link_libraries(test_httpget Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Test Qt${QT_VERSION_MAJOR}::Network) | ||
377 | target_include_directories(test_httpget PRIVATE base test/stubs) | ||
378 | add_test(test_httpget test_httpget) | ||
379 | set_property(TARGET test_httpget PROPERTY AUTOMOC ON) | ||
380 | |||
381 | add_executable(test_playerbuildinfo | ||
382 | base/playerbuildinfo.cpp | ||
383 | base/playerbuildinfo.h | ||
384 | base/rbsettings.h | ||
385 | base/rockboxinfo.h | ||
386 | rbutilqt.qrc # needed for rbutil.ini resource. | ||
387 | test/stubs/stubs-playerbuildinfo.cpp | ||
388 | test/test-playerbuildinfo.cpp) | ||
389 | target_link_libraries(test_playerbuildinfo Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Test) | ||
390 | target_include_directories(test_playerbuildinfo PRIVATE base test/stubs) | ||
391 | add_test(test_playerbuildinfo test_playerbuildinfo) | ||
392 | set_property(TARGET test_playerbuildinfo PROPERTY AUTOMOC ON) | ||
393 | set_property(TARGET test_playerbuildinfo PROPERTY AUTORCC ON) | ||
394 | |||
395 | add_executable(test_rockboxinfo | ||
396 | base/rockboxinfo.cpp | ||
397 | base/rockboxinfo.h | ||
398 | test/test-rockboxinfo.cpp) | ||
399 | |||
400 | target_link_libraries(test_rockboxinfo Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Test) | ||
401 | target_include_directories(test_rockboxinfo PRIVATE base test/stubs) | ||
402 | target_compile_definitions(test_rockboxinfo PRIVATE UNICODE) | ||
403 | add_test(test_rockboxinfo test_rockboxinfo) | ||
404 | set_property(TARGET test_rockboxinfo PROPERTY AUTOMOC ON) | ||
405 | |||
406 | |||