git: 6622ce688cfd - main - multimedia/libopenshot: Update to 0.3.0

From: Nuno Teixeira <eduardo_at_FreeBSD.org>
Date: Mon, 26 Dec 2022 05:26:23 UTC
The branch main has been updated by eduardo:

URL: https://cgit.FreeBSD.org/ports/commit/?id=6622ce688cfd04db96ab934b7808f6774c6cec97

commit 6622ce688cfd04db96ab934b7808f6774c6cec97
Author:     VVD <vvd@unislabs.com>
AuthorDate: 2022-12-25 16:38:21 +0000
Commit:     Nuno Teixeira <eduardo@FreeBSD.org>
CommitDate: 2022-12-26 05:25:48 +0000

    multimedia/libopenshot: Update to 0.3.0
    
    ChangeLog:      https://github.com/OpenShot/libopenshot/releases/tag/v0.3.0
    PR:             268317
---
 multimedia/libopenshot/Makefile                    | 37 ++++++++++------------
 multimedia/libopenshot/distinfo                    |  6 ++--
 multimedia/libopenshot/files/patch-CMakeLists.txt  | 29 +++++++++++++++++
 .../libopenshot/files/patch-src_CMakeLists.txt     | 16 ++++------
 .../libopenshot/files/patch-src_FFmpegReader.cpp   |  8 ++---
 .../libopenshot/files/patch-src_FFmpegWriter.cpp   | 16 +++++-----
 multimedia/libopenshot/pkg-plist                   | 18 +++--------
 7 files changed, 72 insertions(+), 58 deletions(-)

diff --git a/multimedia/libopenshot/Makefile b/multimedia/libopenshot/Makefile
index 8245ebca270e..a08c1f59bb4b 100644
--- a/multimedia/libopenshot/Makefile
+++ b/multimedia/libopenshot/Makefile
@@ -1,7 +1,6 @@
 PORTNAME=	libopenshot
 DISTVERSIONPREFIX=	v
-DISTVERSION=	0.2.7
-PORTREVISION=	5
+DISTVERSION=	0.3.0
 CATEGORIES=	multimedia
 PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
 
@@ -9,35 +8,38 @@ MAINTAINER=	tatsuki_makino@hotmail.com
 COMMENT=	OpenShot Video Library
 WWW=		https://www.openshot.org/
 
-LICENSE=	LGPL3+
-LICENSE_FILE=	${WRKSRC}/COPYING
+LICENSE=	BSD3CLAUSE LGPL3+
+LICENSE_COMB=	multi
+LICENSE_FILE_BSD3CLAUSE=	${WRKSRC}/LICENSES/BSD-3-Clause.txt
+LICENSE_FILE_LGPL3+ =	${WRKSRC}/LICENSES/LGPL-3.0-or-later.txt
 
 BUILD_DEPENDS=	swig:devel/swig \
 		${LOCALBASE}/include/zmq.hpp:net/cppzmq
-LIB_DEPENDS=	libopenshot-audio.so:audio/libopenshot-audio \
+LIB_DEPENDS=	libavformat.so:multimedia/ffmpeg \
+		libbabl-0.1.so:x11/babl \
 		libjsoncpp.so:devel/jsoncpp \
-		libavformat.so:multimedia/ffmpeg \
+		libopenshot-audio.so:audio/libopenshot-audio \
 		libzmq.so:net/libzmq4
 
-USES=		cmake pkgconfig python:3.6+ qt:5
+USES=		cmake pkgconfig python qt:5
 USE_GITHUB=	yes
 GH_ACCOUNT=	OpenShot
 USE_LDCONFIG=	yes
 USE_PYTHON=	flavors
-USE_QT=		core gui network multimedia widgets qmake:build buildtools:build
+USE_QT=		core gui svg widgets buildtools:build qmake:build
 CMAKE_ON=	USE_SYSTEM_JSONCPP DISABLE_BUNDLED_JSONCPP\
 		USE_HW_ACCEL ENABLE_PYTHON\
 		CMAKE_DISABLE_FIND_PACKAGE_Catch2\
 		CMAKE_DISABLE_FIND_PACKAGE_Resvg\
 		CMAKE_DISABLE_FIND_PACKAGE_Ruby
-CMAKE_OFF=	ENABLE_COVERAGE BUILD_TESTING ENABLE_TESTS\
-		ENABLE_RUBY
+CMAKE_OFF=	ENABLE_PARALLEL_CTEST VERBOSE_TESTS ENABLE_COVERAGE\
+		APPIMAGE_BUILD BUILD_TESTING ENABLE_TESTS ENABLE_RUBY
 
 OPTIONS_DEFINE=	DOCS IMAGEMAGICK OPENCV
-OPTIONS_DEFAULT=	IMAGEMAGICK
+OPTIONS_DEFAULT=	IMAGEMAGICK OPENCV
 OPTIONS_SUB=	yes
 DOCS_BUILD_DEPENDS=	doxygen:devel/doxygen
-DOCS_CMAKE_BOOL=	ENABLE_DOCS
+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=	*
@@ -52,15 +54,10 @@ OPENCV_CMAKE_BOOL_OFF=	CMAKE_DISABLE_FIND_PACKAGE_OpenCV\
 OPENCV_CMAKE_ON=	-DOpenCV_DIR:STRING=${LOCALBASE:Q}/cmake/opencv4
 
 .if !exists(/usr/include/omp.h)
-USES+=		compiler:gcc-c++11-lib
+USES+=		compiler:c++14-lang
+USE_GCC=	yes
 .else
-USES+=		compiler:c++11-lang
+USES+=		compiler:c++14-lang
 .endif
 
-do-build-DOCS-on:
-	@(cd ${BUILD_WRKSRC}; if ! ${DO_MAKE_BUILD} doc; then \
-		(${ECHO_CMD} "===> ${.TARGET} failed unexpectedly.") | ${FMT_80} ; \
-		${FALSE}; \
-		fi)
-
 .include <bsd.port.mk>
diff --git a/multimedia/libopenshot/distinfo b/multimedia/libopenshot/distinfo
index f74f47beb684..de668a7db0c6 100644
--- a/multimedia/libopenshot/distinfo
+++ b/multimedia/libopenshot/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1633834800
-SHA256 (OpenShot-libopenshot-v0.2.7_GH0.tar.gz) = 568eab6d69d469c5f745f0e25387ca5e000f7c28be48417b0d7770577ac74a28
-SIZE (OpenShot-libopenshot-v0.2.7_GH0.tar.gz) = 22472544
+TIMESTAMP = 1670814000
+SHA256 (OpenShot-libopenshot-v0.3.0_GH0.tar.gz) = 5b289432b1209f11fe60c17c07e9365ab62e3074dcc7d50996fc816dfe54a282
+SIZE (OpenShot-libopenshot-v0.3.0_GH0.tar.gz) = 26122831
diff --git a/multimedia/libopenshot/files/patch-CMakeLists.txt b/multimedia/libopenshot/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..fbb39ea66cf8
--- /dev/null
+++ b/multimedia/libopenshot/files/patch-CMakeLists.txt
@@ -0,0 +1,29 @@
+--- CMakeLists.txt.orig	2022-12-01 22:04:03 UTC
++++ CMakeLists.txt
+@@ -135,7 +135,7 @@ endif()
+ ### Process subdirectories
+ ###
+ add_subdirectory(src)
+-add_subdirectory(examples)
++#add_subdirectory(examples)
+ add_subdirectory(bindings)
+ 
+ ###
+@@ -193,6 +193,8 @@ if (ENABLE_LIB_DOCS AND CMAKE_VERSION VERSION_GREATER 
+     set(DOXYGEN_INTERACTIVE_SVG YES)
+     set(DOXYGEN_DOT_TRANSPARENT YES)
+ 
++    set(DOXYGEN_DOT_GRAPH_MAX_NODES "100")
++
+     doxygen_add_docs(${PROJECT_NAME}-doc
+       ${PROJECT_SOURCE_DIR}/src
+       ${PROJECT_SOURCE_DIR}/doc
+@@ -213,7 +215,7 @@ if (TARGET ${PROJECT_NAME}-doc)
+     OPTIONAL )    # No error if the docs aren't found
+ 
+   if(NOT TARGET doc)
+-    add_custom_target(doc)
++    add_custom_target(doc ALL)
+   endif()
+   if(TARGET doc)
+     add_dependencies(doc ${PROJECT_NAME}-doc)
diff --git a/multimedia/libopenshot/files/patch-src_CMakeLists.txt b/multimedia/libopenshot/files/patch-src_CMakeLists.txt
index e6fa4208c649..fe66e19d8c7b 100644
--- a/multimedia/libopenshot/files/patch-src_CMakeLists.txt
+++ b/multimedia/libopenshot/files/patch-src_CMakeLists.txt
@@ -1,17 +1,15 @@
---- src/CMakeLists.txt.orig	2021-08-19 20:40:39 UTC
+--- src/CMakeLists.txt.orig	2022-12-01 22:04:03 UTC
 +++ src/CMakeLists.txt
-@@ -494,6 +494,15 @@ See https://github.com/opencv/opencv/issues/19260]])
+@@ -516,6 +516,13 @@ See https://github.com/opencv/opencv/issues/19260]])
  endif()  # ENABLE_OPENCV
  add_feature_info("OpenCV algorithms" ENABLE_OPENCV "Use OpenCV algorithms")
  
 +# EXECINFO
-+if(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
-+	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})
-+endif(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD")
++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})
 +
  ###############  LINK LIBRARY  #################
  # Link remaining dependency libraries
diff --git a/multimedia/libopenshot/files/patch-src_FFmpegReader.cpp b/multimedia/libopenshot/files/patch-src_FFmpegReader.cpp
index 03ba68404250..95b0d6c2f6ce 100644
--- a/multimedia/libopenshot/files/patch-src_FFmpegReader.cpp
+++ b/multimedia/libopenshot/files/patch-src_FFmpegReader.cpp
@@ -1,6 +1,6 @@
---- src/FFmpegReader.cpp.orig	2021-08-19 20:40:39 UTC
+--- src/FFmpegReader.cpp.orig	2022-12-01 22:04:03 UTC
 +++ src/FFmpegReader.cpp
-@@ -139,7 +139,7 @@ static enum AVPixelFormat get_hw_dec_format(AVCodecCon
+@@ -130,7 +130,7 @@ static enum AVPixelFormat get_hw_dec_format(AVCodecCon
  
  	for (p = pix_fmts; *p != AV_PIX_FMT_NONE; p++) {
  		switch (*p) {
@@ -9,7 +9,7 @@
  			// Linux pix formats
  			case AV_PIX_FMT_VAAPI:
  				hw_de_av_pix_fmt_global = AV_PIX_FMT_VAAPI;
-@@ -295,7 +295,7 @@ void FFmpegReader::Open() {
+@@ -300,7 +300,7 @@ void FFmpegReader::Open() {
  					pCodecCtx->get_format = get_hw_dec_format;
  
  					if (adapter_num < 3 && adapter_num >=0) {
@@ -18,7 +18,7 @@
  						snprintf(adapter,sizeof(adapter),"/dev/dri/renderD%d", adapter_num+128);
  						adapter_ptr = adapter;
  						i_decoder_hw = openshot::Settings::Instance()->HARDWARE_DECODER;
-@@ -358,11 +358,13 @@ void FFmpegReader::Open() {
+@@ -363,11 +363,13 @@ void FFmpegReader::Open() {
  					}
  
  					// Check if it is there and writable
diff --git a/multimedia/libopenshot/files/patch-src_FFmpegWriter.cpp b/multimedia/libopenshot/files/patch-src_FFmpegWriter.cpp
index 06948a8a0020..827ea05a2821 100644
--- a/multimedia/libopenshot/files/patch-src_FFmpegWriter.cpp
+++ b/multimedia/libopenshot/files/patch-src_FFmpegWriter.cpp
@@ -1,7 +1,7 @@
---- src/FFmpegWriter.cpp.orig	2021-08-19 20:40:39 UTC
+--- src/FFmpegWriter.cpp.orig	2022-12-01 22:04:03 UTC
 +++ src/FFmpegWriter.cpp
-@@ -169,7 +169,7 @@ void FFmpegWriter::SetVideoOptions(bool has_video, std
- 		AVCodec *new_codec;
+@@ -166,7 +166,7 @@ void FFmpegWriter::SetVideoOptions(bool has_video, std
+ 		const AVCodec *new_codec;
  		// Check if the codec selected is a hardware accelerated codec
  #if USE_HW_ACCEL
 -#if defined(__linux__)
@@ -9,7 +9,7 @@
  		if (strstr(codec.c_str(), "_vaapi") != NULL) {
  			new_codec = avcodec_find_encoder_by_name(codec.c_str());
  			hw_en_on = 1;
-@@ -219,7 +219,7 @@ void FFmpegWriter::SetVideoOptions(bool has_video, std
+@@ -216,7 +216,7 @@ void FFmpegWriter::SetVideoOptions(bool has_video, std
  		}
  #else  // unknown OS
  		new_codec = avcodec_find_encoder_by_name(codec.c_str());
@@ -18,7 +18,7 @@
  #else // USE_HW_ACCEL
  		new_codec = avcodec_find_encoder_by_name(codec.c_str());
  #endif // USE_HW_ACCEL
-@@ -568,6 +568,7 @@ void FFmpegWriter::SetOption(StreamType stream, std::s
+@@ -563,6 +563,7 @@ void FFmpegWriter::SetOption(StreamType stream, std::s
  						else {
  							av_opt_set_int(c->priv_data, "crf", std::min(std::stoi(value),63), 0);
  						}
@@ -26,7 +26,7 @@
  					case AV_CODEC_ID_HEVC :
  						c->bit_rate = 0;
  						if (strstr(info.vcodec.c_str(), "svt_hevc") != NULL) {
-@@ -576,6 +577,8 @@ void FFmpegWriter::SetOption(StreamType stream, std::s
+@@ -571,6 +572,8 @@ void FFmpegWriter::SetOption(StreamType stream, std::s
  							av_opt_set_int(c->priv_data, "forced-idr",1,0);
  						}
  						break;
@@ -35,7 +35,7 @@
  				}
  #endif  // FFmpeg 4.0+
  		} else {
-@@ -1400,21 +1403,25 @@ void FFmpegWriter::open_video(AVFormatContext *oc, AVS
+@@ -1459,21 +1462,25 @@ void FFmpegWriter::open_video(AVFormatContext *oc, AVS
  		adapter_num = openshot::Settings::Instance()->HW_EN_DEVICE_SET;
  		std::clog << "Encoding Device Nr: " << adapter_num << "\n";
  		if (adapter_num < 3 && adapter_num >=0) {
@@ -62,4 +62,4 @@
 +#else
  		if( adapter_ptr != NULL ) {
  #endif
- 				ZmqLogger::Instance()->AppendDebugMethod("Encode Device present using device", "adapter", adapter_num);
+ 			ZmqLogger::Instance()->AppendDebugMethod(
diff --git a/multimedia/libopenshot/pkg-plist b/multimedia/libopenshot/pkg-plist
index 13aec344aa80..f7198faf1671 100644
--- a/multimedia/libopenshot/pkg-plist
+++ b/multimedia/libopenshot/pkg-plist
@@ -1,7 +1,8 @@
 include/libopenshot/AudioBufferSource.h
-include/libopenshot/AudioDeviceInfo.h
+include/libopenshot/AudioDevices.h
 include/libopenshot/AudioReaderSource.h
 include/libopenshot/AudioResampler.h
+include/libopenshot/AudioWaveformer.h
 include/libopenshot/CVObjectDetection.h
 include/libopenshot/CVStabilization.h
 include/libopenshot/CVTracker.h
@@ -17,10 +18,6 @@ include/libopenshot/ClipProcessingJobs.h
 include/libopenshot/Color.h
 include/libopenshot/Coordinate.h
 include/libopenshot/CrashHandler.h
-include/libopenshot/DecklinkInput.h
-include/libopenshot/DecklinkOutput.h
-include/libopenshot/DecklinkReader.h
-include/libopenshot/DecklinkWriter.h
 include/libopenshot/DummyReader.h
 include/libopenshot/EffectBase.h
 include/libopenshot/EffectInfo.h
@@ -96,17 +93,10 @@ include/libopenshot/effects/Shift.h
 include/libopenshot/effects/Stabilizer.h
 include/libopenshot/effects/Tracker.h
 include/libopenshot/effects/Wave.h
-%%OPENCV%%include/libopenshot/protobuf_messages/objdetectdata.pb.h
-%%OPENCV%%include/libopenshot/protobuf_messages/stabilizedata.pb.h
-%%OPENCV%%include/libopenshot/protobuf_messages/trackerdata.pb.h
 include/libopenshot/sort_filter/Hungarian.h
 include/libopenshot/sort_filter/KalmanTracker.h
 lib/libopenshot.so
-lib/libopenshot.so.0.2.7
-lib/libopenshot.so.21
-%%OPENCV%%lib/libopenshot_protobuf.so
-%%OPENCV%%lib/libopenshot_protobuf.so.0.2.7
-%%OPENCV%%lib/libopenshot_protobuf.so.21
+lib/libopenshot.so.0.3.0
+lib/libopenshot.so.23
 %%PYTHON_SITELIBDIR%%/_openshot.so
 %%PYTHON_SITELIBDIR%%/openshot.py
-%%NO_OPENCV%%@dir include/libopenshot/protobuf_messages