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