
include_directories( ${QT_INCLUDES} ${QJSON_INCLUDE_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} )

set ( LIBMYGPO_QT_SRC
        Settings.cpp
        AddRemoveResult.cpp
        Tag.cpp 
        JsonCreator.cpp 
        Podcast.cpp
        Episode.cpp 
        EpisodeAction.cpp
        EpisodeActionList.cpp
        ApiRequest.cpp
        RequestHandler.cpp
        UrlBuilder.cpp
        TagList.cpp
        EpisodeList.cpp
        PodcastList.cpp
        DeviceUpdates.cpp
        DeviceList.cpp
        Device.cpp
)

set ( LIBMYGPO_QT_MOC_H
        Podcast.h
        PodcastList.h
        Episode.h
        EpisodeList.h
        Tag.h
        TagList.h
        Device.h
        DeviceList.h
        DeviceUpdates.h
        EpisodeAction.h
        EpisodeActionList.h
        Settings.h
        AddRemoveResult.h
)

set ( LIBMYGPO_QT_INSTALL_H
        ApiRequest.h
        mygpo_export.h
        Podcast.h
        PodcastList.h
        Episode.h
        EpisodeList.h
        Tag.h
        TagList.h
        Device.h
        DeviceList.h
        DeviceUpdates.h
        EpisodeAction.h
        EpisodeActionList.h
        Settings.h
        AddRemoveResult.h
)

QT4_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${LIBMYGPO_QT_MOC_H} )

QT4_GENERATE_MOC(PodcastList.cpp PodcastList.moc)
QT4_GENERATE_MOC(EpisodeList.cpp EpisodeList.moc)
QT4_GENERATE_MOC(Episode.cpp Episode.moc)
QT4_GENERATE_MOC(EpisodeAction.cpp EpisodeAction.moc)
QT4_GENERATE_MOC(EpisodeActionList.cpp EpisodeActionList.moc)
QT4_GENERATE_MOC(Podcast.cpp Podcast.moc)
QT4_GENERATE_MOC(AddRemoveResult.cpp AddRemoveResult.moc)
QT4_GENERATE_MOC(TagList.cpp TagList.moc)
QT4_GENERATE_MOC(Tag.cpp Tag.moc)
QT4_GENERATE_MOC(Settings.cpp Settings.moc)
QT4_GENERATE_MOC(DeviceUpdates.cpp DeviceUpdates.moc)
QT4_GENERATE_MOC(DeviceList.cpp DeviceList.moc)
QT4_GENERATE_MOC(Device.cpp Device.moc)

add_library( mygpo-qt SHARED ${LIBMYGPO_QT_SRC} ${LIBMYGPO_QT_MOC_SRC} PodcastList.moc EpisodeList.moc Episode.moc EpisodeAction.moc EpisodeActionList.moc Podcast.moc AddRemoveResult.moc TagList.moc Tag.moc Settings.moc DeviceUpdates.moc DeviceList.moc Device.moc)

target_link_libraries( mygpo-qt ${QJSON_LIBRARIES} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY}  )
set_target_properties( mygpo-qt PROPERTIES VERSION ${MYGPO_LIB_VERSION} SOVERSION ${MYGPO_LIB_VERSION_SONAME} DEFINE_SYMBOL MYGPO_MAKEDLL)
install( TARGETS mygpo-qt DESTINATION lib${LIB_SUFFIX} )

install( FILES ${LIBMYGPO_QT_INSTALL_H} DESTINATION  include/mygpo-qt COMPONENT Devel )
