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