~ubuntu-branches/debian/stretch/acoustid-fingerprinter/stretch

« back to all changes in this revision

Viewing changes to .pc/03-pkg-config.patch/CMakeLists.txt

  • Committer: Package Import Robot
  • Author(s): Jerome Charaoui
  • Date: 2014-08-26 20:30:49 UTC
  • mfrom: (7.1.1 sid)
  • Revision ID: package-import@ubuntu.com-20140826203049-qg3pn0syyg01udl3
Tags: 0.6-4
Make package FFmpeg-friendly (Closes: #758323)
Patch provided by Andreas Cadhalpun.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
cmake_minimum_required(VERSION 2.6)
 
2
 
 
3
project(fpsubmit)
 
4
set(fpsubmit_VERSION 0.6)
 
5
 
 
6
set(LIB_SUFFIX "" CACHE STRING "Define suffix of directory name (32/64)")
 
7
set(EXEC_INSTALL_PREFIX ${CMAKE_INSTALL_PREFIX} CACHE PATH "Installation prefix for executables and object code libraries" FORCE)
 
8
set(BIN_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/bin CACHE PATH "Installation prefix for user executables" FORCE)
 
9
set(LIB_INSTALL_DIR ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX} CACHE PATH  "Installation prefix for object code libraries" FORCE)
 
10
set(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/include CACHE PATH "Installation prefix for C header files" FORCE)
 
11
 
 
12
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
 
13
 
 
14
find_package(Qt4 COMPONENTS QtCore QtGui QtNetwork REQUIRED)
 
15
find_package(FFmpeg REQUIRED)
 
16
find_package(Taglib REQUIRED)
 
17
find_package(Chromaprint REQUIRED)
 
18
 
 
19
include(${QT_USE_FILE})
 
20
 
 
21
if(CMAKE_BUILD_TYPE STREQUAL Release OR CMAKE_BUILD_TYPE STREQUAL MinSizeRel OR CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo)
 
22
        add_definitions(-DQT_NO_DEBUG_OUTPUT)
 
23
endif(CMAKE_BUILD_TYPE STREQUAL Release OR CMAKE_BUILD_TYPE STREQUAL MinSizeRel OR CMAKE_BUILD_TYPE STREQUAL RelWithDebInfo)
 
24
 
 
25
set(fpsubmit_HEADERS
 
26
        checkabledirmodel.h
 
27
        progressdialog.h
 
28
        fingerprinter.h
 
29
        mainwindow.h
 
30
        loadfilelisttask.h
 
31
        analyzefiletask.h
 
32
)
 
33
set(fpsubmit_SOURCES
 
34
        checkabledirmodel.cpp
 
35
        progressdialog.cpp
 
36
        fingerprinter.cpp
 
37
        fingerprintcalculator.cpp
 
38
        tagreader.cpp
 
39
        mainwindow.cpp
 
40
        decoder.cpp
 
41
        main.cpp
 
42
        loadfilelisttask.cpp
 
43
        analyzefiletask.cpp
 
44
        updatelogfiletask.cpp
 
45
        crc.c
 
46
        gzip.cpp
 
47
)
 
48
#set(fpsubmit_UIS fpsubmit.ui)
 
49
set(fpsubmit_RESOURCES fingerprinter.qrc)
 
50
 
 
51
qt4_wrap_cpp(fpsubmit_MOC ${fpsubmit_HEADERS})
 
52
qt4_wrap_ui(fpsubmit_UIS_H ${fpsubmit_UIS})
 
53
qt4_add_resources(fpsubmit_RESOURCES_CPP ${fpsubmit_RESOURCES})
 
54
 
 
55
if(WIN32)
 
56
        set(fpsubmit_SOURCES ${fpsubmit_SOURCES} fingerprinter.rc)
 
57
endif()
 
58
 
 
59
add_definitions(
 
60
        -D__STDC_LIMIT_MACROS
 
61
        -D__STDC_CONSTANT_MACROS
 
62
        -DVERSION="${fpsubmit_VERSION}"
 
63
)
 
64
 
 
65
include_directories(
 
66
        ${CMAKE_CURRENT_BINARY_DIR}
 
67
        ${FFMPEG_LIBAVCODEC_INCLUDE_DIRS}
 
68
        ${FFMPEG_LIBAVFORMAT_INCLUDE_DIRS}
 
69
        ${FFMPEG_LIBAVUTIL_INCLUDE_DIRS}
 
70
        ${TAGLIB_INCLUDES}
 
71
        ${CHROMAPRINT_INCLUDE_DIR}
 
72
)
 
73
 
 
74
set(CMAKE_REQUIRED_LIBRARIES
 
75
        ${FFMPEG_LIBAVFORMAT_LIBRARIES}
 
76
        ${FFMPEG_LIBAVCODEC_LIBRARIES}
 
77
        ${FFMPEG_LIBAVUTIL_LIBRARIES}
 
78
        ${EXTRA_LIBS})
 
79
include(CheckFunctionExists)
 
80
check_function_exists(av_audio_convert HAVE_AV_AUDIO_CONVERT)
 
81
 
 
82
if(HAVE_AV_AUDIO_CONVERT)
 
83
        add_definitions(-DHAVE_AV_AUDIO_CONVERT)
 
84
endif()
 
85
 
 
86
if(WIN32)
 
87
set(GUI_TYPE WIN32)
 
88
endif(WIN32)
 
89
 
 
90
if(APPLE)
 
91
    set(GUI_TYPE MACOSX_BUNDLE)
 
92
    set(fpsubmit_ICON_FILE ${CMAKE_CURRENT_SOURCE_DIR}/images/acoustid-fp.icns)
 
93
    set_source_files_properties(${fpsubmit_ICON_FILE}
 
94
        PROPERTIES
 
95
        MACOSX_PACKAGE_LOCATION Resources)
 
96
        set(fpsubmit_SOURCES ${fpsubmit_SOURCES} ${fpsubmit_ICON_FILE})
 
97
endif()
 
98
 
 
99
add_executable(fpsubmit ${GUI_TYPE}
 
100
    ${fpsubmit_SOURCES}
 
101
    ${fpsubmit_MOC}
 
102
    ${fpsubmit_UIS_H}
 
103
    ${fpsubmit_RESOURCES_CPP}
 
104
)
 
105
 
 
106
set_target_properties(fpsubmit PROPERTIES
 
107
        OUTPUT_NAME acoustid-fingerprinter
 
108
    MACOSX_BUNDLE_ICON_FILE acoustid-fp.icns
 
109
        MACOSX_BUNDLE_INFO_STRING "Acoustid Fingerprinter ${fpsubmit_VERSION}"
 
110
        MACOSX_BUNDLE_BUNDLE_NAME "Acoustid Fingerprinter"
 
111
)
 
112
 
 
113
target_link_libraries(fpsubmit
 
114
        ${QT_LIBRARIES}
 
115
        ${FFMPEG_LIBAVFORMAT_LIBRARIES}
 
116
        ${FFMPEG_LIBAVCODEC_LIBRARIES}
 
117
        ${FFMPEG_LIBAVUTIL_LIBRARIES}
 
118
        ${TAGLIB_LIBRARIES}
 
119
        ${CHROMAPRINT_LIBRARIES}
 
120
)
 
121
 
 
122
if(APPLE)
 
123
        target_link_libraries(fpsubmit "-framework Accelerate -lz")
 
124
endif()
 
125
 
 
126
if(UNIX)
 
127
        install(FILES acoustid-fingerprinter.desktop DESTINATION share/applications)
 
128
endif()
 
129
 
 
130
install(TARGETS fpsubmit DESTINATION ${BIN_INSTALL_DIR})