]> git.sesse.net Git - kdenlive/blobdiff - src/CMakeLists.txt
Add Mac OS X compatibility through new MLT sdl_audio consumer and a QTGLWidget!
[kdenlive] / src / CMakeLists.txt
index 67de7cd3012e10907546d1515d5919e76ef532ec..808819649b6e80cb537834eca5eddf0108e574f5 100644 (file)
@@ -1,27 +1,34 @@
-
 add_subdirectory( widgets )
 add_subdirectory( mimetypes )
 
 find_package(Nepomuk REQUIRED)
 
-include_directories(
-    ${CMAKE_SOURCE_DIR}/src/widgets
+if (APPLE)
+  find_package(OpenGL)
+  set(QT_USE_QTOPENGL TRUE)
+endif (APPLE)
+
+include_directories (
+    ${KDE4_INCLUDE_DIR}
+    ${KDE4_INCLUDE_DIR}/KDE
+    ${QT_INCLUDES}
     ${LIBMLT_INCLUDE_DIR}
     ${LIBMLTPLUS_INCLUDE_DIR}
-    ${LIBFFMPEG_INCLUDE_DIR}
-    ${FFMPEG_HEADER_PATH}
+    ${QDBUS_INCLUDE_DIRS}
+    ${CMAKE_SOURCE_DIR}
+    ${CMAKE_BINARY_DIR}
+
+    ${CMAKE_SOURCE_DIR}/src/widgets
     ${NEPOMUK_INCLUDES}
 )
 
 LINK_LIBRARIES(
 ${LIBMLT_LIBRARY}
 ${LIBMLTPLUS_LIBRARY}
-${LIBFFMPEG_LIBRARY}
 ${NEPOMUK_LIBRARIES}
 )
 
 
-
 kde4_add_ui_files(kdenlive_UI
   widgets/timeline_ui.ui
   widgets/monitor_ui.ui
@@ -33,6 +40,7 @@ kde4_add_ui_files(kdenlive_UI
   widgets/configdisplay_ui.ui
   widgets/configsdl_ui.ui
   widgets/configcapture_ui.ui
+  widgets/configtranscode_ui.ui
   widgets/effectlist_ui.ui
   widgets/effectstack_ui.ui
   widgets/profiledialog_ui.ui
@@ -45,6 +53,7 @@ kde4_add_ui_files(kdenlive_UI
   widgets/colorval_ui.ui
   widgets/positionval_ui.ui
   widgets/titlewidget_ui.ui
+  widgets/unicodedialog_ui.ui
   widgets/timelinebuttons_ui.ui
   widgets/renderwidget_ui.ui
   widgets/saveprofile_ui.ui
@@ -59,9 +68,22 @@ kde4_add_ui_files(kdenlive_UI
   widgets/geometryval_ui.ui
   widgets/wizardstandard_ui.ui
   widgets/wizardextra_ui.ui
+  widgets/wizardcheck_ui.ui
+  widgets/wizardmltcheck_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/geometryposition_ui.ui
+  widgets/templateclip_ui.ui
+  widgets/keyframeeditor_ui.ui
 )
-set(kdenlive_SRCS 
+
+set(kdenlive_SRCS
   addclipcommand.cpp
   main.cpp
   mainwindow.cpp
@@ -102,6 +124,7 @@ set(kdenlive_SRCS
   kdenlivesettingsdialog.cpp
   complexparameter.cpp
   titlewidget.cpp
+  unicodedialog.cpp
   graphicsscenerectmove.cpp
   effectslistwidget.cpp
   titledocument.cpp
@@ -132,32 +155,68 @@ set(kdenlive_SRCS
   abstractgroupitem.cpp
   keyframehelper.cpp
   editclipcommand.cpp
+  insertspacecommand.cpp
+  spacerdialog.cpp
+  addtrackcommand.cpp
+  changetrackcommand.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
 )
 
+add_definitions( ${KDE4_DEFINITIONS} )
+
 if(NO_JOGSHUTTLE)
   add_definitions(-DNO_JOGSHUTTLE)
 else(NO_JOGSHUTTLE)
   set(kdenlive_SRCS jogshuttle.cpp ${kdenlive_SRCS})
 endif(NO_JOGSHUTTLE)
 
-kde4_add_kcfg_files(kdenlive_SRCS GENERATE_MOC kdenlivesettings.kcfgc )
+if (APPLE)
+  set(kdenlive_SRCS videoglwidget.cpp ${kdenlive_SRCS})
+endif (APPLE)
 
+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})
 
-target_link_libraries(kdenlive 
+
+target_link_libraries(kdenlive
   ${KDE4_KDEUI_LIBS}
-  ${KDE4_KIO_LIBS} 
+  ${KDE4_KIO_LIBS}
+  ${KDE4_KNEWSTUFF2_LIBS}
   ${LIBMLTPLUS_LIBRARY}
   ${LIBMLT_LIBRARY}
   ${NEPOMUK_LIBRARIES}
   ${KDE4_KNOTIFYCONFIG_LIBRARY}
+  ${KDE4_KROSSUI_LIBS}
 )
+
+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})
+endif (APPLE)
+
 install(TARGETS kdenlive DESTINATION ${BIN_INSTALL_DIR})
 install( FILES kdenliveui.rc kdenlive.notifyrc DESTINATION  ${DATA_INSTALL_DIR}/kdenlive )
-install (FILES kdenlivesettings.kcfg DESTINATION share/config.kcfg)
-install (FILES kdenlive.desktop DESTINATION share/applications/kde)
-install (FILES application-x-kdenlive.svgz video-mlt-playlist.svgz DESTINATION share/icons/oxygen/scalable/mimetypes)
+install (FILES kdenlivesettings.kcfg DESTINATION ${KCFG_INSTALL_DIR})
+install (FILES kdenlive.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
+install (FILES application-x-kdenlive.svgz video-mlt-playlist.svgz DESTINATION ${ICON_INSTALL_DIR}/oxygen/scalable/mimetypes)
+install( FILES kdenlive.knsrc kdenlive_render.knsrc kdenlive_mltprofiles.knsrc kdenlivetranscodingrc DESTINATION  ${CONFIG_INSTALL_DIR} )
 kde4_install_icons( ${ICON_INSTALL_DIR} )