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