if (FFMPEG_FOUND OR MPG123_FOUND)
    include_directories(${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
    if (FFMPEG_FOUND)
        set(CANTATA_RG_SRCS ${CANTATA_RG_SRCS} ffmpeginput.cpp)
        include_directories(${FFMPEG_INCLUDE_DIRS})
    endif ()
    if (MPG123_FOUND)
        set(CANTATA_RG_SRCS ${CANTATA_RG_SRCS} mpg123input.cpp)
        include_directories(${MPG123_INCLUDE_DIRS})
    endif ()

    set(CANTATA_RG_SRCS ${CANTATA_RG_SRCS} main.cpp replaygain.cpp trackscanner.cpp jobcontroller.cpp ../support/thread.cpp)

    if (WIN32)
        set(CMAKE_BUILD_TYPE "Release")
        ADD_EXECUTABLE(cantata-replaygain WIN32 ${CANTATA_RG_SRCS} ${CANTATA_PO})
        install(TARGETS cantata-replaygain DESTINATION ${CMAKE_INSTALL_PREFIX})
    elseif (APPLE)
        set(CMAKE_BUILD_TYPE "Release")
        ADD_EXECUTABLE(cantata-replaygain ${CANTATA_RG_SRCS} ${CANTATA_PO})
#        install(TARGETS cantata-replaygain DESTINATION ${MACOSX_BUNDLE_APP_DIR})
    else ()
        ADD_EXECUTABLE(cantata-replaygain ${CANTATA_RG_SRCS})
        install(TARGETS cantata-replaygain RUNTIME DESTINATION ${LINUX_LIB_DIR}/cantata)
    endif ()

    target_link_libraries(cantata-replaygain support-core)

    find_package(Ebur128 REQUIRED)

    target_link_libraries(cantata-replaygain ${Ebur128_LIBRARIES})
    target_include_directories(cantata-replaygain PRIVATE ${Ebur128_INCLUDEDIR})

    if (FFMPEG_FOUND)
        target_link_libraries(cantata-replaygain ${FFMPEG_LIBRARIES})
    endif ()
    if (MPG123_FOUND)
        target_link_libraries(cantata-replaygain ${MPG123_LIBRARIES})
    endif ()
    target_link_libraries(cantata-replaygain ${QTCORELIBS})
    if (UNIX AND NOT APPLE)
        target_link_libraries(cantata-replaygain -lpthread)
    endif ()
endif ()

