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