X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2FCMakeLists.txt;h=4664e1c9b1098f8427f849354952d6d311b69941;hb=60cb9e1f3092575415ba61139071296c33b902ed;hp=919ae21a9e730a0f2c6d0396299aa1b534739c41;hpb=cfa07b88701544776e846c5ce97877e815ad0ef5;p=kdenlive diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 919ae21a..4664e1c9 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,48 +1,66 @@ -add_subdirectory( widgets ) -add_subdirectory( mimetypes ) +add_subdirectory(beziercurve) +add_subdirectory(colorcorrection) +add_subdirectory(kiss_fft) +add_subdirectory(mimetypes) +add_subdirectory(onmonitoritems) +add_subdirectory(rotoscoping) +add_subdirectory(widgets) +add_subdirectory(databackup) macro_optional_find_package(Nepomuk) +macro_optional_find_package(QJSON) -if (Nepomuk_FOUND) - INCLUDE_DIRECTORIES(NEPOMUK_INCLUDES ) - set( optional_libs ${NEPOMUK_LIBRARIES} ) - add_definitions(-DNEPOMUK) -endif (Nepomuk_FOUND) +include_directories( + ${KDE4_INCLUDE_DIR} + ${KDE4_INCLUDE_DIR}/KDE + ${QT_INCLUDES} + ${LIBMLT_INCLUDE_DIR} + ${LIBMLTPLUS_INCLUDE_DIR} + ${QDBUS_INCLUDE_DIRS} + ${CMAKE_SOURCE_DIR} + ${CMAKE_BINARY_DIR} + ${CMAKE_SOURCE_DIR}/src/audioscopes + ${CMAKE_SOURCE_DIR}/src/beziercurve + ${CMAKE_SOURCE_DIR}/src/colorcorrection + ${CMAKE_SOURCE_DIR}/src/kiss_fft + ${CMAKE_SOURCE_DIR}/src/onmonitoritems + ${CMAKE_SOURCE_DIR}/src/onmonitoritems/rotoscoping + ${CMAKE_SOURCE_DIR}/src/widgets +) + + +if(Nepomuk_FOUND) + include_directories(NEPOMUK_INCLUDES) + set(optional_libs ${NEPOMUK_LIBRARIES}) + add_definitions(-DNEPOMUK) +endif(Nepomuk_FOUND) + +if(QJSON_FOUND) + include_directories(QJSON_INCLUDE_DIR) + set(optional_libs ${optional_libs} ${QJSON_LIBRARIES}) + add_definitions(-DQJSON) +else(QJSON_FOUND) + message(STATUS "Install QJson to use the rotoscoping filter") +endif(QJSON_FOUND) -if (Q_WS_X11) - include_directories (${X11_Xlib_INCLUDE_PATH} ) -endif (Q_WS_X11) +if(Q_WS_X11) + include_directories(${X11_Xlib_INCLUDE_PATH}) +endif(Q_WS_X11) -if (APPLE) +if(APPLE) find_package(OpenGL) set(QT_USE_QTOPENGL TRUE) -else (APPLE) +else(APPLE) macro_optional_find_package(OpenGL) -endif (APPLE) +endif(APPLE) -include_directories ( - ${KDE4_INCLUDE_DIR} - ${KDE4_INCLUDE_DIR}/KDE - ${QT_INCLUDES} - ${LIBMLT_INCLUDE_DIR} - ${LIBMLTPLUS_INCLUDE_DIR} - ${QDBUS_INCLUDE_DIRS} - ${CMAKE_SOURCE_DIR} - ${CMAKE_BINARY_DIR} - ${CMAKE_SOURCE_DIR}/src/widgets - ${CMAKE_SOURCE_DIR}/src/colorcorrection - ${CMAKE_SOURCE_DIR}/src/onmonitoritems -) - -LINK_LIBRARIES( -${LIBMLT_LIBRARY} -${LIBMLTPLUS_LIBRARY} -${optional_libs} +link_libraries( + ${LIBMLT_LIBRARY} + ${LIBMLTPLUS_LIBRARY} + ${optional_libs} ) - - kde4_add_ui_files(kdenlive_UI widgets/timeline_ui.ui widgets/recmonitor_ui.ui @@ -79,6 +97,7 @@ kde4_add_ui_files(kdenlive_UI widgets/geometryval_ui.ui widgets/wizardstandard_ui.ui widgets/wizardextra_ui.ui + widgets/wizardcapture_ui.ui widgets/wizardcheck_ui.ui widgets/wizardmltcheck_ui.ui widgets/spacerdialog_ui.ui @@ -91,7 +110,6 @@ kde4_add_ui_files(kdenlive_UI widgets/cliptranscode_ui.ui widgets/templateclip_ui.ui widgets/keyframeeditor_ui.ui - widgets/timecodedisplay_ui.ui widgets/tracksconfigdialog_ui.ui widgets/urlval_ui.ui widgets/vectorscope_ui.ui @@ -101,11 +119,18 @@ kde4_add_ui_files(kdenlive_UI widgets/histogram_ui.ui widgets/geometrywidget_ui.ui widgets/stopmotion_ui.ui - widgets/monitorscenecontrolwidget_ui.ui - widgets/cornerswidget_ui.ui + widgets/audiospectrum_ui.ui + widgets/spectrogram_ui.ui + widgets/smconfig_ui.ui + widgets/bezierspline_ui.ui + widgets/monitoreditwidget_ui.ui + widgets/archivewidget_ui.ui + widgets/manageencodingprofile_ui.ui + widgets/backupdialog_ui.ui ) set(kdenlive_SRCS + ${kdenlive_SRCS} addclipcommand.cpp main.cpp mainwindow.cpp @@ -205,11 +230,16 @@ set(kdenlive_SRCS tracksconfigdialog.cpp configtrackscommand.cpp abstractscopewidget.cpp + audioscopes/abstractaudioscopewidget.cpp + audioscopes/audiospectrum.cpp + audioscopes/spectrogram.cpp + audioscopes/ffttools.cpp rebuildgroupcommand.cpp - histogram.cpp - rgbparade.cpp - vectorscope.cpp - waveform.cpp + colorscopes/abstractgfxscopewidget.cpp + colorscopes/histogram.cpp + colorscopes/rgbparade.cpp + colorscopes/vectorscope.cpp + colorscopes/waveform.cpp colorplaneexport.cpp colortools.cpp colorcorrection/histogramgenerator.cpp @@ -225,50 +255,76 @@ set(kdenlive_SRCS audiosignal.cpp blackmagic/include/DeckLinkAPIDispatch.cpp stopmotion/stopmotion.cpp - stopmotion/capturehandler.cpp - blackmagic/capture.cpp blackmagic/devices.cpp - v4l/v4lcapture.cpp - v4l/src.c - v4l/src_v4l2.c - onmonitoritems/abstractonmonitoritem.cpp onmonitoritems/onmonitorrectitem.cpp onmonitoritems/onmonitorcornersitem.cpp - monitorscenecontrolwidget.cpp cornerswidget.cpp + kiss_fft/_kiss_fft_guts.h + kiss_fft/kiss_fft.c + kiss_fft/tools/kiss_fftr.c + beziercurve/beziersplineeditor.cpp + beziercurve/beziersplinewidget.cpp + beziercurve/bpoint.cpp + beziercurve/cubicbezierspline.cpp + dragvalue.cpp + monitoreditwidget.cpp + simplekeyframes/simpletimelinewidget.cpp + simplekeyframes/simplekeyframewidget.cpp + noteswidget.cpp + archivewidget.cpp + mltdevicecapture.cpp + abstractmonitor.cpp + encodingprofilesdialog.cpp ) +add_definitions(${KDE4_DEFINITIONS}) -add_subdirectory( ${CMAKE_SOURCE_DIR}/src/colorcorrection ) -add_subdirectory( ${CMAKE_SOURCE_DIR}/src/onmonitoritems ) - -add_definitions( ${KDE4_DEFINITIONS} ) +if(CMAKE_SYSTEM_NAME STREQUAL "GNU/kFreeBSD") + add_definitions(-DQ_OS_KFREEBSD) +endif(CMAKE_SYSTEM_NAME STREQUAL "GNU/kFreeBSD") -if(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR NO_JOGSHUTTLE) +if(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "NetBSD" OR CMAKE_SYSTEM_NAME STREQUAL "GNU/kFreeBSD" OR NO_JOGSHUTTLE) add_definitions(-DNO_JOGSHUTTLE) -else(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR NO_JOGSHUTTLE) - set(kdenlive_SRCS jogshuttle.cpp ${kdenlive_SRCS}) -endif(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR NO_JOGSHUTTLE) +else(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "NetBSD" OR CMAKE_SYSTEM_NAME STREQUAL "GNU/kFreeBSD" OR NO_JOGSHUTTLE) + set(kdenlive_SRCS jogshuttle.cpp jogaction.cpp jogshuttleconfig.cpp ${kdenlive_SRCS}) +endif(APPLE OR CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "NetBSD" OR CMAKE_SYSTEM_NAME STREQUAL "GNU/kFreeBSD" OR NO_JOGSHUTTLE) -if (APPLE OR OPENGL_FOUND) +if(APPLE OR OPENGL_FOUND) add_definitions(-DUSE_OPEN_GL) set(kdenlive_SRCS videoglwidget.cpp ${kdenlive_SRCS}) -endif (APPLE OR OPENGL_FOUND) +endif(APPLE OR OPENGL_FOUND) +if(NOT APPLE AND NOT CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" AND NOT CMAKE_SYSTEM_NAME STREQUAL "GNU/kFreeBSD") + set(kdenlive_SRCS + ${kdenlive_SRCS} + v4l/v4lcapture.cpp + v4l/src.c + ) +endif(NOT APPLE AND NOT CMAKE_SYSTEM_NAME STREQUAL "FreeBSD" AND NOT CMAKE_SYSTEM_NAME STREQUAL "GNU/kFreeBSD") + +if(QJSON_FOUND) + set(kdenlive_SRCS + ${kdenlive_SRCS} + onmonitoritems/rotoscoping/bpointitem.cpp + onmonitoritems/rotoscoping/nearestpoint.cpp + onmonitoritems/rotoscoping/splineitem.cpp + rotoscoping/rotowidget.cpp + ) +endif(QJSON_FOUND) # Add libdl -find_library( DL_LIB NAMES ${CMAKE_DL_LIBS} ) -MESSAGE( STATUS "using dl library: ${DL_LIB}" ) +find_library(DL_LIB NAMES ${CMAKE_DL_LIBS}) +message(STATUS "using dl library: ${DL_LIB}") -kde4_add_kcfg_files(kdenlive_SRCS kdenlivesettings.kcfgc ) -QT4_ADD_DBUS_ADAPTOR(kdenlive_SRCS org.kdenlive.MainWindow.xml mainwindow.h MainWindow) +kde4_add_kcfg_files(kdenlive_SRCS kdenlivesettings.kcfgc) +qt4_add_dbus_adaptor(kdenlive_SRCS org.kdenlive.MainWindow.xml mainwindow.h MainWindow) kde4_add_executable(kdenlive ${kdenlive_SRCS} ${kdenlive_UI}) -if (${KDE_VERSION} VERSION_LESS 4.3.80) +if(${KDE_VERSION} VERSION_LESS 4.3.80) set(KNEWSTUFF_LIBS ${KDE4_KNEWSTUFF2_LIBS}) -else (${KDE_VERSION} VERSION_LESS 4.3.80) +else(${KDE_VERSION} VERSION_LESS 4.3.80) set(KNEWSTUFF_LIBS ${KDE4_KNEWSTUFF3_LIBS}) -endif (${KDE_VERSION} VERSION_LESS 4.3.80) +endif(${KDE_VERSION} VERSION_LESS 4.3.80) target_link_libraries(kdenlive ${KDE4_KDEUI_LIBS} @@ -280,31 +336,30 @@ target_link_libraries(kdenlive ${KDE4_KNOTIFYCONFIG_LIBRARY} ${KDE4_KROSSUI_LIBS} ${CMAKE_DL_LIBS} + ${CMAKE_THREAD_LIBS_INIT} + ${QT_QTSCRIPT_LIBRARY} ) -if (Q_WS_X11) +if(Q_WS_X11) target_link_libraries(kdenlive ${X11_LIBRARIES}) -endif (Q_WS_X11) +endif(Q_WS_X11) -if (APPLE) +if(APPLE) find_package(SDL REQUIRED) target_link_libraries(kdenlive ${SDL_LIBRARY}) target_link_libraries(kdenlive ${QT_QTOPENGL_LIBRARY}) target_link_libraries(kdenlive ${OPENGL_LIBRARIES}) -else (APPLE) +else(APPLE) add_definitions(-DHAVE_V4L2) - if (OPENGL_FOUND) - target_link_libraries(kdenlive ${QT_QTOPENGL_LIBRARY}) - target_link_libraries(kdenlive ${OPENGL_LIBRARIES}) - endif (OPENGL_FOUND) -endif (APPLE) + if(OPENGL_FOUND) + target_link_libraries(kdenlive ${QT_QTOPENGL_LIBRARY}) + target_link_libraries(kdenlive ${OPENGL_LIBRARIES}) + endif(OPENGL_FOUND) +endif(APPLE) install(TARGETS kdenlive DESTINATION ${BIN_INSTALL_DIR}) -install( FILES kdenliveui.rc kdenlive.notifyrc DESTINATION ${DATA_INSTALL_DIR}/kdenlive ) -install (FILES kdenlivesettings.kcfg DESTINATION ${KCFG_INSTALL_DIR}) -install (FILES kdenlive.desktop DESTINATION ${XDG_APPS_INSTALL_DIR}) +install(FILES kdenliveui.rc kdenlive.notifyrc DESTINATION ${DATA_INSTALL_DIR}/kdenlive) +install(FILES kdenlivesettings.kcfg DESTINATION ${KCFG_INSTALL_DIR}) +install(FILES kdenlive.desktop DESTINATION ${XDG_APPS_INSTALL_DIR}) kde4_install_icons(${ICON_INSTALL_DIR}) -install( FILES kdenlive_titles.knsrc kdenlive_wipes.knsrc kdenlive_renderprofiles.knsrc kdenlive_projectprofiles.knsrc kdenlivetranscodingrc DESTINATION ${CONFIG_INSTALL_DIR} ) -kde4_install_icons( ${ICON_INSTALL_DIR} ) - - +install(FILES kdenlive_titles.knsrc kdenlive_wipes.knsrc kdenlive_renderprofiles.knsrc kdenlive_projectprofiles.knsrc kdenlivetranscodingrc DESTINATION ${CONFIG_INSTALL_DIR})