aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt1
-rw-r--r--src/plugins/Input/CMakeLists.txt5
-rw-r--r--src/plugins/Input/sid/CMakeLists.txt77
3 files changed, 83 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 135e258dd..a3f31e30f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -145,6 +145,7 @@ PRINT_SUMMARY ("CD Audio support .................." USE_CDA CDIO_FOUND)
PRINT_SUMMARY ("Midi support ......................" USE_MIDI WILDMIDI_FOUND)
PRINT_SUMMARY ("Game music support ................" USE_GME GME_FOUND)
PRINT_SUMMARY ("Ogg Opus support .................." USE_OPUS OPUS_FOUND)
+PRINT_SUMMARY ("SID support ......................." USE_SID SIDPLAYFP_FOUND)
MESSAGE("")
MESSAGE("Output Plugins:")
diff --git a/src/plugins/Input/CMakeLists.txt b/src/plugins/Input/CMakeLists.txt
index 1eb17ac9c..4f8eda794 100644
--- a/src/plugins/Input/CMakeLists.txt
+++ b/src/plugins/Input/CMakeLists.txt
@@ -13,6 +13,7 @@ SET(USE_CDA TRUE CACHE BOOL "enable/disable cd audio support")
SET(USE_MIDI TRUE CACHE BOOL "enable/disable midi support")
SET(USE_GME TRUE CACHE BOOL "enable/disable game music plugin")
SET(USE_OPUS TRUE CACHE BOOL "enable/disable opus plugin")
+SET(USE_SID TRUE CACHE BOOL "enable/disable sid plugin")
IF(USE_MAD AND TAGLIB_FOUND)
@@ -74,3 +75,7 @@ ENDIF(USE_GME)
IF(USE_OPUS AND TAGLIB_FOUND)
add_subdirectory(opus)
ENDIF(USE_OPUS AND TAGLIB_FOUND)
+
+IF(USE_SID)
+add_subdirectory(sid)
+ENDIF(USE_SID)
diff --git a/src/plugins/Input/sid/CMakeLists.txt b/src/plugins/Input/sid/CMakeLists.txt
new file mode 100644
index 000000000..706099e09
--- /dev/null
+++ b/src/plugins/Input/sid/CMakeLists.txt
@@ -0,0 +1,77 @@
+project(libsid)
+
+INCLUDE(CheckIncludeFile)
+cmake_minimum_required(VERSION 2.4.7)
+
+if(COMMAND cmake_policy)
+cmake_policy(SET CMP0003 NEW)
+endif(COMMAND cmake_policy)
+
+
+# qt plugin
+ADD_DEFINITIONS( -Wall )
+ADD_DEFINITIONS(${QT_DEFINITIONS})
+ADD_DEFINITIONS(-DQT_PLUGIN)
+ADD_DEFINITIONS(-DQT_NO_DEBUG)
+ADD_DEFINITIONS(-DQT_SHARED)
+ADD_DEFINITIONS(-DQT_THREAD)
+
+include_directories(${CMAKE_CURRENT_BINARY_DIR})
+
+SET(QT_INCLUDES
+ ${QT_INCLUDES}
+ ${CMAKE_CURRENT_SOURCE_DIR}/../../../
+)
+
+# libqmmp
+include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../../)
+link_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../qmmp)
+
+# libsidplayfp
+pkg_search_module(SIDPLAYFP libsidplayfp>=1.0.1)
+
+include_directories(${SIDPLAYFP_INCLUDE_DIRS})
+link_directories(${SIDPLAYFP_LIBRARY_DIRS})
+ADD_DEFINITIONS(${SIDPLAYFP_CFLAGS})
+
+SET(libsid_SRCS
+ decoder_sid.cpp
+ decodersidfactory.cpp
+ settingsdialog.cpp
+ sidhelper.cpp
+)
+
+SET(libsid_HDRS
+ decoder_sid.h
+ sidhelper.h
+)
+
+SET(libsid_MOC_HDRS
+ decodersidfactory.h
+ settingsdialog.h
+)
+
+SET(libsid_RCCS translations/translations.qrc)
+
+QT4_ADD_RESOURCES(libsid_RCC_SRCS ${libsid_RCCS})
+
+QT4_WRAP_CPP(libsid_MOC_SRCS ${libsid_MOC_HDRS})
+
+# user interface
+
+SET(libsid_UIS
+ settingsdialog.ui
+)
+
+QT4_WRAP_UI(libsid_UIS_H ${libsid_UIS})
+# Don't forget to include output directory, otherwise
+# the UI file won't be wrapped!
+include_directories(${CMAKE_CURRENT_BINARY_DIR})
+
+IF(SIDPLAYFP_FOUND)
+ADD_LIBRARY(sid MODULE ${libsid_SRCS} ${libsid_MOC_SRCS} ${libsid_UIS_H}
+ ${libsid_RCC_SRCS} ${libsid_HDRS})
+add_dependencies(sid qmmp)
+target_link_libraries(sid ${QT_LIBRARIES} -lqmmp ${SIDPLAYFP_LDFLAGS})
+install(TARGETS sid DESTINATION ${LIB_DIR}/qmmp/Input)
+ENDIF(SIDPLAYFP_FOUND)