diff --git a/src/qtquick/karchive-rar/CMakeLists.txt b/src/qtquick/karchive-rar/CMakeLists.txt index 3928dfd..022ecd1 100644 --- a/src/qtquick/karchive-rar/CMakeLists.txt +++ b/src/qtquick/karchive-rar/CMakeLists.txt @@ -1,50 +1,53 @@ project(karchive-rar) find_package(ZLIB) -if (UNIX OR MINGW) - add_compile_options(-std=gnu99 -fomit-frame-pointer -D_FILE_OFFSET_BITS=64 -fPIC) -endif (UNIX OR MINGW) - set(unarr_SRCS unarr/rar/uncompress-rar.c unarr/rar/huffman-rar.c unarr/rar/rar.c unarr/rar/filter-rar.c unarr/rar/rarvm.c unarr/rar/parse-rar.c unarr/lzmasdk/Ppmd7.c unarr/lzmasdk/Ppmd8.c unarr/lzmasdk/CpuArch.c unarr/lzmasdk/LzmaDec.c unarr/lzmasdk/Ppmd7Dec.c unarr/lzmasdk/Ppmd8Dec.c unarr/common/custalloc.c unarr/common/unarr.c unarr/common/stream.c unarr/common/conv.c unarr/common/crc32.c ) set(karchive_rar_SRCS KRar.cpp KRarFileEntry.cpp ) -add_library(karchive-rar STATIC ${karchive_rar_SRCS} ${unarr_SRCS}) +add_library(karchive-c-unarr OBJECT ${unarr_SRCS}) +if (UNIX OR MINGW) + target_compile_options(karchive-c-unarr PRIVATE -std=gnu99 -fomit-frame-pointer -D_FILE_OFFSET_BITS=64 -fPIC) + set_property(TARGET karchive-c-unarr PROPERTY AUTOMOC OFF) +endif (UNIX OR MINGW) + + +add_library(karchive-rar STATIC ${karchive_rar_SRCS} $) target_link_libraries(karchive-rar PUBLIC KF5::Archive ) target_include_directories(karchive-rar PRIVATE unarr/ ) if (ZLIB_FOUND) target_include_directories(karchive-rar PRIVATE ${ZLIB_INCLUDE_DIRS}) target_link_libraries(karchive-rar PRIVATE ${ZLIB_LIBRARIES}) add_definitions(-DHAVE_ZLIB) endif(ZLIB_FOUND) # A little hack, which makes the karchive_rar library think it's a part of KF5Archive add_definitions(-DKF5Archive_EXPORTS)