project(QtSvg)

# project definition

set(QtSvg_TYPESYSTEM
${typesystem_SOURCE_DIR}/typesystem_svg.xml
)

set(QtSvg_SRC
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/QtSvg/qgraphicssvgitem_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/QtSvg/qsvggenerator_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/QtSvg/qsvgrenderer_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/QtSvg/qsvgwidget_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/QtSvg/qtsvg_globals_wrapper.cpp
${CMAKE_CURRENT_BINARY_DIR}/${BINDING_NAME}/QtSvg/qtsvg_module_wrapper.cpp
)

add_custom_command(OUTPUT ${QtSvg_SRC}
COMMAND ${GENERATOR} ${GENERATOR_EXTRA_FLAGS}
        ${CMAKE_SOURCE_DIR}/data/global.h
        --include-paths=${QT_INCLUDE_DIR}:${QT_QTCORE_INCLUDE_DIR}:${QT_QTGUI_INCLUDE_DIR}:${QT_QTGUI_INCLUDE_DIR}
        --typesystem-paths=${typesystem_SOURCE_DIR}
        --output-directory=${CMAKE_CURRENT_BINARY_DIR}
        --license-file=${CMAKE_SOURCE_DIR}/data/licensecomment.txt
        ${QtSvg_TYPESYSTEM}
WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
COMMENT "Running generator..."
)

include_directories(${CMAKE_CURRENT_SOURCE_DIR}
                    ${CMAKE_CURRENT_BINARY_DIR}
                    ${CMAKE_SOURCE_DIR}
                    ${QT_INCLUDE_DIR}
                    ${QT_QTCORE_INCLUDE_DIR}
                    ${QT_GUI_INCLUDE_DIR}
                    ${QT_QTSVG_INCLUDE_DIR}
                    ${Boost_INCLUDE_DIR}
                    ${PYTHON_INCLUDE_PATH}
                    ${QtGui_SOURCE_DIR}
                    ${pysidebase_SOURCE_DIR})
add_library(QtSvg MODULE ${QtSvg_SRC})
set_property(TARGET QtSvg PROPERTY PREFIX "")
target_link_libraries(QtSvg
                      ${Boost_PYTHON_LIBRARY}
                      ${PYTHON_LIBRARIES}
                      ${QT_QTCORE_LIBRARY}
                      ${QT_QTGUI_LIBRARY}
                      ${QT_QTSVG_LIBRARY}
                      pysidebase)

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