aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Input/archive/CMakeLists.txt
blob: bacc8de2f1298bd70fcff975b80d4d34418265f9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
project(libarchive)

include_directories(${CMAKE_CURRENT_BINARY_DIR})

# libqmmp
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../../)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../qmmp)

# libarchive
pkg_search_module(LIBARCHIVE libarchive>=3.2.0)

include_directories(${archive_INCLUDE_DIRS} ${TAGLIB_INCLUDE_DIRS})
link_directories(${archive_LIBRARY_DIRS} ${TAGLIB_LIBRARY_DIRS})
ADD_DEFINITIONS(${archive_CFLAGS} ${TAGLIB_CFLAGS})

SET(libarchive_SRCS
  archiveinputdevice.cpp
  archivemetadatamodel.cpp
  decoder_archive.cpp
  archivetagreader.cpp
  decoderarchivefactory.cpp
)

SET(libarchive_HDRS
  archivetagreader.h
  decoder_archive.h
)

SET(libarchive_RCCS translations/translations.qrc)

QT5_ADD_RESOURCES(libarchive_RCC_SRCS ${libarchive_RCCS})

include_directories(${CMAKE_CURRENT_BINARY_DIR})

IF(LIBARCHIVE_FOUND)
ADD_LIBRARY(archive MODULE ${libarchive_SRCS} ${libarchive_RCC_SRCS} ${libarchive_HDRS})
add_dependencies(archive qmmp)
target_link_libraries(archive Qt5::Widgets libqmmp ${LIBARCHIVE_LDFLAGS} ${TAGLIB_LDFLAGS})
install(TARGETS archive DESTINATION ${LIB_DIR}/qmmp/Input)
ENDIF(LIBARCHIVE_FOUND)