1 add_subdirectory(beziercurve)
2 add_subdirectory(colorcorrection)
3 add_subdirectory(kiss_fft)
4 add_subdirectory(mimetypes)
5 add_subdirectory(onmonitoritems)
6 add_subdirectory(rotoscoping)
7 add_subdirectory(widgets)
9 macro_optional_find_package(Nepomuk)
10 macro_optional_find_package(QJSON)
11 include(FindQImageBlitz)
16 ${KDE4_INCLUDE_DIR}/KDE
19 ${LIBMLTPLUS_INCLUDE_DIR}
23 ${CMAKE_SOURCE_DIR}/src/audioscopes
24 ${CMAKE_SOURCE_DIR}/src/beziercurve
25 ${CMAKE_SOURCE_DIR}/src/colorcorrection
26 ${CMAKE_SOURCE_DIR}/src/kiss_fft
27 ${CMAKE_SOURCE_DIR}/src/onmonitoritems
28 ${CMAKE_SOURCE_DIR}/src/onmonitoritems/rotoscoping
29 ${CMAKE_SOURCE_DIR}/src/widgets
34 include_directories(NEPOMUK_INCLUDES)
35 set(optional_libs ${NEPOMUK_LIBRARIES})
36 add_definitions(-DNEPOMUK)
40 include_directories(QIMAGEBLITZ_INCLUDES)
41 set(optional_libs ${optional_libs} ${QIMAGEBLITZ_LIBRARIES})
42 add_definitions(-DQIMAGEBLITZ)
43 message(STATUS "Found QImageBlitz: ${QIMAGEBLITZ_LIBRARIES}")
44 else(QIMAGEBLITZ_FOUND)
45 message(STATUS "Install QImageBlitz devel package for improved stopmotion features")
46 endif(QIMAGEBLITZ_FOUND)
49 include_directories(QJSON_INCLUDE_DIR)
50 set(optional_libs ${optional_libs} ${QJSON_LIBRARIES})
51 add_definitions(-DQJSON)
53 message(STATUS "Install QJson to use the rotoscoping filter")
57 include_directories(${X11_Xlib_INCLUDE_PATH})
62 set(QT_USE_QTOPENGL TRUE)
64 macro_optional_find_package(OpenGL)
74 kde4_add_ui_files(kdenlive_UI
75 widgets/timeline_ui.ui
76 widgets/recmonitor_ui.ui
77 widgets/colorclip_ui.ui
78 widgets/slideshowclip_ui.ui
79 widgets/configmisc_ui.ui
80 widgets/configenv_ui.ui
81 widgets/configtimeline_ui.ui
82 widgets/configsdl_ui.ui
83 widgets/configcapture_ui.ui
84 widgets/configtranscode_ui.ui
85 widgets/configproject_ui.ui
86 widgets/effectlist_ui.ui
87 widgets/effectstack_ui.ui
88 widgets/profiledialog_ui.ui
89 widgets/projectsettings_ui.ui
90 widgets/keyframewidget_ui.ui
94 widgets/titlewidget_ui.ui
95 widgets/unicodedialog_ui.ui
96 widgets/timelinebuttons_ui.ui
97 widgets/renderwidget_ui.ui
98 widgets/saveprofile_ui.ui
99 widgets/transitionsettings_ui.ui
100 widgets/configjogshuttle_ui.ui
101 widgets/trackheader_ui.ui
102 widgets/clipproperties_ui.ui
103 widgets/markerdialog_ui.ui
104 widgets/keyframedialog_ui.ui
105 widgets/clipdurationdialog_ui.ui
106 widgets/managecaptures_ui.ui
107 widgets/geometryval_ui.ui
108 widgets/wizardstandard_ui.ui
109 widgets/wizardextra_ui.ui
110 widgets/wizardcapture_ui.ui
111 widgets/wizardcheck_ui.ui
112 widgets/wizardmltcheck_ui.ui
113 widgets/spacerdialog_ui.ui
114 widgets/addtrack_ui.ui
115 widgets/dvdwizardvob_ui.ui
116 widgets/dvdwizardmenu_ui.ui
117 widgets/dvdwizardstatus_ui.ui
118 widgets/dvdwizardchapters_ui.ui
119 widgets/missingclips_ui.ui
120 widgets/cliptranscode_ui.ui
121 widgets/templateclip_ui.ui
122 widgets/keyframeeditor_ui.ui
123 widgets/tracksconfigdialog_ui.ui
125 widgets/vectorscope_ui.ui
126 widgets/colorplaneexport_ui.ui
127 widgets/waveform_ui.ui
128 widgets/rgbparade_ui.ui
129 widgets/histogram_ui.ui
130 widgets/geometrywidget_ui.ui
131 widgets/stopmotion_ui.ui
132 widgets/audiospectrum_ui.ui
133 widgets/spectrogram_ui.ui
134 widgets/smconfig_ui.ui
135 widgets/bezierspline_ui.ui
136 widgets/monitoreditwidget_ui.ui
137 widgets/archivewidget_ui.ui
138 widgets/manageencodingprofile_ui.ui
139 widgets/backupdialog_ui.ui
164 resizeclipcommand.cpp
166 addtimelineclipcommand.cpp
174 editeffectcommand.cpp
175 moveeffectcommand.cpp
181 kdenlivesettingsdialog.cpp
185 graphicsscenerectmove.cpp
186 effectslistwidget.cpp
191 transitionsettings.cpp
193 addtransitioncommand.cpp
194 edittransitioncommand.cpp
196 editfoldercommand.cpp
198 movetransitioncommand.cpp
203 statusbarmessagelabel.cpp
204 editkeyframecommand.cpp
205 clipdurationdialog.cpp
206 managecapturesdialog.cpp
207 changespeedcommand.cpp
211 abstractgroupitem.cpp
214 insertspacecommand.cpp
222 groupclipscommand.cpp
223 splitaudiocommand.cpp
224 changecliptypecommand.cpp
226 dvdwizardchapters.cpp
227 documentvalidator.cpp
233 folderprojectitem.cpp
234 addclipcutcommand.cpp
235 editclipcutcommand.cpp
240 tracksconfigdialog.cpp
241 configtrackscommand.cpp
242 abstractscopewidget.cpp
243 audioscopes/abstractaudioscopewidget.cpp
244 audioscopes/audiospectrum.cpp
245 audioscopes/spectrogram.cpp
246 audioscopes/ffttools.cpp
247 rebuildgroupcommand.cpp
248 colorscopes/abstractgfxscopewidget.cpp
249 colorscopes/histogram.cpp
250 colorscopes/rgbparade.cpp
251 colorscopes/vectorscope.cpp
252 colorscopes/waveform.cpp
255 colorcorrection/histogramgenerator.cpp
256 colorcorrection/rgbparadegenerator.cpp
257 colorcorrection/vectorscopegenerator.cpp
258 colorcorrection/waveformgenerator.cpp
259 razorgroupcommand.cpp
260 colorpickerwidget.cpp
261 choosecolorwidget.cpp
264 doubleparameterwidget.cpp
266 blackmagic/include/DeckLinkAPIDispatch.cpp
267 stopmotion/stopmotion.cpp
268 blackmagic/devices.cpp
269 onmonitoritems/onmonitorrectitem.cpp
270 onmonitoritems/onmonitorcornersitem.cpp
272 kiss_fft/_kiss_fft_guts.h
274 kiss_fft/tools/kiss_fftr.c
275 beziercurve/beziersplineeditor.cpp
276 beziercurve/beziersplinewidget.cpp
277 beziercurve/bpoint.cpp
278 beziercurve/cubicbezierspline.cpp
280 monitoreditwidget.cpp
281 simplekeyframes/simpletimelinewidget.cpp
282 simplekeyframes/simplekeyframewidget.cpp
287 encodingprofilesdialog.cpp
290 add_definitions(${KDE4_DEFINITIONS})
292 if(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "NetBSD" OR NO_JOGSHUTTLE)
293 add_definitions(-DNO_JOGSHUTTLE)
294 else(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "NetBSD" OR NO_JOGSHUTTLE)
295 set(kdenlive_SRCS jogshuttle.cpp jogaction.cpp jogshuttleconfig.cpp ${kdenlive_SRCS})
296 endif(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "NetBSD" OR NO_JOGSHUTTLE)
298 if(APPLE OR OPENGL_FOUND)
299 add_definitions(-DUSE_OPEN_GL)
300 set(kdenlive_SRCS videoglwidget.cpp ${kdenlive_SRCS})
301 endif(APPLE OR OPENGL_FOUND)
303 if(NOT APPLE AND NOT CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
309 endif(NOT APPLE AND NOT CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
314 onmonitoritems/rotoscoping/bpointitem.cpp
315 onmonitoritems/rotoscoping/nearestpoint.cpp
316 onmonitoritems/rotoscoping/splineitem.cpp
317 rotoscoping/rotowidget.cpp
322 find_library(DL_LIB NAMES ${CMAKE_DL_LIBS})
323 message(STATUS "using dl library: ${DL_LIB}")
325 kde4_add_kcfg_files(kdenlive_SRCS kdenlivesettings.kcfgc)
326 qt4_add_dbus_adaptor(kdenlive_SRCS org.kdenlive.MainWindow.xml mainwindow.h MainWindow)
327 kde4_add_executable(kdenlive ${kdenlive_SRCS} ${kdenlive_UI})
329 if(${KDE_VERSION} VERSION_LESS 4.3.80)
330 set(KNEWSTUFF_LIBS ${KDE4_KNEWSTUFF2_LIBS})
331 else(${KDE_VERSION} VERSION_LESS 4.3.80)
332 set(KNEWSTUFF_LIBS ${KDE4_KNEWSTUFF3_LIBS})
333 endif(${KDE_VERSION} VERSION_LESS 4.3.80)
335 target_link_libraries(kdenlive
339 ${LIBMLTPLUS_LIBRARY}
342 ${KDE4_KNOTIFYCONFIG_LIBRARY}
345 ${CMAKE_THREAD_LIBS_INIT}
349 target_link_libraries(kdenlive ${X11_LIBRARIES})
353 find_package(SDL REQUIRED)
354 target_link_libraries(kdenlive ${SDL_LIBRARY})
355 target_link_libraries(kdenlive ${QT_QTOPENGL_LIBRARY})
356 target_link_libraries(kdenlive ${OPENGL_LIBRARIES})
358 add_definitions(-DHAVE_V4L2)
360 target_link_libraries(kdenlive ${QT_QTOPENGL_LIBRARY})
361 target_link_libraries(kdenlive ${OPENGL_LIBRARIES})
365 install(TARGETS kdenlive DESTINATION ${BIN_INSTALL_DIR})
366 install(FILES kdenliveui.rc kdenlive.notifyrc DESTINATION ${DATA_INSTALL_DIR}/kdenlive)
367 install(FILES kdenlivesettings.kcfg DESTINATION ${KCFG_INSTALL_DIR})
368 install(FILES kdenlive.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
369 kde4_install_icons(${ICON_INSTALL_DIR})
370 install(FILES kdenlive_titles.knsrc kdenlive_wipes.knsrc kdenlive_renderprofiles.knsrc kdenlive_projectprofiles.knsrc kdenlivetranscodingrc DESTINATION ${CONFIG_INSTALL_DIR})