1
cmake_minimum_required(VERSION 2.6)
4
set(fpsubmit_VERSION 0.6)
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)
12
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
14
find_package(Qt4 COMPONENTS QtCore QtGui QtNetwork REQUIRED)
15
find_package(FFmpeg REQUIRED)
16
find_package(Taglib REQUIRED)
17
find_package(Chromaprint REQUIRED)
19
include(${QT_USE_FILE})
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)
37
fingerprintcalculator.cpp
48
#set(fpsubmit_UIS fpsubmit.ui)
49
set(fpsubmit_RESOURCES fingerprinter.qrc)
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})
56
set(fpsubmit_SOURCES ${fpsubmit_SOURCES} fingerprinter.rc)
61
-D__STDC_CONSTANT_MACROS
62
-DVERSION="${fpsubmit_VERSION}"
66
${CMAKE_CURRENT_BINARY_DIR}
67
${FFMPEG_LIBAVCODEC_INCLUDE_DIRS}
68
${FFMPEG_LIBAVFORMAT_INCLUDE_DIRS}
69
${FFMPEG_LIBAVUTIL_INCLUDE_DIRS}
71
${CHROMAPRINT_INCLUDE_DIR}
74
set(CMAKE_REQUIRED_LIBRARIES
75
${FFMPEG_LIBAVFORMAT_LIBRARIES}
76
${FFMPEG_LIBAVCODEC_LIBRARIES}
77
${FFMPEG_LIBAVUTIL_LIBRARIES}
79
include(CheckFunctionExists)
80
check_function_exists(av_audio_convert HAVE_AV_AUDIO_CONVERT)
82
if(HAVE_AV_AUDIO_CONVERT)
83
add_definitions(-DHAVE_AV_AUDIO_CONVERT)
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}
95
MACOSX_PACKAGE_LOCATION Resources)
96
set(fpsubmit_SOURCES ${fpsubmit_SOURCES} ${fpsubmit_ICON_FILE})
99
add_executable(fpsubmit ${GUI_TYPE}
103
${fpsubmit_RESOURCES_CPP}
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"
113
target_link_libraries(fpsubmit
115
${FFMPEG_LIBAVFORMAT_LIBRARIES}
116
${FFMPEG_LIBAVCODEC_LIBRARIES}
117
${FFMPEG_LIBAVUTIL_LIBRARIES}
119
${CHROMAPRINT_LIBRARIES}
123
target_link_libraries(fpsubmit "-framework Accelerate -lz")
127
install(FILES acoustid-fingerprinter.desktop DESTINATION share/applications)
130
install(TARGETS fpsubmit DESTINATION ${BIN_INSTALL_DIR})