diff options
| -rw-r--r-- | CMakeLists.txt | 14 | ||||
| -rw-r--r-- | src/plugins/Input/CMakeLists.txt | 9 | ||||
| -rw-r--r-- | src/plugins/Input/mpeg/CMakeLists.txt | 61 |
3 files changed, 59 insertions, 25 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 60781b64b..ed81396e7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -60,6 +60,7 @@ find_package(Qt5Multimedia 5.4.0) ADD_DEFINITIONS(-DQMMP_WS_X11) set(CMAKE_CXX_VISIBILITY_PRESET hidden) set(CMAKE_VISIBILITY_INLINES_HIDDEN 1) +set(CMAKE_CXX_STANDARD 11) get_target_property(QT_LRELEASE_EXECUTABLE Qt5::lrelease IMPORTED_LOCATION) @@ -96,6 +97,14 @@ add_subdirectory(src/qmmpui) add_subdirectory(src/plugins) add_subdirectory(src/app) +IF(MAD_FOUND) + SET(MPEG_DECODERS "MAD") +ENDIF(MAD_FOUND) + +IF(MPG123_FOUND) + SET(MPEG_DECODERS ${MPEG_DECODERS} "mpg123") +ENDIF(MPG123_FOUND) + MACRO(PRINT_SUMMARY str USE FOUND) IF(${USE} AND ${FOUND}) MESSAGE("${str}enabled") @@ -149,7 +158,7 @@ PRINT_SUMMARY ("MMS support ......................." USE_MMS MMS_FOUND) MESSAGE("") MESSAGE("Input Plugins:") -PRINT_SUMMARY ("mp3 support ......................." USE_MAD MAD_FOUND) +PRINT_SUMMARY ("MPEG support ......................" 1 MAD_FOUND OR MPG123_FOUND) PRINT_SUMMARY ("FLAC support ......................" USE_FLAC FLAC_FOUND) PRINT_SUMMARY ("Ogg Vorbis support ................" USE_VORBIS VORBIS_FOUND) PRINT_SUMMARY ("Musepack support .................." USE_MPC MPC_FOUND) @@ -227,5 +236,8 @@ PRINT_SUMMARY ("Simple user interface (QSUI) ......" USE_QSUI 1) PRINT_SUMMARY ("Automatic charset detection ......." USE_ENCA ENCA_FOUND) PRINT_SUMMARY ("Directory association ............." USE_DIR_ASSOC 1) PRINT_SUMMARY ("Set RPATH in installed binaries ..." CMAKE_INSTALL_RPATH_USE_LINK_PATH 1) +IF(MPEG_DECODERS) +MESSAGE ("MPEG decoders ....................." "${MPEG_DECODERS}") +ENDIF(MPEG_DECODERS) MESSAGE("") diff --git a/src/plugins/Input/CMakeLists.txt b/src/plugins/Input/CMakeLists.txt index 9c9dbc64b..2cd772223 100644 --- a/src/plugins/Input/CMakeLists.txt +++ b/src/plugins/Input/CMakeLists.txt @@ -1,4 +1,5 @@ -SET(USE_MAD TRUE CACHE BOOL "enable/disable mad plugin") +SET(USE_MAD TRUE CACHE BOOL "enable/disable mad decoder (mpeg plugin)") +SET(USE_MPG123 TRUE CACHE BOOL "enable/disable mpg123 decoder (mpeg plugin)") SET(USE_FLAC TRUE CACHE BOOL "enable/disable flac plugin") SET(USE_VORBIS TRUE CACHE BOOL "enable/disable ogg vorbis plugin") SET(USE_FFMPEG TRUE CACHE BOOL "enable/disable ffmpeg plugin") @@ -16,9 +17,9 @@ SET(USE_SID TRUE CACHE BOOL "enable/disable sid plugin") SET(USE_ARCHIVE TRUE CACHE BOOL "enable/disable archive plugin") -IF(USE_MAD AND TAGLIB_FOUND) -add_subdirectory(mad) -ENDIF(USE_MAD AND TAGLIB_FOUND) +IF((USE_MAD OR USE_MPG123) AND TAGLIB_FOUND) +add_subdirectory(mpeg) +ENDIF((USE_MAD OR USE_MPG123) AND TAGLIB_FOUND) IF(USE_FLAC AND TAGLIB_FOUND) add_subdirectory(flac) diff --git a/src/plugins/Input/mpeg/CMakeLists.txt b/src/plugins/Input/mpeg/CMakeLists.txt index 34f13bfb9..bb0819ce3 100644 --- a/src/plugins/Input/mpeg/CMakeLists.txt +++ b/src/plugins/Input/mpeg/CMakeLists.txt @@ -1,4 +1,4 @@ -project(libmad) +project(libmpeg) include_directories(${CMAKE_CURRENT_BINARY_DIR}) @@ -7,46 +7,67 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../../) link_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../qmmp) # libmad +IF(USE_MAD) pkg_search_module(MAD libmad mad) +ENDIF(USE_MAD) -include_directories(${MAD_INCLUDE_DIRS} ${TAGLIB_INCLUDE_DIRS}) -link_directories(${MAD_LIBRARY_DIRS} ${TAGLIB_LIBRARY_DIRS}) -ADD_DEFINITIONS(${MAD_CFLAGS} ${TAGLIB_CFLAGS}) +# libmpg123 +IF(USE_MPG123) +pkg_search_module(MPG123 libmpg123) +ENDIF(USE_MPG123) -SET(libmad_SRCS - decoder_mad.cpp - decodermadfactory.cpp +include_directories(${TAGLIB_INCLUDE_DIRS}) +link_directories(${TAGLIB_LIBRARY_DIRS}) +ADD_DEFINITIONS(${TAGLIB_CFLAGS}) + + +SET(libmpeg_SRCS + decodermpegfactory.cpp settingsdialog.cpp tagextractor.cpp mpegmetadatamodel.cpp replaygainreader.cpp ) -SET(libmad_HDRS - decoder_mad.h +SET(libmpeg_HDRS tagextractor.h replaygainreader.h ) -SET(libmad_RCCS translations/translations.qrc) +IF(MAD_FOUND) + include_directories(${MAD_INCLUDE_DIRS}) + link_directories(${MAD_LIBRARY_DIRS}) + ADD_DEFINITIONS(${MAD_CFLAGS} -DWITH_MAD) + SET(libmpeg_SRCS ${libmpeg_SRCS} decoder_mad.cpp) + SET(libmpeg_HDRS ${libmpeg_HDRS} decoder_mad.h) +ENDIF(MAD_FOUND) -QT5_ADD_RESOURCES(libmad_RCC_SRCS ${libmad_RCCS}) +IF(MPG123_FOUND) + include_directories(${MPG123_INCLUDE_DIRS}) + link_directories(${MPG123_LIBRARY_DIRS}) + ADD_DEFINITIONS(${MPG123_CFLAGS} -DWITH_MPG123) + SET(libmpeg_SRCS ${libmpeg_SRCS} decoder_mpg123.cpp) + SET(libmpeg_HDRS ${libmpeg_HDRS} decoder_mpg123.h) +ENDIF(MPG123_FOUND) -# user interface +SET(libmpeg_RCCS translations/translations.qrc) +QT5_ADD_RESOURCES(libmpeg_RCC_SRCS ${libmpeg_RCCS}) -SET(libmad_UIS +# user interface + +SET(libmpeg_UIS settingsdialog.ui ) -QT5_WRAP_UI(libmad_UIS_H ${libmad_UIS}) +QT5_WRAP_UI(libmpeg_UIS_H ${libmpeg_UIS}) # Don't forget to include output directory, otherwise # the UI file won't be wrapped! include_directories(${CMAKE_CURRENT_BINARY_DIR}) -IF(MAD_FOUND) -ADD_LIBRARY(mad MODULE ${libmad_SRCS} ${libmad_UIS_H} ${libmad_RCC_SRCS} ${libmad_HDRS}) -add_dependencies(mad qmmp) -target_link_libraries(mad Qt5::Widgets -lqmmp ${MAD_LDFLAGS} ${TAGLIB_LDFLAGS}) -install(TARGETS mad DESTINATION ${LIB_DIR}/qmmp/Input) -ENDIF(MAD_FOUND) +IF(MAD_FOUND OR MPG123_FOUND) +ADD_LIBRARY(mpeg MODULE ${libmpeg_SRCS} ${libmpeg_UIS_H} ${libmpeg_RCC_SRCS} ${libmpeg_HDRS}) +add_dependencies(mpeg qmmp) +target_link_libraries(mpeg Qt5::Widgets -lqmmp ${TAGLIB_LDFLAGS} ${MAD_LDFLAGS} ${MPG123_LDFLAGS}) +install(TARGETS mpeg DESTINATION ${LIB_DIR}/qmmp/Input) +ENDIF(MAD_FOUND OR MPG123_FOUND) |
