diff --git a/multimedia/libopenshot/Makefile b/multimedia/libopenshot/Makefile index b84716ffa877..509f2996dfaa 100644 --- a/multimedia/libopenshot/Makefile +++ b/multimedia/libopenshot/Makefile @@ -1,70 +1,74 @@ PORTNAME= libopenshot DISTVERSIONPREFIX= v DISTVERSION= 0.3.2 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= multimedia PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= tatsuki_makino@hotmail.com COMMENT= OpenShot Video Library WWW= https://www.openshot.org/ LICENSE= BSD3CLAUSE LGPL3+ LICENSE_COMB= multi LICENSE_FILE_BSD3CLAUSE= ${WRKSRC}/LICENSES/BSD-3-Clause.txt LICENSE_FILE_LGPL3+ = ${WRKSRC}/COPYING BUILD_DEPENDS= swig:devel/swig \ ${LOCALBASE}/include/zmq.hpp:net/cppzmq LIB_DEPENDS= libavformat.so:multimedia/ffmpeg \ libbabl-0.1.so:x11/babl \ libjsoncpp.so:devel/jsoncpp \ libopenshot-audio.so:audio/libopenshot-audio \ + libpython${PYTHON_VER}${PYTHON_ABIVER}.so:lang/python${PYTHON_SUFFIX} \ libzmq.so:net/libzmq4 USES= cmake pkgconfig python:build qt:5 +USE_CXXSTD= c++17 USE_GITHUB= yes GH_ACCOUNT= OpenShot USE_LDCONFIG= yes USE_PYTHON= flavors USE_QT= core gui widgets buildtools:build qmake:build CMAKE_ON= USE_SYSTEM_JSONCPP DISABLE_BUNDLED_JSONCPP\ USE_HW_ACCEL ENABLE_PYTHON\ CMAKE_DISABLE_FIND_PACKAGE_Catch2 CMAKE_OFF= ENABLE_PARALLEL_CTEST VERBOSE_TESTS ENABLE_COVERAGE\ APPIMAGE_BUILD BUILD_TESTING ENABLE_TESTS -USE_CXXSTD= c++17 +DEBUG_FLAGS?= -g +DEBUG_FLAGS+= -D_DEBUG -DJUCE_FORCE_DEBUG=1 -OPTIONS_DEFINE= DOCS IMAGEMAGICK OPENCV RESVG RUBY +OPTIONS_DEFINE= DOCS DOXYGEN IMAGEMAGICK OPENCV RESVG RUBY OPTIONS_DEFAULT= IMAGEMAGICK OPENCV -OPTIONS_SUB= yes -RESVG_DESC?= SVG vector graphics support via resvg -DOCS_BUILD_DEPENDS= doxygen:devel/doxygen -DOCS_CMAKE_BOOL= ENABLE_LIB_DOCS -DOCS_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_Doxygen -DOCS_CMAKE_ON= -DCMAKE_INSTALL_DOCDIR:PATH=${DOCSDIR_REL:Q} -DOCS_PORTDOCS= * +OPTIONS_SUB= yes +RESVG_DESC?= SVG vector graphics support via resvg +DOCS_CMAKE_ON= -DCMAKE_INSTALL_DOCDIR:PATH=${DOCSDIR_REL:Q} +DOCS_PORTDOCS= * +DOXYGEN_IMPLIES= DOCS +DOXYGEN_BUILD_DEPENDS= doxygen:devel/doxygen +DOXYGEN_CMAKE_BOOL= ENABLE_LIB_DOCS +DOXYGEN_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_Doxygen IMAGEMAGICK_USES= magick IMAGEMAGICK_CMAKE_BOOL= ENABLE_MAGICK IMAGEMAGICK_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_ImageMagick OPENCV_LIB_DEPENDS= libopencv_core.so:graphics/opencv \ libprotobuf.so:devel/protobuf OPENCV_CMAKE_BOOL= ENABLE_OPENCV OPENCV_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_OpenCV\ CMAKE_DISABLE_FIND_PACKAGE_Protobuf OPENCV_CMAKE_ON= -DOpenCV_DIR:STRING=${LOCALBASE:Q}/cmake/opencv4 RESVG_LIB_DEPENDS= libresvg.so:graphics/resvg-capi -RESVG_USE_OFF= QT=svg +RESVG_USE_OFF= QT=svg RESVG_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_Resvg -RESVG_CMAKE_ON= -DRESVGDIR:STRING=${LOCALBASE:Q} -RUBY_USES= ruby:build +RESVG_CMAKE_ON= -DRESVGDIR:STRING=${LOCALBASE:Q} +RUBY_USES= ruby:build RUBY_CMAKE_BOOL= ENABLE_RUBY RUBY_CMAKE_BOOL_OFF= CMAKE_DISABLE_FIND_PACKAGE_Ruby .if !exists(/usr/include/omp.h) USES+= compiler:gcc-c++17-lib .else USES+= compiler:c++17-lang .endif .include diff --git a/multimedia/libopenshot/files/patch-src_CMakeLists.txt b/multimedia/libopenshot/files/patch-src_CMakeLists.txt index c94d5a8ab374..4ad80fbc34a8 100644 --- a/multimedia/libopenshot/files/patch-src_CMakeLists.txt +++ b/multimedia/libopenshot/files/patch-src_CMakeLists.txt @@ -1,21 +1,27 @@ --- src/CMakeLists.txt.orig 2023-03-27 18:48:43 UTC +++ src/CMakeLists.txt -@@ -516,6 +516,18 @@ See https://github.com/opencv/opencv/issues/19260]]) +@@ -516,6 +516,24 @@ See https://github.com/opencv/opencv/issues/19260]]) endif() # ENABLE_OPENCV add_feature_info("OpenCV algorithms" ENABLE_OPENCV "Use OpenCV algorithms") +# EXECINFO +include(CheckFunctionExists) -+check_function_exists("backtrace" FUNCTION_BACKTRACE_FOUND) ++include(CheckLibraryExists) ++check_function_exists(backtrace FUNCTION_BACKTRACE_FOUND) +if(NOT FUNCTION_BACKTRACE_FOUND) + find_library(EXECINFO_LIBRARY NAMES execinfo) -+ if(NOT EXECINFO_LIBRARY) -+ message(FATAL_ERROR "${EXECINFO_LIBRARY}") -+ endif(NOT EXECINFO_LIBRARY) -+ target_link_libraries(openshot PRIVATE ${EXECINFO_LIBRARY}) ++ if(EXECINFO_LIBRARY) ++ unset(FUNCTION_BACKTRACE_FOUND CACHE) ++ check_library_exists(${EXECINFO_LIBRARY} backtrace "" FUNCTION_BACKTRACE_FOUND) ++ endif(EXECINFO_LIBRARY) ++endif(NOT FUNCTION_BACKTRACE_FOUND) ++if(NOT FUNCTION_BACKTRACE_FOUND) ++ message(FATAL_ERROR "backtrace - ${FUNCTION_BACKTRACE_FOUND}") +endif(NOT FUNCTION_BACKTRACE_FOUND) -+unset(FUNCTION_BACKTRACE_FOUND) ++if(EXECINFO_LIBRARY) ++ target_link_libraries(openshot PRIVATE ${EXECINFO_LIBRARY}) ++endif(EXECINFO_LIBRARY) + ############### LINK LIBRARY ################# # Link remaining dependency libraries if(DEFINED PROFILER) diff --git a/multimedia/libopenshot/files/patch-src_Qt_AudioPlaybackThread.cpp b/multimedia/libopenshot/files/patch-src_Qt_AudioPlaybackThread.cpp new file mode 100644 index 000000000000..11530ddc36d1 --- /dev/null +++ b/multimedia/libopenshot/files/patch-src_Qt_AudioPlaybackThread.cpp @@ -0,0 +1,22 @@ +--- src/Qt/AudioPlaybackThread.cpp.orig 2023-04-19 22:01:02 UTC ++++ src/Qt/AudioPlaybackThread.cpp +@@ -102,8 +102,17 @@ namespace openshot + + // Settings for audio device playback + AudioDeviceManager::AudioDeviceSetup deviceSetup = AudioDeviceManager::AudioDeviceSetup(); +- deviceSetup.inputChannels = 0; +- deviceSetup.outputChannels = channels; ++ deviceSetup.outputDeviceName = attempt_device.name; ++ deviceSetup.inputDeviceName = ""; ++ //deviceSetup.inputChannels = 0; ++ deviceSetup.inputChannels.clear(); ++ deviceSetup.useDefaultInputChannels = false; ++ //deviceSetup.outputChannels = channels; ++ deviceSetup.outputChannels.clear(); ++ for (int i = 0; i < channels; ++i) { ++ deviceSetup.outputChannels.setBit(i); ++ } ++ deviceSetup.useDefaultOutputChannels = false; + + // Loop through common sample rates, starting with the user's requested rate + // Not all sample rates are supported by audio devices, for example, many VMs diff --git a/multimedia/openshot/Makefile b/multimedia/openshot/Makefile index 1bacbe08bc16..92a47356fdbc 100644 --- a/multimedia/openshot/Makefile +++ b/multimedia/openshot/Makefile @@ -1,49 +1,49 @@ PORTNAME= openshot DISTVERSIONPREFIX= v DISTVERSION= 3.1.1 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= multimedia MAINTAINER= tatsuki_makino@hotmail.com COMMENT= OpenShot Video Editor WWW= https://www.openshot.org/ LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= ${RUN_DEPENDS} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}libopenshot>=0.3.2:multimedia/libopenshot@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}sentry-sdk>=0:devel/py-sentry-sdk@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pyzmq>=0:net/py-pyzmq@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}distro>=0:sysutils/py-distro@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests>=0:www/py-requests@${PY_FLAVOR} USES= desktop-file-utils pyqt:5 python shared-mime-info shebangfix USE_GITHUB= yes GH_ACCOUNT= OpenShot GH_PROJECT= ${PORTNAME}-qt USE_PYQT= pyqt5 webengine USE_PYTHON= distutils optsuffix SHEBANG_FILES= src/language/generate_translations.py\ src/language/show_translations.py\ src/language/test_translations.py NO_ARCH= yes OPTIONS_DEFINE= DOCS OPTIONS_DEFAULT= DOCS_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sphinx>=0:textproc/py-sphinx@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}sphinx_rtd_theme>=0:textproc/py-sphinx_rtd_theme@${PY_FLAVOR} DOCS_BINARY_ALIAS= sphinx-build=sphinx-build-${PYTHON_VER} DOCS_PORTDOCS= * do-build-DOCS-on: @(cd ${BUILD_WRKSRC}/doc; if ! ${DO_MAKE_BUILD} html; then \ (${ECHO_CMD} "===> ${.TARGET} failed unexpectedly.") | ${FMT_80} ; \ ${FALSE}; \ fi) do-install-DOCS-on: @(cd ${INSTALL_WRKSRC}/doc/_build &&\ ${COPYTREE_SHARE} html ${STAGEDIR}${DOCSDIR} "-not -name \.*") .include