project(phonon)
# project definition
set(phonon_TYPESYSTEM
${typesystem_SOURCE_DIR}/typesystem_phonon.xml
)

set(phonon_GENERATED_SRC
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_abstractaudiooutput_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_abstractmediastream_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_abstractvideooutput_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_addoninterface_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_audiocapturedevice_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_audiochanneldescription_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_audiooutputdevicemodel_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_audiooutputdevice_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_audiooutput_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_backendcapabilities_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_backendinterface_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_effectdescriptionmodel_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_effectdescription_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_effectinterface_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_effectparameter_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_effectwidget_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_effect_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_globals_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_mediacontroller_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_medianode_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_mediaobjectinterface_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_mediaobject_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_mediasource_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_module_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_path_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_platformplugin_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_seekslider_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_streaminterface_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_subtitledescription_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_videoplayer_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_videowidgetinterface_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_videowidget_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_volumefadereffect_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_volumefaderinterface_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_volumeslider_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/phonon/phonon_wrapper.cpp
)

set(phonon_GLUE_CODE
${CMAKE_CURRENT_SOURCE_DIR}/glue/phonon_backendcapabilities_notifier_wrapper.cpp
)

set(phonon_SRC
${phonon_GENERATED_SRC}
${phonon_GLUE_CODE}
)

set(QT_INCLUDE_DIR
    ${QT_INCLUDE_DIR}:${QT_PHONON_INCLUDE_DIR})

execute_generator(phonon phonon_GENERATED_SRC)

include_directories(${CMAKE_CURRENT_SOURCE_DIR}/glue
                    ${CMAKE_SOURCE_DIR}
                    ${QT_INCLUDE_DIR}
                    ${QT_INCLUDE_DIR}/Qt
                    ${QT_QTCORE_INCLUDE_DIR}
                    ${QT_PHONON_INCLUDE_DIR}
                    ${PYTHON_INCLUDE_PATH}
                    ${Boost_INCLUDE_DIR}
                    ${pysidebase_SOURCE_DIR})
add_library(phonon MODULE ${phonon_SRC})
set_target_properties(phonon PROPERTIES
                        PREFIX "")
target_link_libraries(phonon
                      ${Boost_PYTHON_LIBRARY}
                      ${PYTHON_LIBRARIES}
                      ${QT_QTCORE_LIBRARY}
                      ${QT_QTGUI_LIBRARY}
                      ${QT_PHONON_LIBRARY}
                      pysidebase)

# install
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/phonon.so
        DESTINATION ${SITE_PACKAGE}/${BINDING_NAME})
