summaryrefslogtreecommitdiff
path: root/utils/CMakeLists.txt
diff options
context:
space:
mode:
Diffstat (limited to 'utils/CMakeLists.txt')
-rw-r--r--utils/CMakeLists.txt393
1 files changed, 2 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)
77endif() 77endif()
78 78
79set(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 )
97if(QT_VERSION_MAJOR EQUAL 5)
98 qt5_add_translation(RBUTIL_QM_FILES ${RBUTIL_TS_FILES})
99else()
100 qt6_add_translation(RBUTIL_QM_FILES ${RBUTIL_TS_FILES})
101endif()
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.
106add_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
114add_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
171if(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)
177endif()
178if(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)
186endif()
187
188target_link_libraries(RockboxUtility rbbase cutelogger
189 Qt${QT_VERSION_MAJOR}::Widgets Qt${QT_VERSION_MAJOR}::Multimedia)
190
191target_include_directories(RockboxUtility PRIVATE
192 ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/gui
193 ${CMAKE_CURRENT_LIST_DIR}/rbutilqt)
194target_compile_definitions(RockboxUtility PRIVATE
195 QT_DEPRECATED_WARNINGS
196 RBUTIL _LARGEFILE64_SOURCE UNICODE)
197
198set_property(TARGET RockboxUtility PROPERTY AUTOMOC ON)
199set_property(TARGET RockboxUtility PROPERTY AUTORCC ON)
200set_property(TARGET RockboxUtility PROPERTY AUTOUIC ON)
201
202include(${CMAKE_CURRENT_LIST_DIR}/cmake/deploy.cmake)
203deploy_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
209add_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
302if(APPLE)
303 target_sources(rbbase PRIVATE
304 ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttscarbon.cpp
305 ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base/ttscarbon.h)
306endif()
307
308target_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)
313target_include_directories(rbbase PUBLIC ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/base)
314target_include_directories(rbbase PRIVATE ${CMAKE_CURRENT_LIST_DIR}/rbutilqt)
315target_include_directories(rbbase PUBLIC ${CMAKE_CURRENT_LIST_DIR}/../tools)
316target_compile_definitions(rbbase PUBLIC RBUTIL _LARGEFILE64_SOURCE UNICODE)
317target_compile_definitions(rbbase PRIVATE QT_DEPRECATED_WARNINGS)
318if(WIN32)
319 target_link_libraries(rbbase setupapi ws2_32 netapi32 crypt32 iphlpapi)
320elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux")
321 target_link_libraries(rbbase PkgConfig::libusb)
322elseif("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin")
323 target_link_libraries(rbbase ${FRAMEWORK_IOKIT} ${FRAMEWORK_COREFOUNDATION}
324 ${FRAMEWORK_CARBON} ${FRAMEWORK_SYSTEMCONFIGURATION} ${FRAMEWORK_CORESERVICES})
325endif()
326set_property(TARGET rbbase PROPERTY AUTOMOC ON)
327
328# TODO: Upstream has cmake support, use that instead.
329add_library(cutelogger)
330# need to put those separate, otherwise cmake will not add them correctly -- seems to be related to moc'ing.
331target_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 )
346target_include_directories(cutelogger PUBLIC ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/logger/include)
347target_link_libraries(cutelogger PUBLIC Qt${QT_VERSION_MAJOR}::Core)
348target_compile_definitions(cutelogger PUBLIC CUTELOGGER_STATIC)
349set_property(TARGET cutelogger PROPERTY AUTOMOC ON)
350
351# TODO: Upstream has cmake support, use that instead.
352add_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 )
370target_include_directories(quazip PUBLIC ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/quazip)
371target_link_libraries(quazip z Qt${QT_VERSION_MAJOR}::Core)
372if(QT_VERSION_MAJOR EQUAL 6)
373 target_link_libraries(quazip Qt${QT_VERSION_MAJOR}::Core5Compat)
374endif()
375target_compile_definitions(quazip PUBLIC QUAZIP_STATIC)
376set_property(TARGET quazip PROPERTY AUTOMOC ON)
377
378add_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
416target_include_directories(mspack PUBLIC ${CMAKE_CURRENT_LIST_DIR}/rbutilqt/mspack)
417
418 79
419add_library(ipodpatcher 80add_library(ipodpatcher
420 ipodpatcher/arc4.h 81 ipodpatcher/arc4.h
@@ -672,55 +333,5 @@ add_library(rbtomcrypt
672 ) 333 )
673target_include_directories(rbtomcrypt PUBLIC ${CMAKE_CURRENT_LIST_DIR}/tomcrypt/src/headers) 334target_include_directories(rbtomcrypt PUBLIC ${CMAKE_CURRENT_LIST_DIR}/tomcrypt/src/headers)
674 335
675 336include(${CMAKE_CURRENT_LIST_DIR}/cmake/deploy.cmake)
676# Unit tests 337add_subdirectory(rbutilqt)
677add_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
683target_link_libraries(test_compareversion Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Test)
684target_compile_definitions(test_compareversion PRIVATE UNICODE)
685if(APPLE)
686 target_link_libraries(test_compareversion ${FRAMEWORK_IOKIT} ${FRAMEWORK_COREFOUNDATION}
687 ${FRAMEWORK_CARBON} ${FRAMEWORK_SYSTEMCONFIGURATION} ${FRAMEWORK_CORESERVICES})
688endif()
689target_include_directories(test_compareversion PRIVATE rbutilqt/base rbutilqt/test/stubs)
690add_test(test_compareversion test_compareversion)
691set_property(TARGET test_compareversion PROPERTY AUTOMOC ON)
692
693add_executable(test_httpget
694 rbutilqt/test/test-httpget.cpp
695 rbutilqt/base/httpget.cpp
696 rbutilqt/base/httpget.h)
697target_link_libraries(test_httpget Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Test Qt${QT_VERSION_MAJOR}::Network)
698target_include_directories(test_httpget PRIVATE rbutilqt/base rbutilqt/test/stubs)
699add_test(test_httpget test_httpget)
700set_property(TARGET test_httpget PROPERTY AUTOMOC ON)
701
702add_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)
710target_link_libraries(test_playerbuildinfo Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Test)
711target_include_directories(test_playerbuildinfo PRIVATE rbutilqt/base rbutilqt/test/stubs)
712add_test(test_playerbuildinfo test_playerbuildinfo)
713set_property(TARGET test_playerbuildinfo PROPERTY AUTOMOC ON)
714set_property(TARGET test_playerbuildinfo PROPERTY AUTORCC ON)
715
716add_executable(test_rockboxinfo
717 rbutilqt/base/rockboxinfo.cpp
718 rbutilqt/base/rockboxinfo.h
719 rbutilqt/test/test-rockboxinfo.cpp)
720
721target_link_libraries(test_rockboxinfo Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Test)
722target_include_directories(test_rockboxinfo PRIVATE rbutilqt/base rbutilqt/test/stubs)
723target_compile_definitions(test_rockboxinfo PRIVATE UNICODE)
724add_test(test_rockboxinfo test_rockboxinfo)
725set_property(TARGET test_rockboxinfo PROPERTY AUTOMOC ON)
726