]> git.sesse.net Git - kdenlive/blobdiff - src/CMakeLists.txt
Full screen video playback:
[kdenlive] / src / CMakeLists.txt
index f29bd51fd4cf06b5471647400234e8b42e856680..1f492cdc776ed1bea208d0bd3536a97fd2a0eb97 100644 (file)
@@ -1,7 +1,7 @@
 add_subdirectory( widgets )
 add_subdirectory( mimetypes )
 
-find_package(Nepomuk)
+macro_optional_find_package(Nepomuk)
 
 if (Nepomuk_FOUND)
     INCLUDE_DIRECTORIES(NEPOMUK_INCLUDES )
@@ -9,10 +9,15 @@ if (Nepomuk_FOUND)
     add_definitions(-DNEPOMUK)
 endif (Nepomuk_FOUND)
 
+if (Q_WS_X11)
+    include_directories (${X11_Xlib_INCLUDE_PATH} ) 
+endif (Q_WS_X11)
 
 if (APPLE)
   find_package(OpenGL)
   set(QT_USE_QTOPENGL TRUE)
+else (APPLE)
+  macro_optional_find_package(OpenGL)
 endif (APPLE)
 
 include_directories (
@@ -26,6 +31,8 @@ include_directories (
     ${CMAKE_BINARY_DIR}
 
     ${CMAKE_SOURCE_DIR}/src/widgets
+    ${CMAKE_SOURCE_DIR}/src/colorcorrection
+    ${CMAKE_SOURCE_DIR}/src/onmonitoritems
 )
 
 LINK_LIBRARIES(
@@ -38,27 +45,24 @@ ${optional_libs}
 
 kde4_add_ui_files(kdenlive_UI
   widgets/timeline_ui.ui
-  widgets/monitor_ui.ui
   widgets/recmonitor_ui.ui
   widgets/colorclip_ui.ui
   widgets/slideshowclip_ui.ui
   widgets/configmisc_ui.ui
   widgets/configenv_ui.ui
-  widgets/configdisplay_ui.ui
+  widgets/configtimeline_ui.ui
   widgets/configsdl_ui.ui
   widgets/configcapture_ui.ui
   widgets/configtranscode_ui.ui
+  widgets/configproject_ui.ui
   widgets/effectlist_ui.ui
   widgets/effectstack_ui.ui
   widgets/profiledialog_ui.ui
   widgets/projectsettings_ui.ui
   widgets/keyframewidget_ui.ui
-  widgets/constval_ui.ui
   widgets/listval_ui.ui
   widgets/wipeval_ui.ui
   widgets/boolval_ui.ui
-  widgets/colorval_ui.ui
-  widgets/positionval_ui.ui
   widgets/titlewidget_ui.ui
   widgets/unicodedialog_ui.ui
   widgets/timelinebuttons_ui.ui
@@ -85,9 +89,20 @@ kde4_add_ui_files(kdenlive_UI
   widgets/dvdwizardchapters_ui.ui
   widgets/missingclips_ui.ui
   widgets/cliptranscode_ui.ui
-  widgets/geometryposition_ui.ui
   widgets/templateclip_ui.ui
   widgets/keyframeeditor_ui.ui
+  widgets/timecodedisplay_ui.ui
+  widgets/tracksconfigdialog_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/monitorscenecontrolwidget_ui.ui
+  widgets/cornerswidget_ui.ui
 )
 
 set(kdenlive_SRCS
@@ -164,7 +179,6 @@ set(kdenlive_SRCS
   insertspacecommand.cpp
   spacerdialog.cpp
   addtrackcommand.cpp
-  changetrackcommand.cpp
   movegroupcommand.cpp
   dvdwizardvob.cpp
   dvdwizardmenu.cpp
@@ -185,29 +199,72 @@ set(kdenlive_SRCS
   addclipcutcommand.cpp
   editclipcutcommand.cpp
   KoSliderCombo.cpp
+  kis_cubic_curve.cpp
+  kis_curve_widget.cpp
+  timecodedisplay.cpp
+  tracksconfigdialog.cpp
+  configtrackscommand.cpp
+  abstractscopewidget.cpp
+  rebuildgroupcommand.cpp
+  histogram.cpp
+  rgbparade.cpp
+  vectorscope.cpp
+  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
+  blackmagic/capture.cpp
+  blackmagic/devices.cpp
+  stopmotion/stopmotion.cpp
+  onmonitoritems/abstractonmonitoritem.cpp 
+  onmonitoritems/onmonitorrectitem.cpp
+  onmonitoritems/onmonitorcornersitem.cpp
+  monitorscenecontrolwidget.cpp
+  cornerswidget.cpp
 )
 
+
+add_subdirectory( ${CMAKE_SOURCE_DIR}/src/colorcorrection )
+add_subdirectory( ${CMAKE_SOURCE_DIR}/src/onmonitoritems )
+
 add_definitions( ${KDE4_DEFINITIONS} )
 
-if(NO_JOGSHUTTLE)
+if(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR NO_JOGSHUTTLE)
   add_definitions(-DNO_JOGSHUTTLE)
-else(NO_JOGSHUTTLE)
+else(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR NO_JOGSHUTTLE)
   set(kdenlive_SRCS jogshuttle.cpp ${kdenlive_SRCS})
-endif(NO_JOGSHUTTLE)
+endif(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR NO_JOGSHUTTLE)
 
-if (APPLE)
+if (APPLE OR OPENGL_FOUND)
+  add_definitions(-DUSE_OPEN_GL)
   set(kdenlive_SRCS videoglwidget.cpp ${kdenlive_SRCS})
-endif (APPLE)
+endif (APPLE OR OPENGL_FOUND)
+
+
+# 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})
 
-if (${KDE_VERSION} VERSION_EQUAL 4.3.80 OR ${KDE_VERSION} VERSION_GREATER 4.3.80)
-  set(KNEWSTUFF_LIBS ${KDE4_KNEWSTUFF3_LIBS})
-else (${KDE_VERSION} VERSION_EQUAL 4.3.80 OR ${KDE_VERSION} VERSION_GREATER 4.3.80)
+if (${KDE_VERSION} VERSION_LESS 4.3.80)
   set(KNEWSTUFF_LIBS ${KDE4_KNEWSTUFF2_LIBS})
-endif (${KDE_VERSION} VERSION_EQUAL 4.3.80 OR ${KDE_VERSION} VERSION_GREATER 4.3.80)
+else (${KDE_VERSION} VERSION_LESS 4.3.80)
+  set(KNEWSTUFF_LIBS ${KDE4_KNEWSTUFF3_LIBS})
+endif (${KDE_VERSION} VERSION_LESS 4.3.80)
 
 target_link_libraries(kdenlive
   ${KDE4_KDEUI_LIBS}
@@ -218,13 +275,23 @@ target_link_libraries(kdenlive
   ${optional_libs}
   ${KDE4_KNOTIFYCONFIG_LIBRARY}
   ${KDE4_KROSSUI_LIBS}
+  ${CMAKE_DL_LIBS}
 )
 
+if (Q_WS_X11)
+  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})
   target_link_libraries(kdenlive ${OPENGL_LIBRARIES})
+else (APPLE)
+  if (OPENGL_FOUND)
+      target_link_libraries(kdenlive ${QT_QTOPENGL_LIBRARY})
+      target_link_libraries(kdenlive ${OPENGL_LIBRARIES})
+  endif (OPENGL_FOUND)
 endif (APPLE)
 
 install(TARGETS kdenlive DESTINATION ${BIN_INSTALL_DIR})
@@ -232,7 +299,7 @@ install( FILES kdenliveui.rc kdenlive.notifyrc DESTINATION  ${DATA_INSTALL_DIR}/
 install (FILES kdenlivesettings.kcfg DESTINATION ${KCFG_INSTALL_DIR})
 install (FILES kdenlive.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
 kde4_install_icons(${ICON_INSTALL_DIR})
-install( FILES kdenlive_wipes.knsrc kdenlive_renderprofiles.knsrc kdenlive_projectprofiles.knsrc kdenlivetranscodingrc DESTINATION  ${CONFIG_INSTALL_DIR} )
+install( FILES kdenlive_titles.knsrc kdenlive_wipes.knsrc kdenlive_renderprofiles.knsrc kdenlive_projectprofiles.knsrc kdenlivetranscodingrc DESTINATION  ${CONFIG_INSTALL_DIR} )
 kde4_install_icons( ${ICON_INSTALL_DIR} )