aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt5
-rw-r--r--qmmp.pri1
-rw-r--r--src/plugins/Input/CMakeLists.txt5
-rw-r--r--src/plugins/Input/Input.pro8
-rw-r--r--src/plugins/Input/wildmidi/CMakeLists.txt73
5 files changed, 90 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 706a5501b..b02bbeb85 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -110,8 +110,9 @@ PRINT_SUMMARY ("WavPack support ..................." USE_WAVPACK WAVPACK_FOUND)
PRINT_SUMMARY ("WMA support ......................." USE_FFMPEG FFMPEG_FOUND)
PRINT_SUMMARY ("AAC support ......................." USE_AAC FAAD_FOUND)
PRINT_SUMMARY ("CUE sheet support ................." USE_CUE 1)
-PRINT_SUMMARY ("Mplayer support...................." USE_MPLAYER 1)
-PRINT_SUMMARY ("CD Audio support..................." USE_CDA CDIO_FOUND)
+PRINT_SUMMARY ("Mplayer support ..................." USE_MPLAYER 1)
+PRINT_SUMMARY ("CD Audio support .................." USE_CDA CDIO_FOUND)
+PRINT_SUMMARY ("Midi support ......................" USE_MIDI WILDMIDI_FOUND)
MESSAGE("")
MESSAGE("Output Plugins:")
diff --git a/qmmp.pri b/qmmp.pri
index 1d2f9abb9..8f0edbe51 100644
--- a/qmmp.pri
+++ b/qmmp.pri
@@ -18,6 +18,7 @@ CONFIG += FLAC_PLUGIN
CONFIG += MUSEPACK_PLUGIN
CONFIG += FFMPEG_PLUGIN
CONFIG += MODPLUG_PLUGIN
+CONFIG += WILDMIDI_PLUGIN
CONFIG += OSS_PLUGIN
CONFIG += PULSE_AUDIO_PLUGIN
CONFIG += ALSA_PLUGIN
diff --git a/src/plugins/Input/CMakeLists.txt b/src/plugins/Input/CMakeLists.txt
index fee5e2e32..57b7a6ada 100644
--- a/src/plugins/Input/CMakeLists.txt
+++ b/src/plugins/Input/CMakeLists.txt
@@ -12,6 +12,7 @@ SET(USE_MODPLUG TRUE CACHE BOOL "enable/disable modplug plugin")
SET(USE_AAC TRUE CACHE BOOL "enable/disable aac plugin")
SET(USE_CUE TRUE CACHE BOOL "enable/disable cue plugin")
SET(USE_CDA TRUE CACHE BOOL "enable/disable cd audio support")
+SET(USE_MIDI TRUE CACHE BOLL "enable/disable midi support")
pkg_check_modules(TAGLIB taglib)
@@ -58,3 +59,7 @@ ENDIF(USE_CUE)
IF(USE_CDA)
add_subdirectory(cdaudio)
ENDIF(USE_CDA)
+
+IF(USE_MIDI)
+add_subdirectory(wildmidi)
+ENDIF(USE_MIDI)
diff --git a/src/plugins/Input/Input.pro b/src/plugins/Input/Input.pro
index a835115a3..d39d50e0c 100644
--- a/src/plugins/Input/Input.pro
+++ b/src/plugins/Input/Input.pro
@@ -46,4 +46,12 @@ contains(CONFIG, CDAUDIO_PLUGIN){
message(* CD Audio plugin enabled *)
message(***************************)
}
+
+contains(CONFIG, WILDMIDI_PLUGIN){
+ SUBDIRS += wildmidi
+ message(*******************)
+ message(* WildMidi Plugin *)
+ message(*******************)
+}
+
}
diff --git a/src/plugins/Input/wildmidi/CMakeLists.txt b/src/plugins/Input/wildmidi/CMakeLists.txt
new file mode 100644
index 000000000..8eddea85a
--- /dev/null
+++ b/src/plugins/Input/wildmidi/CMakeLists.txt
@@ -0,0 +1,73 @@
+project(libwildmidi)
+
+cmake_minimum_required(VERSION 2.6.0)
+
+if(COMMAND cmake_policy)
+ cmake_policy(SET CMP0003 NEW)
+ cmake_policy(SET CMP0005 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)
+
+
+SET(libwildmidi_SRCS
+ decoder_wildmidi.cpp
+ decoderwildmidifactory.cpp
+ settingsdialog.cpp
+)
+
+SET(libwildmidi_MOC_HDRS
+ decoder_wildmidi.h
+ decoderwildmidifactory.h
+ settingsdialog.h
+)
+
+# libwildmidi
+
+CHECK_INCLUDE_FILE(wildmidi_lib.h WILDMIDI_FOUND)
+
+IF(WILDMIDI_FOUND)
+SET(WILDMIDI_FOUND TRUE CACHE INTERNAL "wildmidi")
+ENDIF(WILDMIDI_FOUND)
+
+SET(libwildmidi_RCCS translations/translations.qrc)
+
+QT4_ADD_RESOURCES(libwildmidi_RCC_SRCS ${libwildmidi_RCCS})
+
+QT4_WRAP_CPP(libwildmidi_MOC_SRCS ${libwildmidi_MOC_HDRS})
+
+# user interface
+
+
+SET(libwildmidi_UIS
+ settingsdialog.ui
+)
+
+QT4_WRAP_UI(libwildmidi_UIS_H ${libwildmidi_UIS})
+# Don't forget to include output directory, otherwise
+# the UI file won't be wrapped!
+include_directories(${CMAKE_CURRENT_BINARY_DIR})
+
+IF(WILDMIDI_FOUND)
+ADD_LIBRARY(wildmidi MODULE ${libwildmidi_SRCS} ${libwildmidi_MOC_SRCS} ${libwildmidi_UIS_H} ${libwildmidi_RCC_SRCS})
+add_dependencies(wildmidi qmmp)
+target_link_libraries(wildmidi ${QT_LIBRARIES} -lqmmp -lWildMidi)
+install(TARGETS wildmidi DESTINATION ${LIB_DIR}/qmmp/Input)
+ENDIF(WILDMIDI_FOUND)