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