summaryrefslogtreecommitdiff
path: root/utils/rbutilqt/CMakeLists.txt
diff options
context:
space:
mode:
authorJames Le Cuirot <chewi@gentoo.org>2022-07-07 21:52:54 +0100
committerDominik Riebeling <dominik.riebeling@gmail.com>2022-07-11 15:00:07 -0400
commit4917f764bbb9580d9ec312794c0d7ae71c6792e1 (patch)
tree755c7c45cc253187146eac69e82a5c5442945c52 /utils/rbutilqt/CMakeLists.txt
parentdb2817eb1ab3d4634010a83db5c657fc8d27b5eb (diff)
downloadrockbox-4917f764bbb9580d9ec312794c0d7ae71c6792e1.tar.gz
rockbox-4917f764bbb9580d9ec312794c0d7ae71c6792e1.zip
rbutil: Try to use system-wide QuaZIP in preference to building our own
QuaZIP is included in several major Linux distributions and packaging policies strongly oppose bundling of libraries. Change-Id: I8d454784dc4b244f4dd8aa18deb3350a29aaab77
Diffstat (limited to 'utils/rbutilqt/CMakeLists.txt')
-rw-r--r--utils/rbutilqt/CMakeLists.txt66
1 files changed, 37 insertions, 29 deletions
diff --git a/utils/rbutilqt/CMakeLists.txt b/utils/rbutilqt/CMakeLists.txt
index 41954cb9ee..24e15ac1b4 100644
--- a/utils/rbutilqt/CMakeLists.txt
+++ b/utils/rbutilqt/CMakeLists.txt
@@ -255,9 +255,44 @@ if(APPLE)
255 ${CMAKE_CURRENT_LIST_DIR}/base/ttscarbon.h) 255 ${CMAKE_CURRENT_LIST_DIR}/base/ttscarbon.h)
256endif() 256endif()
257 257
258find_package(QuaZip-Qt${QT_VERSION_MAJOR} QUIET)
259if(QuaZip-Qt${QT_VERSION_MAJOR}_FOUND)
260 message("-- Found QuaZip")
261 set(QUAZIP_LIBRARY QuaZip::QuaZip)
262else()
263 message("-- QuaZip not found, building our own")
264 # TODO: Upstream has cmake support, use that instead.
265 add_library(quazip
266 ${CMAKE_CURRENT_LIST_DIR}/quazip/ioapi.h
267 ${CMAKE_CURRENT_LIST_DIR}/quazip/minizip_crypt.h
268 ${CMAKE_CURRENT_LIST_DIR}/quazip/qioapi.cpp
269 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazip.cpp
270 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipfile.cpp
271 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipfile.h
272 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipfileinfo.cpp
273 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipfileinfo.h
274 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazip_global.h
275 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazip.h
276 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipnewinfo.cpp
277 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipnewinfo.h
278 ${CMAKE_CURRENT_LIST_DIR}/quazip/unzip.c
279 ${CMAKE_CURRENT_LIST_DIR}/quazip/unzip.h
280 ${CMAKE_CURRENT_LIST_DIR}/quazip/zip.c
281 ${CMAKE_CURRENT_LIST_DIR}/quazip/zip.h
282 )
283 target_include_directories(quazip PUBLIC ${CMAKE_CURRENT_LIST_DIR}/quazip)
284 target_link_libraries(quazip z Qt${QT_VERSION_MAJOR}::Core)
285 if(QT_VERSION_MAJOR EQUAL 6)
286 target_link_libraries(quazip Qt${QT_VERSION_MAJOR}::Core5Compat)
287 endif()
288 target_compile_definitions(quazip PUBLIC QUAZIP_STATIC)
289 set_property(TARGET quazip PROPERTY AUTOMOC ON)
290 set(QUAZIP_LIBRARY quazip)
291endif()
292
258target_link_libraries(rbbase 293target_link_libraries(rbbase
259 cutelogger quazip mspack bspatch rbspeex voicefont 294 cutelogger ${QUAZIP_LIBRARY} mspack bspatch rbspeex
260 sansapatcher ipodpatcher chinachippatcher 295 voicefont sansapatcher ipodpatcher chinachippatcher
261 mkamsboot mkimxboot mkmpioboot mktccboot mks5lboot 296 mkamsboot mkimxboot mkmpioboot mktccboot mks5lboot
262 Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Network) 297 Qt${QT_VERSION_MAJOR}::Core Qt${QT_VERSION_MAJOR}::Network)
263target_include_directories(rbbase PUBLIC ${CMAKE_CURRENT_LIST_DIR}/base) 298target_include_directories(rbbase PUBLIC ${CMAKE_CURRENT_LIST_DIR}/base)
@@ -298,33 +333,6 @@ target_link_libraries(cutelogger PUBLIC Qt${QT_VERSION_MAJOR}::Core)
298target_compile_definitions(cutelogger PUBLIC CUTELOGGER_STATIC) 333target_compile_definitions(cutelogger PUBLIC CUTELOGGER_STATIC)
299set_property(TARGET cutelogger PROPERTY AUTOMOC ON) 334set_property(TARGET cutelogger PROPERTY AUTOMOC ON)
300 335
301# TODO: Upstream has cmake support, use that instead.
302add_library(quazip
303 ${CMAKE_CURRENT_LIST_DIR}/quazip/ioapi.h
304 ${CMAKE_CURRENT_LIST_DIR}/quazip/minizip_crypt.h
305 ${CMAKE_CURRENT_LIST_DIR}/quazip/qioapi.cpp
306 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazip.cpp
307 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipfile.cpp
308 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipfile.h
309 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipfileinfo.cpp
310 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipfileinfo.h
311 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazip_global.h
312 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazip.h
313 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipnewinfo.cpp
314 ${CMAKE_CURRENT_LIST_DIR}/quazip/quazipnewinfo.h
315 ${CMAKE_CURRENT_LIST_DIR}/quazip/unzip.c
316 ${CMAKE_CURRENT_LIST_DIR}/quazip/unzip.h
317 ${CMAKE_CURRENT_LIST_DIR}/quazip/zip.c
318 ${CMAKE_CURRENT_LIST_DIR}/quazip/zip.h
319 )
320target_include_directories(quazip PUBLIC ${CMAKE_CURRENT_LIST_DIR}/quazip)
321target_link_libraries(quazip z Qt${QT_VERSION_MAJOR}::Core)
322if(QT_VERSION_MAJOR EQUAL 6)
323 target_link_libraries(quazip Qt${QT_VERSION_MAJOR}::Core5Compat)
324endif()
325target_compile_definitions(quazip PUBLIC QUAZIP_STATIC)
326set_property(TARGET quazip PROPERTY AUTOMOC ON)
327
328add_library(mspack 336add_library(mspack
329 #mspack/cabc.c 337 #mspack/cabc.c
330 mspack/cabd.c 338 mspack/cabd.c