aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/Input
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2008-05-15 21:37:22 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2008-05-15 21:37:22 +0000
commitd787dda4d47786a4e756f04bff8693f653e8bb85 (patch)
tree1f43cfb6b8bc470f2a81791afa844593d6037445 /src/plugins/Input
parentff2a1eb2e93dce61726254869d2c7407d81a6bdd (diff)
downloadqmmp-d787dda4d47786a4e756f04bff8693f653e8bb85.tar.gz
qmmp-d787dda4d47786a4e756f04bff8693f653e8bb85.tar.bz2
qmmp-d787dda4d47786a4e756f04bff8693f653e8bb85.zip
improved cmake scripts
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@373 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/plugins/Input')
-rw-r--r--src/plugins/Input/CMakeLists.txt44
-rw-r--r--src/plugins/Input/ffmpeg/CMakeLists.txt41
-rw-r--r--src/plugins/Input/flac/CMakeLists.txt32
-rw-r--r--src/plugins/Input/mad/CMakeLists.txt41
-rw-r--r--src/plugins/Input/modplug/CMakeLists.txt21
-rw-r--r--src/plugins/Input/mpc/CMakeLists.txt29
-rw-r--r--src/plugins/Input/sndfile/CMakeLists.txt26
-rw-r--r--src/plugins/Input/vorbis/CMakeLists.txt41
-rw-r--r--src/plugins/Input/wavpack/CMakeLists.txt24
9 files changed, 79 insertions, 220 deletions
diff --git a/src/plugins/Input/CMakeLists.txt b/src/plugins/Input/CMakeLists.txt
index 420ec6126..a1f91866d 100644
--- a/src/plugins/Input/CMakeLists.txt
+++ b/src/plugins/Input/CMakeLists.txt
@@ -1,4 +1,6 @@
+INCLUDE(FindPkgConfig)
+
SET(USE_MAD TRUE CACHE BOOL "enable/disable mad plugin")
SET(USE_FLAC TRUE CACHE BOOL "enable/disable flac plugin")
SET(USE_VORBIS TRUE CACHE BOOL "enable/disable ogg vorbis plugin")
@@ -8,58 +10,36 @@ SET(USE_SNDFILE TRUE CACHE BOOL "enable/disable sndfile plugin")
SET(USE_WAVPACK TRUE CACHE BOOL "enable/disable wavpack plugin")
SET(USE_MODPLUG TRUE CACHE BOOL "enable/disable modplug plugin")
-IF(USE_MAD)
-MESSAGE( STATUS "MAD ON")
+pkg_check_modules(TAGLIB taglib)
+
+IF(USE_MAD AND TAGLIB_FOUND)
add_subdirectory(mad)
-ELSE(USE_MAD)
-MESSAGE( STATUS "MAD OFF")
-ENDIF(USE_MAD)
+ENDIF(USE_MAD AND TAGLIB_FOUND)
-IF(USE_FLAC)
-MESSAGE( STATUS "FLAC ON")
+IF(USE_FLAC AND TAGLIB_FOUND)
add_subdirectory(flac)
-ELSE(USE_FLAC)
-MESSAGE( STATUS "FLAC OFF")
-ENDIF(USE_FLAC)
+ENDIF(USE_FLAC AND TAGLIB_FOUND)
-IF(USE_VORBIS)
-MESSAGE( STATUS "VORBIS ON")
+IF(USE_VORBIS AND TAGLIB_FOUND)
add_subdirectory(vorbis)
-ELSE(USE_VORBIS)
-MESSAGE( STATUS "VORBIS OFF")
-ENDIF(USE_VORBIS)
+ENDIF(USE_VORBIS AND TAGLIB_FOUND)
IF(USE_FFMPEG)
-MESSAGE( STATUS "FFMPEG ON")
add_subdirectory(ffmpeg)
-ELSE(USE_FFMPEG)
-MESSAGE( STATUS "FFMPEG OFF")
ENDIF(USE_FFMPEG)
-IF(USE_MPC)
-MESSAGE( STATUS "MPC ON")
+IF(USE_MPC AND TAGLIB_FOUND)
add_subdirectory(mpc)
-ELSE(USE_MPC)
-MESSAGE( STATUS "MPC OFF")
-ENDIF(USE_MPC)
+ENDIF(USE_MPC AND TAGLIB_FOUND)
IF(USE_SNDFILE)
-MESSAGE( STATUS "SNDFILE ON")
add_subdirectory(sndfile)
-ELSE(USE_SNDFILE)
-MESSAGE( STATUS "SNDFILE OFF")
ENDIF(USE_SNDFILE)
IF(USE_WAVPACK)
-MESSAGE( STATUS "WAVPACK ON")
add_subdirectory(wavpack)
-ELSE(USE_WAVPACK)
-MESSAGE( STATUS "WAVPACK OFF")
ENDIF(USE_WAVPACK)
IF(USE_MODPLUG)
-MESSAGE( STATUS "MODPLUG ON")
add_subdirectory(modplug)
-ELSE(USE_MODPLUG)
-MESSAGE( STATUS "MODPLUG OFF")
ENDIF(USE_MODPLUG)
diff --git a/src/plugins/Input/ffmpeg/CMakeLists.txt b/src/plugins/Input/ffmpeg/CMakeLists.txt
index 973e481bd..3daf985fc 100644
--- a/src/plugins/Input/ffmpeg/CMakeLists.txt
+++ b/src/plugins/Input/ffmpeg/CMakeLists.txt
@@ -2,9 +2,6 @@ project(libffmpeg)
cmake_minimum_required(VERSION 2.4.0)
-
-INCLUDE(UsePkgConfig)
-
# qt plugin
ADD_DEFINITIONS( -Wall )
ADD_DEFINITIONS(${QT_DEFINITIONS})
@@ -27,43 +24,33 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../qmmp)
# libffmpeg
-PKGCONFIG(libavcodec LIBAVCODEC_INCLUDE_DIR LIBAVCODEC_LINK_DIR LIBAVCODEC_LINK_FLAGS LIBAVCODEC_CFLAGS)
-PKGCONFIG(libavformat LIBAVFORMAT_INCLUDE_DIR LIBAVFORMAT_LINK_DIR LIBAVFORMAT_LINK_FLAGS LIBAVFORMAT_CFLAGS)
-
-IF(NOT LIBAVCODEC_LINK_FLAGS)
- SET(LIBAVCODEC_LINK_FLAGS -lavcodec)
- SET(LIBAVCODEC_INCLUDE_DIR /usr/include)
-ENDIF(NOT LIBAVCODEC_LINK_FLAGS)
+pkg_check_modules(FFMPEG libavcodec libavformat)
-IF(NOT LIBAVFORMAT_LINK_FLAGS)
- SET(LIBAVFORMAT_LINK_FLAGS -lavformat)
- SET(LIBAVFORMAT_INCLUDE_DIR /usr/include)
-ENDIF(NOT LIBAVFORMAT_LINK_FLAGS)
# old ffmpeg support
-IF(EXISTS ${LIBAVFORMAT_INCLUDE_DIR}/ffmpeg/avformat.h)
+IF(EXISTS /usr/include/ffmpeg/avformat.h)
ADD_DEFINITIONS(-DHAVE_FFMPEG_AVFORMAT_H)
-ELSEIF(EXISTS ${LIBAVFORMAT_INCLUDE_DIR}/libavformat/avformat.h)
+ELSEIF(EXISTS /usr/include/libavformat/avformat.h)
ADD_DEFINITIONS(-DHAVE_LIBAVFORMAT_AVFORMAT_H)
-ELSE(EXISTS ${LIBAVFORMAT_INCLUDE_DIR}/ffmpeg/avformat.h)
+ELSE(EXISTS /usr/include/libavformat/avformat.h)
include_directories(/usr/local/include/ffmpeg
/usr/local/include/libavformat
)
-ENDIF(EXISTS ${LIBAVFORMAT_INCLUDE_DIR}/ffmpeg/avformat.h)
+ENDIF(EXISTS /usr/include/ffmpeg/avformat.h)
-IF(EXISTS ${LIBAVCODEC_INCLUDE_DIR}/ffmpeg/avcodec.h)
+IF(EXISTS /usr/include/ffmpeg/avcodec.h)
ADD_DEFINITIONS(-DHAVE_FFMPEG_AVCODEC_H)
-ELSEIF(EXISTS ${LIBAVCODEC_INCLUDE_DIR}/libavcodec/avcodec.h)
+ELSEIF(EXISTS /usr/include/libavcodec/avcodec.h)
ADD_DEFINITIONS(-DHAVE_LIBAVCODEC_AVCODEC_H)
-ELSE(EXISTS ${LIBAVCODEC_INCLUDE_DIR}/ffmpeg/avcodec.h)
+ELSE(EXISTS /usr/include/ffmpeg/avcodec.h)
include_directories(/usr/local/include/ffmpeg
/usr/local/include/libavcodec
)
-ENDIF(EXISTS ${LIBAVCODEC_INCLUDE_DIR}/ffmpeg/avcodec.h)
+ENDIF(EXISTS /usr/include/ffmpeg/avcodec.h)
-include_directories(${LIBAVCODEC_INCLUDE_DIR} ${LIBAVFORMAT_INCLUDE_DIR})
-link_directories(${LIBAVCODEC_LINK_DIR} ${LIBAVFORMAT_LINK_DIR})
+include_directories(${FFMPEG_INCLUDE_DIRS})
+link_directories(${FFMPEG_LIBRARY_DIRS})
ADD_DEFINITIONS(${LIBAVCODEC_CFLAGS})
ADD_DEFINITIONS(${LIBAVFORMAT_CFLAGS})
@@ -98,7 +85,9 @@ QT4_WRAP_UI(libffmpeg_UIS_H ${libffmpeg_UIS})
# the UI file won't be wrapped!
include_directories(${CMAKE_CURRENT_BINARY_DIR})
+IF(FFMPEG_FOUND)
ADD_LIBRARY(ffmpeg SHARED ${libffmpeg_SRCS} ${libffmpeg_MOC_SRCS} ${libffmpeg_UIS_H}
${libffmpeg_RCC_SRCS})
-target_link_libraries(ffmpeg ${QT_LIBRARIES} -lqmmp ${LIBAVCODEC_LINK_FLAGS} ${LIBAVFORMAT_LINK_FLAGS})
-install(TARGETS ffmpeg DESTINATION ${LIB_DIR}/qmmp/Input PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ)
+target_link_libraries(ffmpeg ${QT_LIBRARIES} -lqmmp ${FFMPEG_LDFLAGS} ${FFMPEG_CFLAGS})
+install(TARGETS ffmpeg DESTINATION ${LIB_DIR}/qmmp/Input)
+ENDIF(FFMPEG_FOUND)
diff --git a/src/plugins/Input/flac/CMakeLists.txt b/src/plugins/Input/flac/CMakeLists.txt
index 1d8062aba..10c46daf0 100644
--- a/src/plugins/Input/flac/CMakeLists.txt
+++ b/src/plugins/Input/flac/CMakeLists.txt
@@ -2,9 +2,6 @@ project(libflac)
cmake_minimum_required(VERSION 2.4.0)
-
-INCLUDE(UsePkgConfig)
-
# qt plugin
ADD_DEFINITIONS( -Wall )
ADD_DEFINITIONS(${QT_DEFINITIONS})
@@ -24,26 +21,15 @@ SET(QT_INCLUDES
include_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../qmmp)
-# libflac and taglib
-PKGCONFIG(flac FLAC_INCLUDE_DIR FLAC_LINK_DIR FLAC_LINK_FLAGS FLAC_CFLAGS)
-PKGCONFIG(taglib TAGLIB_INCLUDE_DIR TAGLIB_LINK_DIR TAGLIB_LINK_FLAGS TAGLIB_CFLAGS)
+# libflac
+pkg_search_module(FLAC flac)
IF(NOT FLAC_LINK_FLAGS)
SET(FLAC_LINK_FLAGS -lFLAC)
ENDIF(NOT FLAC_LINK_FLAGS)
-IF(NOT TAGLIB_LINK_FLAGS)
- SET(TAGLIB_LINK_FLAGS -ltag)
- SET(TAGLIB_INCLUDE_DIR /usr/include/taglib)
- SET(TAGLIB_CFLAGS -I/usr/include/taglib)
-ENDIF(NOT TAGLIB_LINK_FLAGS)
-
-include_directories(${FLAC_INCLUDE_DIR} ${TAGLIB_INCLUDE_DIR})
-link_directories(${FLAC_LINK_DIR} ${TAGLIB_LINK_DIR})
-
-ADD_DEFINITIONS(${FLAC_CFLAGS})
-ADD_DEFINITIONS(${TAGLIB_CFLAGS})
-
+include_directories(${FLAC_INCLUDE_DIRS} ${TAGLIB_INCLUDE_DIRS})
+link_directories(${FLAC_LIBRARY_DIRS} ${TAGLIB_LIBRARY_DIRS})
SET(libflac_SRCS
decoder_flac.cpp
@@ -75,8 +61,8 @@ QT4_WRAP_UI(libflac_UIS_H ${libflac_UIS})
# the UI file won't be wrapped!
include_directories(${CMAKE_CURRENT_BINARY_DIR})
-ADD_LIBRARY(flac SHARED ${libflac_SRCS} ${libflac_MOC_SRCS} ${libflac_UIS_H}
- ${libflac_RCC_SRCS})
-target_link_libraries(flac ${QT_LIBRARIES} -lqmmp ${FLAC_LINK_FLAGS} ${FLAC_CFLAGS} ${TAGLIB_LINK_FLAGS} ${TAGLIB_CFLAGS})
-install(TARGETS flac DESTINATION ${LIB_DIR}/qmmp/Input PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ)
-
+IF(FLAC_FOUND)
+ADD_LIBRARY(flac SHARED ${libflac_SRCS} ${libflac_MOC_SRCS} ${libflac_UIS_H} ${libflac_RCC_SRCS})
+target_link_libraries(flac ${QT_LIBRARIES} -lqmmp ${FLAC_LDLAGS} ${FLAC_CFLAGS} ${TAGLIB_LDFLAGS} ${TAGLIB_CFLAGS})
+install(TARGETS flac DESTINATION ${LIB_DIR}/qmmp/Input)
+ENDIF(FLAC_FOUND)
diff --git a/src/plugins/Input/mad/CMakeLists.txt b/src/plugins/Input/mad/CMakeLists.txt
index 9db01c3d1..1293c20e7 100644
--- a/src/plugins/Input/mad/CMakeLists.txt
+++ b/src/plugins/Input/mad/CMakeLists.txt
@@ -2,9 +2,6 @@ project(libmad)
cmake_minimum_required(VERSION 2.4.0)
-
-INCLUDE(UsePkgConfig)
-
# qt plugin
ADD_DEFINITIONS( -Wall )
ADD_DEFINITIONS(${QT_DEFINITIONS})
@@ -24,31 +21,11 @@ SET(QT_INCLUDES
include_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../qmmp)
-# libmad and taglib
-PKGCONFIG(mad MAD_INCLUDE_DIR MAD_LINK_DIR MAD_LINK_FLAGS MAD_CFLAGS)
-PKGCONFIG(taglib TAGLIB_INCLUDE_DIR TAGLIB_LINK_DIR TAGLIB_LINK_FLAGS TAGLIB_CFLAGS)
-
-IF(NOT MAD_LINK_FLAGS)
-PKGCONFIG(libmad MAD_INCLUDE_DIR MAD_LINK_DIR MAD_LINK_FLAGS MAD_CFLAGS)
-ENDIF(NOT MAD_LINK_FLAGS)
-
-IF(NOT MAD_LINK_FLAGS)
- MESSAGE("Can not find mad.pc")
- SET(MAD_LINK_FLAGS -lmad)
-ENDIF(NOT MAD_LINK_FLAGS)
-
-IF(NOT TAGLIB_LINK_FLAGS)
- SET(TAGLIB_LINK_FLAGS -ltag)
- SET(TAGLIB_INCLUDE_DIR /usr/include/taglib)
- SET(TAGLIB_CFLAGS -I/usr/include/taglib)
-ENDIF(NOT TAGLIB_LINK_FLAGS)
-
-include_directories(${MAD_INCLUDE_DIR} ${TAGLIB_INCLUDE_DIR})
-link_directories(${MAD_LINK_DIR} ${TAGLIB_LINK_DIR})
-
-#ADD_DEFINITIONS(${MAD_CFLAGS})
-ADD_DEFINITIONS(${TAGLIB_CFLAGS})
+# libmad
+pkg_search_module(MAD libmad mad)
+include_directories(${MAD_INCLUDE_DIRS} ${TAGLIB_INCLUDE_DIRS})
+link_directories(${MAD_LIBRARY_DIRS} ${TAGLIB_LIBRARY_DIRS})
SET(libmad_SRCS
decoder_mad.cpp
@@ -83,8 +60,8 @@ QT4_WRAP_UI(libmad_UIS_H ${libmad_UIS})
# the UI file won't be wrapped!
include_directories(${CMAKE_CURRENT_BINARY_DIR})
-ADD_LIBRARY(mad SHARED ${libmad_SRCS} ${libmad_MOC_SRCS} ${libmad_UIS_H}
- ${libmad_RCC_SRCS})
-
-target_link_libraries(mad ${QT_LIBRARIES} -lqmmp ${MAD_LINK_FLAGS} ${TAGLIB_LINK_FLAGS} ${TAGLIB_CFLAGS})
-install(TARGETS mad DESTINATION ${LIB_DIR}/qmmp/Input PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ)
+IF(MAD_FOUND)
+ADD_LIBRARY(mad SHARED ${libmad_SRCS} ${libmad_MOC_SRCS} ${libmad_UIS_H} ${libmad_RCC_SRCS})
+target_link_libraries(mad ${QT_LIBRARIES} -lqmmp ${MAD_LDFLAGS} ${MAD_CFLAGS} ${TAGLIB_LDFLAGS} ${TAGLIB_CFLAGS})
+install(TARGETS mad DESTINATION ${LIB_DIR}/qmmp/Input)
+ENDIF(MAD_FOUND)
diff --git a/src/plugins/Input/modplug/CMakeLists.txt b/src/plugins/Input/modplug/CMakeLists.txt
index 176c9aa85..5c63a7211 100644
--- a/src/plugins/Input/modplug/CMakeLists.txt
+++ b/src/plugins/Input/modplug/CMakeLists.txt
@@ -2,9 +2,6 @@ project(libmodplug)
cmake_minimum_required(VERSION 2.4.0)
-
-INCLUDE(UsePkgConfig)
-
# qt plugin
ADD_DEFINITIONS( -Wall )
ADD_DEFINITIONS(${QT_DEFINITIONS})
@@ -25,18 +22,10 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../qmmp)
# modplug
-PKGCONFIG(libmodplug MODPLUG_INCLUDE_DIR MODPLUG_LINK_DIR MODPLUG_LINK_FLAGS MODPLUG_CFLAGS)
-
-IF(NOT MODPLUG_LINK_FLAGS)
- SET(MODPLUG_LINK_FLAGS -lmodplug -lstdc++ -lm)
- SET(MODPLUG_INCLUDE_DIR /usr/include)
- SET(MODPLUG_CFLAGS -I/usr/include -I/usr/include/libmodplug)
- SET(MODPLUG_LINK_DIR /usr/lib)
-ENDIF(NOT MODPLUG_LINK_FLAGS)
+pkg_search_module(MODPLUG libmodplug)
-ADD_DEFINITIONS(${MODPLUG_CFLAGS})
-include_directories(${CMODPLUG_INCLUDE_DIR})
-link_directories(${MODPLUG_LINK_DIR})
+include_directories(${MODPLUG_INCLUDE_DIRS})
+link_directories(${MODPLUG_LIBRARY_DIRS})
SET(libmodplug_SRCS
decoder_modplug.cpp
@@ -73,9 +62,11 @@ QT4_WRAP_UI(libmodplug_UIS_H ${libmodplug_UIS})
# the UI file won't be wrapped!
include_directories(${CMAKE_CURRENT_BINARY_DIR})
+IF(MODPLUG_FOUND)
ADD_LIBRARY(modplug SHARED ${libmodplug_SRCS} ${libmodplug_MOC_SRCS} ${libmodplug_UIS_H}
${libmodplug_RCC_SRCS})
-target_link_libraries(modplug ${QT_LIBRARIES} -lqmmp ${MODPLUG_LINK_FLAGS} ${MODPLUG_CLAGS})
+target_link_libraries(modplug ${QT_LIBRARIES} -lqmmp ${MODPLUG_LDFLAGS} ${MODPLUG_CFLAGS})
install(TARGETS modplug DESTINATION ${LIB_DIR}/qmmp/Input)
+ENDIF(MODPLUG_FOUND)
diff --git a/src/plugins/Input/mpc/CMakeLists.txt b/src/plugins/Input/mpc/CMakeLists.txt
index dfe6e4446..34338f355 100644
--- a/src/plugins/Input/mpc/CMakeLists.txt
+++ b/src/plugins/Input/mpc/CMakeLists.txt
@@ -24,20 +24,12 @@ SET(QT_INCLUDES
include_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../qmmp)
-# libmpc and taglib
-PKGCONFIG(taglib TAGLIB_INCLUDE_DIR TAGLIB_LINK_DIR TAGLIB_LINK_FLAGS TAGLIB_CFLAGS)
+# libmpc
-IF(NOT TAGLIB_LINK_FLAGS)
- SET(TAGLIB_LINK_FLAGS -ltag)
- SET(TAGLIB_INCLUDE_DIR /usr/include/taglib)
- SET(TAGLIB_CFLAGS -I/usr/include/taglib)
-ENDIF(NOT TAGLIB_LINK_FLAGS)
-
-include_directories(${FLAC_INCLUDE_DIR} ${TAGLIB_INCLUDE_DIR})
-link_directories(${FLAC_LINK_DIR} ${TAGLIB_LINK_DIR})
-
-ADD_DEFINITIONS(${TAGLIB_CFLAGS})
+SET(MPC_FOUND TRUE CACHE BOOL INTERNAL) #add test
+include_directories(${TAGLIB_INCLUDE_DIRS})
+link_directories(${TAGLIB_LIBRARY_DIRS})
SET(libmpc_SRCS
decoder_mpc.cpp
@@ -69,14 +61,9 @@ QT4_WRAP_UI(libmpc_UIS_H ${libmpc_UIS})
# the UI file won't be wrapped!
include_directories(${CMAKE_CURRENT_BINARY_DIR})
+IF(MPC_FOUND)
ADD_LIBRARY(mpc SHARED ${libmpc_SRCS} ${libmpc_MOC_SRCS} ${libmpc_UIS_H}
${libmpc_RCC_SRCS})
-target_link_libraries(mpc ${QT_LIBRARIES} -lqmmp -lmpcdec ${TAGLIB_LINK_FLAGS} ${TAGLIB_CFLAGS})
-install(TARGETS mpc DESTINATION ${LIB_DIR}/qmmp/Input PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ)
-
-# clean remaining files
-
-SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES
- "CMakeCache.txt;Makefile;cmake_install.cmake"
-)
-
+target_link_libraries(mpc ${QT_LIBRARIES} -lqmmp -lmpcdec ${TAGLIB_LDFLAGS} ${TAGLIB_CFLAGS})
+install(TARGETS mpc DESTINATION ${LIB_DIR}/qmmp/Input)
+ENDIF(MPC_FOUND)
diff --git a/src/plugins/Input/sndfile/CMakeLists.txt b/src/plugins/Input/sndfile/CMakeLists.txt
index 3a660bf9d..630db0be3 100644
--- a/src/plugins/Input/sndfile/CMakeLists.txt
+++ b/src/plugins/Input/sndfile/CMakeLists.txt
@@ -2,12 +2,6 @@ project(libsndfile)
cmake_minimum_required(VERSION 2.4.0)
-
-INCLUDE(UsePkgConfig)
-#INCLUDE(FindQt4)
-
-#include(${QT_USE_FILE})
-
# qt plugin
ADD_DEFINITIONS( -Wall )
ADD_DEFINITIONS(${QT_DEFINITIONS})
@@ -28,19 +22,10 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../qmmp)
# libsndfile
-PKGCONFIG(sndfile SNDFILE_INCLUDE_DIR SNDFILE_LINK_DIR SNDFILE_LINK_FLAGS SNDFILE_CFLAGS)
-
-IF(NOT SNDFILE_LINK_FLAGS)
- SET(SNDFILE_LINK_FLAGS -lsndfile)
- SET(SNDFILE_INCLUDE_DIR /usr/include)
- SET(SNDFILE_CFLAGS -I/usr/include)
-ENDIF(NOT SNDFILE_LINK_FLAGS)
-
-include_directories(${SNDFILE_INCLUDE_DIR})
-link_directories(${SNDFILE_LINK_DIR})
-
-ADD_DEFINITIONS(${SNDFILE_CFLAGS})
+pkg_search_module(SNDFILE sndfile)
+include_directories(${SNDFILE_INCLUDE_DIRS})
+link_directories(${SNDFILE_LIBRARY_DIRS})
SET(libsndfile_SRCS
decoder_sndfile.cpp
@@ -63,11 +48,12 @@ QT4_WRAP_CPP(libsndfile_MOC_SRCS ${libsndfile_MOC_HDRS})
# the UI file won't be wrapped!
include_directories(${CMAKE_CURRENT_BINARY_DIR})
+IF(SNDFILE_FOUND)
ADD_LIBRARY(sndfile SHARED ${libsndfile_SRCS} ${libsndfile_MOC_SRCS} ${libsndfile_UIS_H}
${libsndfile_RCC_SRCS})
-
-target_link_libraries(sndfile ${QT_LIBRARIES} -lqmmp ${SNDFILE_LINK_FLAGS})
+target_link_libraries(sndfile ${QT_LIBRARIES} -lqmmp ${SNDFILE_LDFLAGS} ${SNDFILE_CFLAGS})
install(TARGETS sndfile DESTINATION ${LIB_DIR}/qmmp/Input)
+ENDIF(SNDFILE_FOUND)
diff --git a/src/plugins/Input/vorbis/CMakeLists.txt b/src/plugins/Input/vorbis/CMakeLists.txt
index 98b682ac1..bbfb26876 100644
--- a/src/plugins/Input/vorbis/CMakeLists.txt
+++ b/src/plugins/Input/vorbis/CMakeLists.txt
@@ -2,9 +2,6 @@ project(libvorbis)
cmake_minimum_required(VERSION 2.4.0)
-
-INCLUDE(UsePkgConfig)
-
# qt plugin
ADD_DEFINITIONS( -Wall )
ADD_DEFINITIONS(${QT_DEFINITIONS})
@@ -25,36 +22,10 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../qmmp)
# libvorbis and taglib
-PKGCONFIG(ogg OGG_INCLUDE_DIR OGG_LINK_DIR OGG_LINK_FLAGS OGG_CFLAGS)
-PKGCONFIG(vorbis VORBIS_INCLUDE_DIR VORBIS_LINK_DIR VORBIS_LINK_FLAGS VORBIS_CFLAGS)
-PKGCONFIG(vorbisfile VORBISFILE_INCLUDE_DIR VORBISFILE_LINK_DIR VORBISFILE_LINK_FLAGS VORBISFILE_CFLAGS)
-
-PKGCONFIG(taglib TAGLIB_INCLUDE_DIR TAGLIB_LINK_DIR TAGLIB_LINK_FLAGS TAGLIB_CFLAGS)
-
-IF(NOT OGG_LINK_FLAGS)
- SET(OGG_LINK_FLAGS -logg)
-ENDIF(NOT OGG_LINK_FLAGS)
-
-IF(NOT VORBIS_LINK_FLAGS)
- SET(VORBIS_LINK_FLAGS -lvorbis)
-ENDIF(NOT VORBIS_LINK_FLAGS)
-
-IF(NOT VORBISFILE_LINK_FLAGS)
- SET(VORBISFILE_LINK_FLAGS -lvorbisfile)
-ENDIF(NOT VORBISFILE_LINK_FLAGS)
-
-IF(NOT TAGLIB_LINK_FLAGS)
- SET(TAGLIB_LINK_FLAGS -ltag)
- SET(TAGLIB_INCLUDE_DIR /usr/include/taglib)
- SET(TAGLIB_CFLAGS -I/usr/include/taglib)
-ENDIF(NOT TAGLIB_LINK_FLAGS)
-
-include_directories(${VORBIS_INCLUDE_DIR} ${TAGLIB_INCLUDE_DIR})
-link_directories(${VORBIS_LINK_DIR} ${TAGLIB_LINK_DIR})
-
-#ADD_DEFINITIONS(${VORBIS_CFLAGS})
-ADD_DEFINITIONS(${TAGLIB_CFLAGS})
+pkg_check_modules(VORBIS ogg vorbis vorbisfile)
+include_directories(${VORBIS_INCLUDE_DIRS} ${TAGLIB_INCLUDE_DIRS})
+link_directories(${VORBIS_LIBRARY_DIRS} ${TAGLIB_LIBRARY_DIRS})
SET(libvorbis_SRCS
decoder_vorbis.cpp
@@ -86,7 +57,9 @@ QT4_WRAP_UI(libvorbis_UIS_H ${libvorbis_UIS})
# the UI file won't be wrapped!
include_directories(${CMAKE_CURRENT_BINARY_DIR})
+IF(VORBIS_FOUND)
ADD_LIBRARY(vorbis SHARED ${libvorbis_SRCS} ${libvorbis_MOC_SRCS} ${libvorbis_UIS_H}
${libvorbis_RCC_SRCS})
-target_link_libraries(vorbis ${QT_LIBRARIES} -lqmmp ${VORBIS_LINK_FLAGS} ${VORBISFILE_LINK_FLAGS} ${OGG_LINK_FLAGS} ${TAGLIB_LINK_FLAGS} ${TAGLIB_CFLAGS})
-install(TARGETS vorbis DESTINATION ${LIB_DIR}/qmmp/Input PERMISSIONS OWNER_WRITE OWNER_READ OWNER_EXECUTE GROUP_EXECUTE GROUP_READ WORLD_EXECUTE WORLD_READ)
+target_link_libraries(vorbis ${QT_LIBRARIES} -lqmmp ${VORBIS_LDFLAGS} ${VORBIS_CFLAGS} ${TAGLIB_LDFLAGS} ${TAGLIB_CFLAGS})
+install(TARGETS vorbis DESTINATION ${LIB_DIR}/qmmp/Input)
+ENDIF(VORBIS_FOUND)
diff --git a/src/plugins/Input/wavpack/CMakeLists.txt b/src/plugins/Input/wavpack/CMakeLists.txt
index 1fbd9adb0..a020955d0 100644
--- a/src/plugins/Input/wavpack/CMakeLists.txt
+++ b/src/plugins/Input/wavpack/CMakeLists.txt
@@ -2,9 +2,6 @@ project(libwavpack)
cmake_minimum_required(VERSION 2.4.0)
-
-INCLUDE(UsePkgConfig)
-
# qt plugin
ADD_DEFINITIONS( -Wall )
ADD_DEFINITIONS(${QT_DEFINITIONS})
@@ -24,19 +21,11 @@ SET(QT_INCLUDES
include_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../qmmp)
-# wavpack
-PKGCONFIG(wavpack WAVPACK_INCLUDE_DIR WAVPACK_LINK_DIR WAVPACK_LINK_FLAGS WAVPACK_CFLAGS)
+# wavpack
+pkg_search_module(WAVPACK wavpack)
-IF(NOT WAVPACK_LINK_FLAGS)
- SET(WAVPACK_LINK_FLAGS -lwavpack -lm)
- SET(WAVPACK_INCLUDE_DIR /usr/include)
- SET(WAVPACK_CFLAGS -I/usr/include)
- SET(WAVPACK_LINK_DIR /usr/lib)
-ENDIF(NOT WAVPACK_LINK_FLAGS)
-
-ADD_DEFINITIONS(${WAVPACK_CFLAGS})
-include_directories(${CWAVPACK_INCLUDE_DIR})
-link_directories(${WAVPACK_LINK_DIR})
+include_directories(${CWAVPACK_INCLUDE_DIRS})
+link_directories(${WAVPACK_LIBRARY_DIRS})
SET(libwavpack_SRCS
decoder_wavpack.cpp
@@ -68,9 +57,10 @@ QT4_WRAP_UI(libwavpack_UIS_H ${libwavpack_UIS})
# the UI file won't be wrapped!
include_directories(${CMAKE_CURRENT_BINARY_DIR})
+IF(WAVPACK_FOUND)
ADD_LIBRARY(wavpack SHARED ${libwavpack_SRCS} ${libwavpack_MOC_SRCS} ${libwavpack_UIS_H}
${libwavpack_RCC_SRCS})
-target_link_libraries(wavpack ${QT_LIBRARIES} -lqmmp ${WAVPACK_LINK_FLAGS} ${WAVPACK_CLAGS})
+target_link_libraries(wavpack ${QT_LIBRARIES} -lqmmp ${WAVPACK_LDFLAGS} ${WAVPACK_CLAGS})
install(TARGETS wavpack DESTINATION ${LIB_DIR}/qmmp/Input)
-
+ENDIF(WAVPACK_FOUND)