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