]> git.sesse.net Git - kdenlive/blob - src/CMakeLists.txt
Clip cuts in project tree can now have a description
[kdenlive] / src / CMakeLists.txt
1 add_subdirectory( widgets )
2 add_subdirectory( mimetypes )
3
4 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/positionval_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/geometryposition_ui.ui
89   widgets/templateclip_ui.ui
90   widgets/keyframeeditor_ui.ui
91 )
92
93 set(kdenlive_SRCS
94   addclipcommand.cpp
95   main.cpp
96   mainwindow.cpp
97   customruler.cpp
98   smallruler.cpp
99   projectlist.cpp
100   projectitem.cpp
101   monitor.cpp
102   gentime.cpp
103   renderer.cpp
104   kdenlivedoc.cpp
105   projectlistview.cpp
106   trackview.cpp
107   docclipbase.cpp
108   timecode.cpp
109   monitormanager.cpp
110   headertrack.cpp
111   customtrackview.cpp
112   clipitem.cpp
113   moveclipcommand.cpp
114   resizeclipcommand.cpp
115   razorclipcommand.cpp
116   addtimelineclipcommand.cpp
117   addmarkercommand.cpp
118   kthumb.cpp
119   clipmanager.cpp
120   effectslist.cpp
121   initeffects.cpp
122   effectslistview.cpp
123   addeffectcommand.cpp
124   editeffectcommand.cpp
125   moveeffectcommand.cpp
126   effectstackview.cpp
127   effectstackedit.cpp
128   parameterplotter.cpp
129   profilesdialog.cpp
130   projectsettings.cpp
131   kdenlivesettingsdialog.cpp
132   complexparameter.cpp
133   titlewidget.cpp
134   unicodedialog.cpp
135   graphicsscenerectmove.cpp
136   effectslistwidget.cpp
137   titledocument.cpp
138   transition.cpp
139   renderwidget.cpp
140   abstractclipitem.cpp
141   transitionsettings.cpp
142   recmonitor.cpp
143   addtransitioncommand.cpp
144   edittransitioncommand.cpp
145   addfoldercommand.cpp
146   editfoldercommand.cpp
147   clipproperties.cpp
148   movetransitioncommand.cpp
149   slideshowclip.cpp
150   markerdialog.cpp
151   guide.cpp
152   editguidecommand.cpp
153   statusbarmessagelabel.cpp
154   editkeyframecommand.cpp
155   clipdurationdialog.cpp
156   managecapturesdialog.cpp
157   changespeedcommand.cpp
158   geometryval.cpp
159   wizard.cpp
160   customtrackscene.cpp
161   abstractgroupitem.cpp
162   keyframehelper.cpp
163   editclipcommand.cpp
164   insertspacecommand.cpp
165   spacerdialog.cpp
166   addtrackcommand.cpp
167   changetrackcommand.cpp
168   movegroupcommand.cpp
169   dvdwizardvob.cpp
170   dvdwizardmenu.cpp
171   dvdwizard.cpp
172   locktrackcommand.cpp
173   groupclipscommand.cpp
174   splitaudiocommand.cpp
175   changecliptypecommand.cpp
176   documentchecker.cpp
177   dvdwizardchapters.cpp
178   documentvalidator.cpp
179   cliptranscode.cpp
180   keyframeedit.cpp
181   positionedit.cpp
182   trackdialog.cpp
183   subprojectitem.cpp
184   folderprojectitem.cpp
185   addclipcutcommand.cpp
186   editclipcutcommand.cpp
187 )
188
189 add_definitions( ${KDE4_DEFINITIONS} )
190
191 if(NO_JOGSHUTTLE)
192   add_definitions(-DNO_JOGSHUTTLE)
193 else(NO_JOGSHUTTLE)
194   set(kdenlive_SRCS jogshuttle.cpp ${kdenlive_SRCS})
195 endif(NO_JOGSHUTTLE)
196
197 if (APPLE)
198   set(kdenlive_SRCS videoglwidget.cpp ${kdenlive_SRCS})
199 endif (APPLE)
200
201 kde4_add_kcfg_files(kdenlive_SRCS kdenlivesettings.kcfgc )
202 QT4_ADD_DBUS_ADAPTOR(kdenlive_SRCS org.kdenlive.MainWindow.xml mainwindow.h MainWindow)
203 kde4_add_executable(kdenlive ${kdenlive_SRCS} ${kdenlive_UI})
204
205
206 target_link_libraries(kdenlive
207   ${KDE4_KDEUI_LIBS}
208   ${KDE4_KIO_LIBS}
209   ${KDE4_KNEWSTUFF2_LIBS}
210   ${LIBMLTPLUS_LIBRARY}
211   ${LIBMLT_LIBRARY}
212   ${optional_libs}
213   ${KDE4_KNOTIFYCONFIG_LIBRARY}
214   ${KDE4_KROSSUI_LIBS}
215 )
216
217 if (APPLE)
218   find_package(SDL REQUIRED)
219   target_link_libraries(kdenlive ${SDL_LIBRARY})
220   target_link_libraries(kdenlive ${QT_QTOPENGL_LIBRARY})
221   target_link_libraries(kdenlive ${OPENGL_LIBRARIES})
222 endif (APPLE)
223
224 install(TARGETS kdenlive DESTINATION ${BIN_INSTALL_DIR})
225 install( FILES kdenliveui.rc kdenlive.notifyrc DESTINATION  ${DATA_INSTALL_DIR}/kdenlive )
226 install (FILES kdenlivesettings.kcfg DESTINATION ${KCFG_INSTALL_DIR})
227 install (FILES kdenlive.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
228 kde4_install_icons(${ICON_INSTALL_DIR})
229 install( FILES kdenlive.knsrc kdenlive_render.knsrc kdenlive_mltprofiles.knsrc kdenlivetranscodingrc DESTINATION  ${CONFIG_INSTALL_DIR} )
230 kde4_install_icons( ${ICON_INSTALL_DIR} )
231
232