]> git.sesse.net Git - kdenlive/blob - src/CMakeLists.txt
e01ea473ee94c3dca1c6de97c9c0d1176d64b149
[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 )
79
80 set(kdenlive_SRCS
81   addclipcommand.cpp
82   main.cpp
83   mainwindow.cpp
84   customruler.cpp
85   smallruler.cpp
86   projectlist.cpp
87   projectitem.cpp
88   monitor.cpp
89   gentime.cpp
90   renderer.cpp
91   kdenlivedoc.cpp
92   projectlistview.cpp
93   trackview.cpp
94   docclipbase.cpp
95   timecode.cpp
96   monitormanager.cpp
97   headertrack.cpp
98   customtrackview.cpp
99   clipitem.cpp
100   moveclipcommand.cpp
101   resizeclipcommand.cpp
102   razorclipcommand.cpp
103   addtimelineclipcommand.cpp
104   addmarkercommand.cpp
105   kthumb.cpp
106   clipmanager.cpp
107   effectslist.cpp
108   initeffects.cpp
109   effectslistview.cpp
110   addeffectcommand.cpp
111   editeffectcommand.cpp
112   moveeffectcommand.cpp
113   effectstackview.cpp
114   effectstackedit.cpp
115   parameterplotter.cpp
116   profilesdialog.cpp
117   projectsettings.cpp
118   kdenlivesettingsdialog.cpp
119   complexparameter.cpp
120   titlewidget.cpp
121   unicodedialog.cpp
122   graphicsscenerectmove.cpp
123   effectslistwidget.cpp
124   titledocument.cpp
125   transition.cpp
126   renderwidget.cpp
127   abstractclipitem.cpp
128   transitionsettings.cpp
129   recmonitor.cpp
130   addtransitioncommand.cpp
131   edittransitioncommand.cpp
132   addfoldercommand.cpp
133   editfoldercommand.cpp
134   clipproperties.cpp
135   movetransitioncommand.cpp
136   slideshowclip.cpp
137   markerdialog.cpp
138   guide.cpp
139   editguidecommand.cpp
140   statusbarmessagelabel.cpp
141   regiongrabber.cpp
142   editkeyframecommand.cpp
143   clipdurationdialog.cpp
144   managecapturesdialog.cpp
145   changespeedcommand.cpp
146   geometryval.cpp
147   wizard.cpp
148   customtrackscene.cpp
149   abstractgroupitem.cpp
150   keyframehelper.cpp
151   editclipcommand.cpp
152   insertspacecommand.cpp
153   spacerdialog.cpp
154   addtrackcommand.cpp
155   changetrackcommand.cpp
156   movegroupcommand.cpp
157   dvdwizardvob.cpp
158   dvdwizardmenu.cpp
159   dvdwizard.cpp
160   locktrackcommand.cpp
161   groupclipscommand.cpp
162   splitaudiocommand.cpp
163   changecliptypecommand.cpp
164   documentchecker.cpp
165   dvdwizardchapters.cpp
166   documentvalidator.cpp
167   cliptranscode.cpp
168 )
169
170 add_definitions( ${KDE4_DEFINITIONS} )
171
172 if(NO_JOGSHUTTLE)
173   add_definitions(-DNO_JOGSHUTTLE)
174 else(NO_JOGSHUTTLE)
175   set(kdenlive_SRCS jogshuttle.cpp ${kdenlive_SRCS})
176 endif(NO_JOGSHUTTLE)
177
178 kde4_add_kcfg_files(kdenlive_SRCS kdenlivesettings.kcfgc )
179 QT4_ADD_DBUS_ADAPTOR(kdenlive_SRCS org.kdenlive.MainWindow.xml mainwindow.h MainWindow)
180 kde4_add_executable(kdenlive ${kdenlive_SRCS} ${kdenlive_UI})
181
182
183 target_link_libraries(kdenlive
184   ${KDE4_KDEUI_LIBS}
185   ${KDE4_KIO_LIBS}
186   ${KDE4_KNEWSTUFF2_LIBS}
187   ${LIBMLTPLUS_LIBRARY}
188   ${LIBMLT_LIBRARY}
189   ${NEPOMUK_LIBRARIES}
190   ${KDE4_KNOTIFYCONFIG_LIBRARY}
191   ${KDE4_KROSSUI_LIBS}
192 )
193
194 if (APPLE)
195   find_package(SDL REQUIRED)
196   target_link_libraries(kdenlive ${SDL_LIBRARY})
197 endif (APPLE)
198
199 install(TARGETS kdenlive DESTINATION ${BIN_INSTALL_DIR})
200 install( FILES kdenliveui.rc kdenlive.notifyrc DESTINATION  ${DATA_INSTALL_DIR}/kdenlive )
201 install (FILES kdenlivesettings.kcfg DESTINATION ${KCFG_INSTALL_DIR})
202 install (FILES kdenlive.desktop DESTINATION ${XDG_APPS_INSTALL_DIR})
203 install (FILES application-x-kdenlive.svgz video-mlt-playlist.svgz DESTINATION ${ICON_INSTALL_DIR}/oxygen/scalable/mimetypes)
204 install( FILES kdenlive.knsrc kdenlive_render.knsrc kdenlive_mltprofiles.knsrc kdenlivetranscodingrc DESTINATION  ${CONFIG_INSTALL_DIR} )
205 kde4_install_icons( ${ICON_INSTALL_DIR} )
206
207