-add_subdirectory(beziercurve)
-add_subdirectory(colorcorrection)
-add_subdirectory(kiss_fft)
-add_subdirectory(mimetypes)
-add_subdirectory(onmonitoritems)
-add_subdirectory(rotoscoping)
-add_subdirectory(widgets)
+set(QT_USE_QTDBUS 1)
+set(QT_USE_QTOPENGL 1)
+set(QT_USE_QTSCRIPT 1)
+set(QT_USE_QTSVG 1)
+set(QT_USE_QTXML 1)
+find_package(OpenGL REQUIRED)
+if(APPLE)
+ find_package(SDL REQUIRED)
+endif(APPLE)
macro_optional_find_package(Nepomuk)
macro_optional_find_package(QJSON)
-include(FindQImageBlitz)
+option(WITH_V4L "Build capture support with Video4Linux" ON)
+option(WITH_JogShuttle "Build Jog/Shuttle support" ON)
-include_directories(
- ${KDE4_INCLUDE_DIR}
- ${KDE4_INCLUDE_DIR}/KDE
- ${QT_INCLUDES}
- ${LIBMLT_INCLUDE_DIR}
- ${LIBMLTPLUS_INCLUDE_DIR}
- ${QDBUS_INCLUDE_DIRS}
- ${CMAKE_SOURCE_DIR}
- ${CMAKE_BINARY_DIR}
- ${CMAKE_SOURCE_DIR}/src/audioscopes
- ${CMAKE_SOURCE_DIR}/src/beziercurve
- ${CMAKE_SOURCE_DIR}/src/colorcorrection
- ${CMAKE_SOURCE_DIR}/src/kiss_fft
- ${CMAKE_SOURCE_DIR}/src/onmonitoritems
- ${CMAKE_SOURCE_DIR}/src/onmonitoritems/rotoscoping
- ${CMAKE_SOURCE_DIR}/src/widgets
-)
-if(Nepomuk_FOUND)
- include_directories(NEPOMUK_INCLUDES)
- set(optional_libs ${NEPOMUK_LIBRARIES})
- add_definitions(-DNEPOMUK)
-endif(Nepomuk_FOUND)
+if(WITH_V4L)
+ # This can be changed to support FreeBSD as soon as we move to a newer V4L2
+ # header.
+ find_package(LibV4L2)
+ macro_log_feature(LIBV4L2_FOUND "libv4l" "Collection of video4linux support libraries" "http://hansdegoede.livejournal.com, http://linuxtv.org/hg/~hgoede/libv4l/" FALSE "" "Required for better webcam support")
+ if(LIBV4L2_FOUND)
+ set(BUILD_V4L TRUE)
+ endif(LIBV4L2_FOUND)
+endif(WITH_V4L)
-if(QIMAGEBLITZ_FOUND)
- include_directories(QIMAGEBLITZ_INCLUDES)
- set(optional_libs ${optional_libs} ${QIMAGEBLITZ_LIBRARIES})
- add_definitions(-DQIMAGEBLITZ)
- message(STATUS "Found QImageBlitz: ${QIMAGEBLITZ_LIBRARIES}")
-else(QIMAGEBLITZ_FOUND)
- message(STATUS "Install QImageBlitz devel package for improved stopmotion features")
-endif(QIMAGEBLITZ_FOUND)
+if(WITH_JogShuttle)
+ check_include_files(linux/input.h HAVE_LINUX_INPUT_H)
+ if(HAVE_LINUX_INPUT_H)
+ set(BUILD_JogShuttle TRUE)
+ endif(HAVE_LINUX_INPUT_H)
+endif(WITH_JogShuttle)
-if(QJSON_FOUND)
- include_directories(QJSON_INCLUDE_DIR)
- set(optional_libs ${optional_libs} ${QJSON_LIBRARIES})
- add_definitions(-DQJSON)
-else(QJSON_FOUND)
- message(STATUS "Install QJson to use the rotoscoping filter")
-endif(QJSON_FOUND)
+macro_log_feature(QT_QTOPENGL_FOUND
+ "QtOpenGL"
+ "Qt bindings for the OpenGL library"
+ "http://qt.nokia.com/products/qt"
+ TRUE
+ ${QT_MIN_VERSION}
+ "QtOpenGL library and headers (most likely called libqt4-opengl and libqt4-opengl-dev)"
+)
-if(Q_WS_X11)
- include_directories(${X11_Xlib_INCLUDE_PATH})
-endif(Q_WS_X11)
+macro_log_feature(QT_QTSCRIPT_FOUND
+ "QtScript"
+ "Qt module providing core scripting facilities"
+ "http://qt.nokia.com/products/qt"
+ TRUE
+ ${QT_MIN_VERSION}
+ "QtScript library (most likely called libqt4-script)"
+)
if(APPLE)
- find_package(OpenGL)
- set(QT_USE_QTOPENGL TRUE)
-else(APPLE)
- macro_optional_find_package(OpenGL)
+ macro_log_feature(SDL_FOUND
+ "SDL"
+ "Cross-platform multimedia library"
+ "http://www.libsdl.org"
+ TRUE
+ )
endif(APPLE)
+macro_log_feature(Nepomuk_FOUND
+ "Nepomuk"
+ "Support for the Nepomuk semantic desktop system"
+ "http://nepomuk.semanticdesktop.org"
+)
+
+find_package(NepomukCore QUIET)
+set_package_properties(NepomukCore PROPERTIES DESCRIPTION "The Nepomuk Core libraries" URL "http://www.kde.org" TYPE RECOMMENDED PURPOSE "Support for the Nepomuk semantic desktop system")
-link_libraries(
- ${LIBMLT_LIBRARY}
- ${LIBMLTPLUS_LIBRARY}
- ${optional_libs}
+
+macro_log_feature(QJSON_FOUND
+ "QJson"
+ "Qt-based library that maps JSON data to QVariant objects"
+ "http://qjson.sourceforge.net"
+ FALSE
+ ""
+ "Required to build the rotoscoping filter and for Freesound.org queries"
)
-kde4_add_ui_files(kdenlive_UI
- widgets/timeline_ui.ui
- widgets/recmonitor_ui.ui
+
+add_subdirectory(beziercurve)
+add_subdirectory(colorcorrection)
+add_subdirectory(commands)
+add_subdirectory(lib)
+add_subdirectory(projecttree)
+add_subdirectory(utils)
+add_subdirectory(databackup)
+add_subdirectory(effectstack)
+add_subdirectory(mimetypes)
+add_subdirectory(onmonitoritems)
+add_subdirectory(scopes)
+add_subdirectory(simplekeyframes)
+add_subdirectory(stopmotion)
+
+if(QJSON_FOUND)
+ add_subdirectory(onmonitoritems/rotoscoping)
+ add_subdirectory(rotoscoping)
+endif(QJSON_FOUND)
+
+if(BUILD_V4L)
+ add_subdirectory(v4l)
+endif(BUILD_V4L)
+
+list(APPEND kdenlive_SRCS
+ main.cpp
+ mainwindow.cpp
+
+ KoSliderCombo.cpp
+ abstractclipitem.cpp
+ abstractgroupitem.cpp
+ abstractmonitor.cpp
+ archivewidget.cpp
+ choosecolorwidget.cpp
+ clipdurationdialog.cpp
+ clipitem.cpp
+ clipmanager.cpp
+ clipproperties.cpp
+ cliptranscode.cpp
+ clipstabilize.cpp
+ colorpickerwidget.cpp
+ colorplaneexport.cpp
+ colortools.cpp
+ complexparameter.cpp
+ cornerswidget.cpp
+ customruler.cpp
+ customtrackscene.cpp
+ customtrackview.cpp
+ definitions.cpp
+ docclipbase.cpp
+ documentchecker.cpp
+ documentvalidator.cpp
+ doubleparameterwidget.cpp
+ dragvalue.cpp
+ dvdwizard.cpp
+ dvdwizardchapters.cpp
+ dvdwizardmenu.cpp
+ dvdwizardvob.cpp
+ effectslist.cpp
+ effectslistview.cpp
+ effectslistwidget.cpp
+ effectstackedit.cpp
+ encodingprofilesdialog.cpp
+ folderprojectitem.cpp
+ gentime.cpp
+ geometryval.cpp
+ geometrywidget.cpp
+ graphicsscenerectmove.cpp
+ guide.cpp
+ headertrack.cpp
+ initeffects.cpp
+ kdenlivedoc.cpp
+ kdenlivesettingsdialog.cpp
+ keyframeedit.cpp
+ keyframehelper.cpp
+ kis_cubic_curve.cpp
+ kis_curve_widget.cpp
+ kthumb.cpp
+ managecapturesdialog.cpp
+ markerdialog.cpp
+ mltdevicecapture.cpp
+ monitor.cpp
+ monitoreditwidget.cpp
+ monitormanager.cpp
+ monitorscene.cpp
+ noteswidget.cpp
+ parameterplotter.cpp
+ positionedit.cpp
+ profilesdialog.cpp
+ projectitem.cpp
+ projectlist.cpp
+ projectlistview.cpp
+ projectsettings.cpp
+ recmonitor.cpp
+ renderer.cpp
+ renderwidget.cpp
+ slideshowclip.cpp
+ smallruler.cpp
+ spacerdialog.cpp
+ statusbarmessagelabel.cpp
+ subprojectitem.cpp
+ timecode.cpp
+ timecodedisplay.cpp
+ titledocument.cpp
+ titlewidget.cpp
+ trackdialog.cpp
+ tracksconfigdialog.cpp
+ trackview.cpp
+ transition.cpp
+ transitionsettings.cpp
+ unicodedialog.cpp
+ wizard.cpp
+)
+
+kde4_add_ui_files(kdenlive_UIS
+ widgets/addtrack_ui.ui
+ widgets/archivewidget_ui.ui
+ widgets/audiospectrum_ui.ui
+ widgets/backupdialog_ui.ui
+ widgets/bezierspline_ui.ui
+ widgets/boolval_ui.ui
+ widgets/clipdurationdialog_ui.ui
+ widgets/clipproperties_ui.ui
+ widgets/cliptranscode_ui.ui
+ widgets/collapsiblewidget_ui.ui
+ widgets/clipstabilize_ui.ui
widgets/colorclip_ui.ui
- widgets/slideshowclip_ui.ui
- widgets/configmisc_ui.ui
+ widgets/colorplaneexport_ui.ui
+ widgets/configcapture_ui.ui
widgets/configenv_ui.ui
- widgets/configtimeline_ui.ui
+ widgets/configjogshuttle_ui.ui
+ widgets/configmisc_ui.ui
+ widgets/configproject_ui.ui
widgets/configsdl_ui.ui
- widgets/configcapture_ui.ui
+ widgets/configtimeline_ui.ui
widgets/configtranscode_ui.ui
- widgets/configproject_ui.ui
+ widgets/dvdwizardchapters_ui.ui
+ widgets/dvdwizardmenu_ui.ui
+ widgets/dvdwizardstatus_ui.ui
+ widgets/dvdwizardvob_ui.ui
widgets/effectlist_ui.ui
widgets/effectstack_ui.ui
- widgets/profiledialog_ui.ui
- widgets/projectsettings_ui.ui
+ widgets/effectstack2_ui.ui
+ widgets/freesound_ui.ui
+ widgets/geometryval_ui.ui
+ widgets/geometrywidget_ui.ui
+ widgets/histogram_ui.ui
+ widgets/keyframedialog_ui.ui
+ widgets/keyframeeditor_ui.ui
widgets/keyframewidget_ui.ui
widgets/listval_ui.ui
- widgets/wipeval_ui.ui
- widgets/boolval_ui.ui
- widgets/titlewidget_ui.ui
- widgets/unicodedialog_ui.ui
- widgets/timelinebuttons_ui.ui
+ widgets/managecaptures_ui.ui
+ widgets/manageencodingprofile_ui.ui
+ widgets/markerdialog_ui.ui
+ widgets/missingclips_ui.ui
+ widgets/monitoreditwidget_ui.ui
+ widgets/profiledialog_ui.ui
+ widgets/projectsettings_ui.ui
+ widgets/recmonitor_ui.ui
widgets/renderwidget_ui.ui
+ widgets/rgbparade_ui.ui
widgets/saveprofile_ui.ui
- widgets/transitionsettings_ui.ui
- widgets/configjogshuttle_ui.ui
- widgets/trackheader_ui.ui
- widgets/clipproperties_ui.ui
- widgets/markerdialog_ui.ui
- widgets/keyframedialog_ui.ui
- widgets/clipdurationdialog_ui.ui
- widgets/managecaptures_ui.ui
- widgets/geometryval_ui.ui
- widgets/wizardstandard_ui.ui
- widgets/wizardextra_ui.ui
- widgets/wizardcapture_ui.ui
- widgets/wizardcheck_ui.ui
- widgets/wizardmltcheck_ui.ui
+ widgets/slideshowclip_ui.ui
+ widgets/smconfig_ui.ui
widgets/spacerdialog_ui.ui
- widgets/addtrack_ui.ui
- widgets/dvdwizardvob_ui.ui
- widgets/dvdwizardmenu_ui.ui
- widgets/dvdwizardstatus_ui.ui
- widgets/dvdwizardchapters_ui.ui
- widgets/missingclips_ui.ui
- widgets/cliptranscode_ui.ui
+ widgets/spectrogram_ui.ui
+ widgets/stopmotion_ui.ui
widgets/templateclip_ui.ui
- widgets/keyframeeditor_ui.ui
+ widgets/timeline_ui.ui
+ widgets/timelinebuttons_ui.ui
+ widgets/titlewidget_ui.ui
+ widgets/trackheader_ui.ui
widgets/tracksconfigdialog_ui.ui
+ widgets/transitionsettings_ui.ui
+ widgets/unicodewidget_ui.ui
widgets/urlval_ui.ui
widgets/vectorscope_ui.ui
- widgets/colorplaneexport_ui.ui
widgets/waveform_ui.ui
- widgets/rgbparade_ui.ui
- widgets/histogram_ui.ui
- widgets/geometrywidget_ui.ui
- widgets/stopmotion_ui.ui
- widgets/audiospectrum_ui.ui
- widgets/spectrogram_ui.ui
- widgets/smconfig_ui.ui
- widgets/bezierspline_ui.ui
- widgets/monitoreditwidget_ui.ui
- widgets/archivewidget_ui.ui
- widgets/manageencodingprofile_ui.ui
+ widgets/wipeval_ui.ui
+ widgets/wizardcapture_ui.ui
+ widgets/wizardcheck_ui.ui
+ widgets/wizardextra_ui.ui
+ widgets/wizardmltcheck_ui.ui
+ widgets/wizardstandard_ui.ui
+ widgets/keywordval_ui.ui
+ widgets/fontval_ui.ui
+ widgets/cutjobdialog_ui.ui
+ widgets/scenecutdialog_ui.ui
+ widgets/importkeyframesdialog_ui.ui
)
-set(kdenlive_SRCS
+if(OPENGL_FOUND)
+ list(APPEND kdenlive_SRCS videoglwidget.cpp)
+endif(OPENGL_FOUND)
+
+if(BUILD_JogShuttle)
+ list(APPEND kdenlive_SRCS
+ jogaction.cpp
+ jogshuttle.cpp
+ jogshuttleconfig.cpp
+ )
+endif(BUILD_JogShuttle)
+
+kde4_add_kcfg_files(kdenlive_SRCS kdenlivesettings.kcfgc)
+qt4_add_dbus_adaptor(kdenlive_SRCS
+ org.kdenlive.MainWindow.xml
+ mainwindow.h
+ MainWindow
+)
+qt4_add_resources(kdenlive_SRCS widgets/resources.qrc)
+kde4_add_executable(kdenlive
${kdenlive_SRCS}
- addclipcommand.cpp
- main.cpp
- mainwindow.cpp
- customruler.cpp
- smallruler.cpp
- projectlist.cpp
- projectitem.cpp
- monitor.cpp
- gentime.cpp
- renderer.cpp
- kdenlivedoc.cpp
- projectlistview.cpp
- trackview.cpp
- docclipbase.cpp
- timecode.cpp
- monitormanager.cpp
- headertrack.cpp
- customtrackview.cpp
- clipitem.cpp
- moveclipcommand.cpp
- resizeclipcommand.cpp
- razorclipcommand.cpp
- addtimelineclipcommand.cpp
- addmarkercommand.cpp
- kthumb.cpp
- clipmanager.cpp
- effectslist.cpp
- initeffects.cpp
- effectslistview.cpp
- addeffectcommand.cpp
- editeffectcommand.cpp
- moveeffectcommand.cpp
- effectstackview.cpp
- effectstackedit.cpp
- parameterplotter.cpp
- profilesdialog.cpp
- projectsettings.cpp
- kdenlivesettingsdialog.cpp
- complexparameter.cpp
- titlewidget.cpp
- unicodedialog.cpp
- graphicsscenerectmove.cpp
- effectslistwidget.cpp
- titledocument.cpp
- transition.cpp
- renderwidget.cpp
- abstractclipitem.cpp
- transitionsettings.cpp
- recmonitor.cpp
- addtransitioncommand.cpp
- edittransitioncommand.cpp
- addfoldercommand.cpp
- editfoldercommand.cpp
- clipproperties.cpp
- movetransitioncommand.cpp
- slideshowclip.cpp
- markerdialog.cpp
- guide.cpp
- editguidecommand.cpp
- statusbarmessagelabel.cpp
- editkeyframecommand.cpp
- clipdurationdialog.cpp
- managecapturesdialog.cpp
- changespeedcommand.cpp
- geometryval.cpp
- wizard.cpp
- customtrackscene.cpp
- abstractgroupitem.cpp
- keyframehelper.cpp
- editclipcommand.cpp
- insertspacecommand.cpp
- spacerdialog.cpp
- addtrackcommand.cpp
- movegroupcommand.cpp
- dvdwizardvob.cpp
- dvdwizardmenu.cpp
- dvdwizard.cpp
- locktrackcommand.cpp
- groupclipscommand.cpp
- splitaudiocommand.cpp
- changecliptypecommand.cpp
- documentchecker.cpp
- dvdwizardchapters.cpp
- documentvalidator.cpp
- cliptranscode.cpp
- keyframeedit.cpp
- positionedit.cpp
- trackdialog.cpp
- subprojectitem.cpp
- folderprojectitem.cpp
- addclipcutcommand.cpp
- editclipcutcommand.cpp
- KoSliderCombo.cpp
- kis_cubic_curve.cpp
- kis_curve_widget.cpp
- timecodedisplay.cpp
- tracksconfigdialog.cpp
- configtrackscommand.cpp
- abstractscopewidget.cpp
- audioscopes/abstractaudioscopewidget.cpp
- audioscopes/audiospectrum.cpp
- audioscopes/spectrogram.cpp
- audioscopes/ffttools.cpp
- rebuildgroupcommand.cpp
- colorscopes/abstractgfxscopewidget.cpp
- colorscopes/histogram.cpp
- colorscopes/rgbparade.cpp
- colorscopes/vectorscope.cpp
- colorscopes/waveform.cpp
- colorplaneexport.cpp
- colortools.cpp
- colorcorrection/histogramgenerator.cpp
- colorcorrection/rgbparadegenerator.cpp
- colorcorrection/vectorscopegenerator.cpp
- colorcorrection/waveformgenerator.cpp
- razorgroupcommand.cpp
- colorpickerwidget.cpp
- choosecolorwidget.cpp
- monitorscene.cpp
- geometrywidget.cpp
- doubleparameterwidget.cpp
- audiosignal.cpp
- blackmagic/include/DeckLinkAPIDispatch.cpp
- stopmotion/stopmotion.cpp
- stopmotion/capturehandler.cpp
- blackmagic/capture.cpp
- blackmagic/devices.cpp
- onmonitoritems/onmonitorrectitem.cpp
- onmonitoritems/onmonitorcornersitem.cpp
- cornerswidget.cpp
- kiss_fft/_kiss_fft_guts.h
- kiss_fft/kiss_fft.c
- kiss_fft/tools/kiss_fftr.c
- beziercurve/beziersplineeditor.cpp
- beziercurve/beziersplinewidget.cpp
- beziercurve/bpoint.cpp
- beziercurve/cubicbezierspline.cpp
- dragvalue.cpp
- monitoreditwidget.cpp
- simplekeyframes/simpletimelinewidget.cpp
- simplekeyframes/simplekeyframewidget.cpp
- noteswidget.cpp
- archivewidget.cpp
- mltdevicecapture.cpp
- abstractmonitor.cpp
- encodingprofilesdialog.cpp
+ ${kdenlive_UIS}
)
-add_definitions(${KDE4_DEFINITIONS})
+# To compile kiss_fft.
+set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --std=c99")
-if(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "NetBSD" OR NO_JOGSHUTTLE)
- add_definitions(-DNO_JOGSHUTTLE)
-else(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "NetBSD" OR NO_JOGSHUTTLE)
- set(kdenlive_SRCS jogshuttle.cpp jogaction.cpp jogshuttleconfig.cpp ${kdenlive_SRCS})
-endif(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "NetBSD" OR NO_JOGSHUTTLE)
-
-if(APPLE OR OPENGL_FOUND)
- add_definitions(-DUSE_OPEN_GL)
- set(kdenlive_SRCS videoglwidget.cpp ${kdenlive_SRCS})
-endif(APPLE OR OPENGL_FOUND)
-
-if(NOT APPLE AND NOT CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
- set(kdenlive_SRCS
- ${kdenlive_SRCS}
- v4l/v4lcapture.cpp
- v4l/src.c
- )
-endif(NOT APPLE AND NOT CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
+# KDE definitions and include directories *must* always come first, Qt follows
+# (to avoid breaking builds when KDE and/or Qt are installed to different
+# prefixes).
+add_definitions(${KDE4_DEFINITIONS})
-if(QJSON_FOUND)
- set(kdenlive_SRCS
- ${kdenlive_SRCS}
- onmonitoritems/rotoscoping/bpointitem.cpp
- onmonitoritems/rotoscoping/nearestpoint.cpp
- onmonitoritems/rotoscoping/splineitem.cpp
- rotoscoping/rotowidget.cpp
- )
-endif(QJSON_FOUND)
+include_directories(
+ ${CMAKE_BINARY_DIR}
+ ${KDE4_INCLUDES} # Adds Qt include directories too.
+ ${LIBMLT_INCLUDE_DIR}
+ ${LIBMLTPLUS_INCLUDE_DIR}
+)
-# Add libdl
-find_library(DL_LIB NAMES ${CMAKE_DL_LIBS})
-message(STATUS "using dl library: ${DL_LIB}")
-kde4_add_kcfg_files(kdenlive_SRCS kdenlivesettings.kcfgc)
-qt4_add_dbus_adaptor(kdenlive_SRCS org.kdenlive.MainWindow.xml mainwindow.h MainWindow)
-kde4_add_executable(kdenlive ${kdenlive_SRCS} ${kdenlive_UI})
+# Adds Qt definitions and include directories, and sets QT_LIBRARIES according
+# to the components requested in find_package().
+include(${QT_USE_FILE})
if(${KDE_VERSION} VERSION_LESS 4.3.80)
- set(KNEWSTUFF_LIBS ${KDE4_KNEWSTUFF2_LIBS})
+ set(KDE4_KNEWSTUFF_LIBS ${KDE4_KNEWSTUFF2_LIBS})
else(${KDE_VERSION} VERSION_LESS 4.3.80)
- set(KNEWSTUFF_LIBS ${KDE4_KNEWSTUFF3_LIBS})
+ set(KDE4_KNEWSTUFF_LIBS ${KDE4_KNEWSTUFF3_LIBS})
endif(${KDE_VERSION} VERSION_LESS 4.3.80)
target_link_libraries(kdenlive
${KDE4_KDEUI_LIBS}
${KDE4_KIO_LIBS}
- ${KNEWSTUFF_LIBS}
- ${LIBMLTPLUS_LIBRARY}
- ${LIBMLT_LIBRARY}
- ${optional_libs}
+ ${KDE4_KNEWSTUFF_LIBS}
${KDE4_KNOTIFYCONFIG_LIBRARY}
${KDE4_KROSSUI_LIBS}
+ ${KDE4_SOLID_LIBS}
+ ${QT_LIBRARIES}
+ ${LIBMLT_LIBRARY}
+ ${LIBMLTPLUS_LIBRARY}
${CMAKE_DL_LIBS}
${CMAKE_THREAD_LIBS_INIT}
)
if(Q_WS_X11)
+ include_directories(${X11_Xlib_INCLUDE_PATH})
target_link_libraries(kdenlive ${X11_LIBRARIES})
endif(Q_WS_X11)
-if(APPLE)
- find_package(SDL REQUIRED)
- target_link_libraries(kdenlive ${SDL_LIBRARY})
- target_link_libraries(kdenlive ${QT_QTOPENGL_LIBRARY})
+if(OPENGL_FOUND AND QT_QTOPENGL_FOUND)
+ add_definitions(-DUSE_OPENGL)
target_link_libraries(kdenlive ${OPENGL_LIBRARIES})
-else(APPLE)
- add_definitions(-DHAVE_V4L2)
- if(OPENGL_FOUND)
- target_link_libraries(kdenlive ${QT_QTOPENGL_LIBRARY})
- target_link_libraries(kdenlive ${OPENGL_LIBRARIES})
- endif(OPENGL_FOUND)
-endif(APPLE)
+endif(OPENGL_FOUND AND QT_QTOPENGL_FOUND)
+
+if(SDL_FOUND)
+ target_link_libraries(kdenlive ${SDL_LIBRARY})
+endif(SDL_FOUND)
+
+if(NepomukCore_FOUND)
+ add_definitions(-DUSE_NEPOMUKCORE)
+ include_directories(${NEPOMUK_CORE_INCLUDE_DIR})
+ target_link_libraries(kdenlive ${NEPOMUK_CORE_LIBRARY})
+else(NepomukWidgets_FOUND)
+ if(Nepomuk_FOUND)
+ add_definitions(-DUSE_NEPOMUK)
+ include_directories(${NEPOMUK_INCLUDES})
+ target_link_libraries(kdenlive ${NEPOMUK_LIBRARIES})
+ endif(Nepomuk_FOUND)
+endif()
+
+if(QJSON_FOUND)
+ add_definitions(-DUSE_QJSON)
+ include_directories(${QJSON_INCLUDE_DIR})
+ target_link_libraries(kdenlive ${QJSON_LIBRARIES})
+endif(QJSON_FOUND)
+
+if(BUILD_V4L)
+ include_directories(${LIBV4L2_INCLUDE_DIR})
+ target_link_libraries(kdenlive ${LIBV4L2_LIBRARY})
+ add_definitions(-DUSE_V4L)
+endif(BUILD_V4L)
+
+if(BUILD_JogShuttle)
+ add_definitions(-DUSE_JOGSHUTTLE)
+endif(BUILD_JogShuttle)
install(TARGETS kdenlive DESTINATION ${BIN_INSTALL_DIR})
-install(FILES kdenliveui.rc kdenlive.notifyrc DESTINATION ${DATA_INSTALL_DIR}/kdenlive)
+install(FILES
+ kdenliveui.rc
+ kdenlive.notifyrc
+ DESTINATION ${DATA_INSTALL_DIR}/kdenlive
+)
install(FILES kdenlivesettings.kcfg DESTINATION ${KCFG_INSTALL_DIR})
+install(FILES
+ kdenlive_projectprofiles.knsrc
+ kdenlive_renderprofiles.knsrc
+ kdenlive_titles.knsrc
+ kdenlive_wipes.knsrc
+ kdenlivetranscodingrc
+ DESTINATION ${CONFIG_INSTALL_DIR}
+)
+add_subdirectory(icons)
install(FILES kdenlive.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
-kde4_install_icons(${ICON_INSTALL_DIR})
-install(FILES kdenlive_titles.knsrc kdenlive_wipes.knsrc kdenlive_renderprofiles.knsrc kdenlive_projectprofiles.knsrc kdenlivetranscodingrc DESTINATION ${CONFIG_INSTALL_DIR})
\ No newline at end of file