]> git.sesse.net Git - kdenlive/blob - src/CMakeLists.txt
Waveform monitor added.
[kdenlive] / src / CMakeLists.txt
1 add_subdirectory( widgets )
2 add_subdirectory( mimetypes )
3
4 macro_optional_find_package(Nepomuk)
5
6 if (Nepomuk_FOUND)
7     INCLUDE_DIRECTORIES(NEPOMUK_INCLUDES )
8     set( optional_libs ${NEPOMUK_LIBRARIES} )
9     add_definitions(-DNEPOMUK)
10 endif (Nepomuk_FOUND)
11
12
13 if (APPLE)
14   find_package(OpenGL)
15   set(QT_USE_QTOPENGL TRUE)
16 endif (APPLE)
17
18 include_directories (
19     ${KDE4_INCLUDE_DIR}
20     ${KDE4_INCLUDE_DIR}/KDE
21     ${QT_INCLUDES}
22     ${LIBMLT_INCLUDE_DIR}
23     ${LIBMLTPLUS_INCLUDE_DIR}
24     ${QDBUS_INCLUDE_DIRS}
25     ${CMAKE_SOURCE_DIR}
26     ${CMAKE_BINARY_DIR}
27
28     ${CMAKE_SOURCE_DIR}/src/widgets
29     ${CMAKE_SOURCE_DIR}/src/colorcorrection
30 )
31
32 LINK_LIBRARIES(
33 ${LIBMLT_LIBRARY}
34 ${LIBMLTPLUS_LIBRARY}
35 ${optional_libs}
36 )
37
38
39
40 kde4_add_ui_files(kdenlive_UI
41   widgets/timeline_ui.ui
42   widgets/monitor_ui.ui
43   widgets/recmonitor_ui.ui
44   widgets/colorclip_ui.ui
45   widgets/slideshowclip_ui.ui
46   widgets/configmisc_ui.ui
47   widgets/configenv_ui.ui
48   widgets/configdisplay_ui.ui
49   widgets/configsdl_ui.ui
50   widgets/configcapture_ui.ui
51   widgets/configtranscode_ui.ui
52   widgets/effectlist_ui.ui
53   widgets/effectstack_ui.ui
54   widgets/profiledialog_ui.ui
55   widgets/projectsettings_ui.ui
56   widgets/keyframewidget_ui.ui
57   widgets/constval_ui.ui
58   widgets/listval_ui.ui
59   widgets/wipeval_ui.ui
60   widgets/boolval_ui.ui
61   widgets/colorval_ui.ui
62   widgets/titlewidget_ui.ui
63   widgets/unicodedialog_ui.ui
64   widgets/timelinebuttons_ui.ui
65   widgets/renderwidget_ui.ui
66   widgets/saveprofile_ui.ui
67   widgets/transitionsettings_ui.ui
68   widgets/configjogshuttle_ui.ui
69   widgets/trackheader_ui.ui
70   widgets/clipproperties_ui.ui
71   widgets/markerdialog_ui.ui
72   widgets/keyframedialog_ui.ui
73   widgets/clipdurationdialog_ui.ui
74   widgets/managecaptures_ui.ui
75   widgets/geometryval_ui.ui
76   widgets/wizardstandard_ui.ui
77   widgets/wizardextra_ui.ui
78   widgets/wizardcheck_ui.ui
79   widgets/wizardmltcheck_ui.ui
80   widgets/spacerdialog_ui.ui
81   widgets/addtrack_ui.ui
82   widgets/dvdwizardvob_ui.ui
83   widgets/dvdwizardmenu_ui.ui
84   widgets/dvdwizardstatus_ui.ui
85   widgets/dvdwizardchapters_ui.ui
86   widgets/missingclips_ui.ui
87   widgets/cliptranscode_ui.ui
88   widgets/templateclip_ui.ui
89   widgets/keyframeeditor_ui.ui
90   widgets/timecodedisplay_ui.ui
91   widgets/tracksconfigdialog_ui.ui
92   widgets/urlval_ui.ui
93   widgets/vectorscope_ui.ui
94   widgets/colorplaneexport_ui.ui
95   widgets/waveform_ui.ui
96 )
97
98 set(kdenlive_SRCS
99   addclipcommand.cpp
100   main.cpp
101   mainwindow.cpp
102   customruler.cpp
103   smallruler.cpp
104   projectlist.cpp
105   projectitem.cpp
106   monitor.cpp
107   gentime.cpp
108   renderer.cpp
109   kdenlivedoc.cpp
110   projectlistview.cpp
111   trackview.cpp
112   docclipbase.cpp
113   timecode.cpp
114   monitormanager.cpp
115   headertrack.cpp
116   customtrackview.cpp
117   clipitem.cpp
118   moveclipcommand.cpp
119   resizeclipcommand.cpp
120   razorclipcommand.cpp
121   addtimelineclipcommand.cpp
122   addmarkercommand.cpp
123   kthumb.cpp
124   clipmanager.cpp
125   effectslist.cpp
126   initeffects.cpp
127   effectslistview.cpp
128   addeffectcommand.cpp
129   editeffectcommand.cpp
130   moveeffectcommand.cpp
131   effectstackview.cpp
132   effectstackedit.cpp
133   parameterplotter.cpp
134   profilesdialog.cpp
135   projectsettings.cpp
136   kdenlivesettingsdialog.cpp
137   complexparameter.cpp
138   titlewidget.cpp
139   unicodedialog.cpp
140   graphicsscenerectmove.cpp
141   effectslistwidget.cpp
142   titledocument.cpp
143   transition.cpp
144   renderwidget.cpp
145   abstractclipitem.cpp
146   transitionsettings.cpp
147   recmonitor.cpp
148   addtransitioncommand.cpp
149   edittransitioncommand.cpp
150   addfoldercommand.cpp
151   editfoldercommand.cpp
152   clipproperties.cpp
153   movetransitioncommand.cpp
154   slideshowclip.cpp
155   markerdialog.cpp
156   guide.cpp
157   editguidecommand.cpp
158   statusbarmessagelabel.cpp
159   editkeyframecommand.cpp
160   clipdurationdialog.cpp
161   managecapturesdialog.cpp
162   changespeedcommand.cpp
163   geometryval.cpp
164   wizard.cpp
165   customtrackscene.cpp
166   abstractgroupitem.cpp
167   keyframehelper.cpp
168   editclipcommand.cpp
169   insertspacecommand.cpp
170   spacerdialog.cpp
171   addtrackcommand.cpp
172   movegroupcommand.cpp
173   dvdwizardvob.cpp
174   dvdwizardmenu.cpp
175   dvdwizard.cpp
176   locktrackcommand.cpp
177   groupclipscommand.cpp
178   splitaudiocommand.cpp
179   changecliptypecommand.cpp
180   documentchecker.cpp
181   dvdwizardchapters.cpp
182   documentvalidator.cpp
183   cliptranscode.cpp
184   keyframeedit.cpp
185   positionedit.cpp
186   trackdialog.cpp
187   subprojectitem.cpp
188   folderprojectitem.cpp
189   addclipcutcommand.cpp
190   editclipcutcommand.cpp
191   KoSliderCombo.cpp
192   kis_cubic_curve.cpp
193   kis_curve_widget.cpp
194   timecodedisplay.cpp
195   tracksconfigdialog.cpp
196   configtrackscommand.cpp
197   vectorscope.cpp
198   colorplaneexport.cpp
199   colortools.cpp
200   rebuildgroupcommand.cpp
201   waveform.cpp
202   colorcorrection/waveformgenerator.cpp
203 )
204
205
206 add_subdirectory( ${CMAKE_SOURCE_DIR}/src/colorcorrection )
207
208 add_definitions( ${KDE4_DEFINITIONS} )
209
210 if(NO_JOGSHUTTLE)
211   add_definitions(-DNO_JOGSHUTTLE)
212 else(NO_JOGSHUTTLE)
213   set(kdenlive_SRCS jogshuttle.cpp ${kdenlive_SRCS})
214 endif(NO_JOGSHUTTLE)
215
216 if (APPLE)
217   set(kdenlive_SRCS videoglwidget.cpp ${kdenlive_SRCS})
218 endif (APPLE)
219
220 kde4_add_kcfg_files(kdenlive_SRCS kdenlivesettings.kcfgc )
221 QT4_ADD_DBUS_ADAPTOR(kdenlive_SRCS org.kdenlive.MainWindow.xml mainwindow.h MainWindow)
222 kde4_add_executable(kdenlive ${kdenlive_SRCS} ${kdenlive_UI})
223
224 if (${KDE_VERSION} VERSION_LESS 4.3.80)
225   set(KNEWSTUFF_LIBS ${KDE4_KNEWSTUFF2_LIBS})
226 else (${KDE_VERSION} VERSION_LESS 4.3.80)
227   set(KNEWSTUFF_LIBS ${KDE4_KNEWSTUFF3_LIBS})
228 endif (${KDE_VERSION} VERSION_LESS 4.3.80)
229
230 target_link_libraries(kdenlive
231   ${KDE4_KDEUI_LIBS}
232   ${KDE4_KIO_LIBS}
233   ${KNEWSTUFF_LIBS}
234   ${LIBMLTPLUS_LIBRARY}
235   ${LIBMLT_LIBRARY}
236   ${optional_libs}
237   ${KDE4_KNOTIFYCONFIG_LIBRARY}
238   ${KDE4_KROSSUI_LIBS}
239 )
240
241 if (APPLE)
242   find_package(SDL REQUIRED)
243   target_link_libraries(kdenlive ${SDL_LIBRARY})
244   target_link_libraries(kdenlive ${QT_QTOPENGL_LIBRARY})
245   target_link_libraries(kdenlive ${OPENGL_LIBRARIES})
246 endif (APPLE)
247
248 install(TARGETS kdenlive DESTINATION ${BIN_INSTALL_DIR})
249 install( FILES kdenliveui.rc kdenlive.notifyrc DESTINATION  ${DATA_INSTALL_DIR}/kdenlive )
250 install (FILES kdenlivesettings.kcfg DESTINATION ${KCFG_INSTALL_DIR})
251 install (FILES kdenlive.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
252 kde4_install_icons(${ICON_INSTALL_DIR})
253 install( FILES kdenlive_titles.knsrc kdenlive_wipes.knsrc kdenlive_renderprofiles.knsrc kdenlive_projectprofiles.knsrc kdenlivetranscodingrc DESTINATION  ${CONFIG_INSTALL_DIR} )
254 kde4_install_icons( ${ICON_INSTALL_DIR} )
255
256