diff options
author | Stefan Strogin <steils@gentoo.org> | 2020-05-16 05:32:55 +0300 |
---|---|---|
committer | Stefan Strogin <steils@gentoo.org> | 2020-05-16 05:42:49 +0300 |
commit | 04651aa3213e2e49f37657c1a5643e7c83a7f4e3 (patch) | |
tree | d5f68000ef3727d8bd2a30fc47b6ff12ad9838f9 /media-libs/libopenshot | |
parent | media-libs/libopenshot-audio: version bump to 0.2.0 (diff) | |
download | gentoo-04651aa3213e2e49f37657c1a5643e7c83a7f4e3.tar.gz gentoo-04651aa3213e2e49f37657c1a5643e7c83a7f4e3.tar.bz2 gentoo-04651aa3213e2e49f37657c1a5643e7c83a7f4e3.zip |
media-libs/libopenshot: version bump to 0.2.5
- Fix sub-slot operator for dev-libs/jsoncpp dependency.
- SLOT="0/19".
- Add python3_8 to PYTHON_COMPAT.
- Add patch for gcc-10.
Closes: https://bugs.gentoo.org/721142
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Stefan Strogin <steils@gentoo.org>
Diffstat (limited to 'media-libs/libopenshot')
-rw-r--r-- | media-libs/libopenshot/Manifest | 1 | ||||
-rw-r--r-- | media-libs/libopenshot/files/libopenshot-0.2.5-gcc10.patch | 58 | ||||
-rw-r--r-- | media-libs/libopenshot/libopenshot-0.2.5.ebuild | 98 |
3 files changed, 157 insertions, 0 deletions
diff --git a/media-libs/libopenshot/Manifest b/media-libs/libopenshot/Manifest index 4c8719808dab..12ce0990164f 100644 --- a/media-libs/libopenshot/Manifest +++ b/media-libs/libopenshot/Manifest @@ -1,3 +1,4 @@ DIST libopenshot-0.2.2.tar.gz 11037768 BLAKE2B c307e41bf17d40ae421a541bbdf4cd53c6ef4d97041a476c6910bd156c10815aa5a5811813b24fdc472401516f29cf8cb68fbda17a0b434767c3f3aa63d6f222 SHA512 b89189e57e82da68a063417bba9c94704c04b0546c0aed227daa23a794eee56341a05988d8e28dbd339edfcdeeaed48103b347060eccf94f32fe1a4bf23d6553 DIST libopenshot-0.2.4.tar.gz 10295888 BLAKE2B 2967f1faa56090355255e24c0367a4171af7433c53eab303c9d88432174d03879ae9fd2e6904e614ea6ba210e0c72c401cab95a1d2aa93ddd2cea2b861e985ce SHA512 6824ad22e81814b6427a4cb6489e5b893be264b5afa6e54287cd649f244f86b938c1b1d56280c1f49af65fa118d056d204bd39bc5b2ccdc10376d2df2f33a352 DIST libopenshot-0.2.4_pre20190609.tar.gz 10268173 BLAKE2B 01e07c0a7c051b5804f24fab1bfb920862a165ef14d3fdd020430b9e3a47858842c8cab3408ba0d161cb15cc6e90531a3b5df9ad327a01f414ff2e7e392fc243 SHA512 bf8c06aba6a899cb1ca6fbe9ac89fc859083b03175338c04af8dce68698f4ac78eac0b5b594e2b02390cd5e64576445b1c95324b254a267506353bed97ca16d1 +DIST libopenshot-0.2.5.tar.gz 10295768 BLAKE2B 19205c4f02d8b863b48e920164302853c7a505893783161e6a146e7a9728cefa19d4e48bc82b862e920967f110988ac28f5f495912efabbbacc98f55ebb51856 SHA512 b7cdf72897e6edaa8cc00e17dbe30f5b22a6b5d69aab64ddafb184458b41ef0332db1f3e2c6f039492bf7adb521d9758834d0bf6c24e6421a55970d8cf8caba7 diff --git a/media-libs/libopenshot/files/libopenshot-0.2.5-gcc10.patch b/media-libs/libopenshot/files/libopenshot-0.2.5-gcc10.patch new file mode 100644 index 000000000000..4a116b120086 --- /dev/null +++ b/media-libs/libopenshot/files/libopenshot-0.2.5-gcc10.patch @@ -0,0 +1,58 @@ +From 13290364e7bea54164ab83d973951f2898ad9e23 Mon Sep 17 00:00:00 2001 +From: Stefan Strogin <steils@gentoo.org> +Date: Sat, 16 May 2020 02:33:37 +0300 +Subject: [PATCH] FFmpegUtilities: replace variable definition with statement + expression + +It is needed to avoid multiple definitions of AV_GET_CODEC_CONTEXT, +which is considered as an error with '-fno-common' which is default +since gcc-10. + +Fixes: #511 + +Upstream-Status: Submitted +[https://github.com/OpenShot/libopenshot/pull/512] +Signed-off-by: Stefan Strogin <steils@gentoo.org> +--- + include/FFmpegUtilities.h | 18 ++++++++---------- + 1 file changed, 8 insertions(+), 10 deletions(-) + +diff --git a/include/FFmpegUtilities.h b/include/FFmpegUtilities.h +index 62d64df..b4ec951 100644 +--- a/include/FFmpegUtilities.h ++++ b/include/FFmpegUtilities.h +@@ -163,11 +163,10 @@ + #define AV_FREE_CONTEXT(av_context) avcodec_free_context(&av_context) + #define AV_GET_CODEC_TYPE(av_stream) av_stream->codecpar->codec_type + #define AV_FIND_DECODER_CODEC_ID(av_stream) av_stream->codecpar->codec_id +- auto AV_GET_CODEC_CONTEXT = [](AVStream* av_stream, AVCodec* av_codec) { \ +- AVCodecContext *context = avcodec_alloc_context3(av_codec); \ +- avcodec_parameters_to_context(context, av_stream->codecpar); \ +- return context; \ +- }; ++ #define AV_GET_CODEC_CONTEXT(av_stream, av_codec) \ ++ ({ AVCodecContext *context = avcodec_alloc_context3(av_codec); \ ++ avcodec_parameters_to_context(context, av_stream->codecpar); \ ++ context; }) + #define AV_GET_CODEC_PAR_CONTEXT(av_stream, av_codec) av_codec; + #define AV_GET_CODEC_FROM_STREAM(av_stream,codec_in) + #define AV_GET_CODEC_ATTRIBUTES(av_stream, av_context) av_stream->codecpar +@@ -199,11 +198,10 @@ + #define AV_FREE_CONTEXT(av_context) avcodec_free_context(&av_context) + #define AV_GET_CODEC_TYPE(av_stream) av_stream->codecpar->codec_type + #define AV_FIND_DECODER_CODEC_ID(av_stream) av_stream->codecpar->codec_id +- auto AV_GET_CODEC_CONTEXT = [](AVStream* av_stream, AVCodec* av_codec) { \ +- AVCodecContext *context = avcodec_alloc_context3(av_codec); \ +- avcodec_parameters_to_context(context, av_stream->codecpar); \ +- return context; \ +- }; ++ #define AV_GET_CODEC_CONTEXT(av_stream, av_codec) \ ++ ({ AVCodecContext *context = avcodec_alloc_context3(av_codec); \ ++ avcodec_parameters_to_context(context, av_stream->codecpar); \ ++ context; }) + #define AV_GET_CODEC_PAR_CONTEXT(av_stream, av_codec) av_codec; + #define AV_GET_CODEC_FROM_STREAM(av_stream,codec_in) + #define AV_GET_CODEC_ATTRIBUTES(av_stream, av_context) av_stream->codecpar +-- +2.26.2 + diff --git a/media-libs/libopenshot/libopenshot-0.2.5.ebuild b/media-libs/libopenshot/libopenshot-0.2.5.ebuild new file mode 100644 index 000000000000..840b5fb4de84 --- /dev/null +++ b/media-libs/libopenshot/libopenshot-0.2.5.ebuild @@ -0,0 +1,98 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6,7,8} ) + +inherit cmake python-single-r1 toolchain-funcs + +DESCRIPTION="Video editing library used by OpenShot" +HOMEPAGE="https://www.openshot.org/" +SRC_URI="https://github.com/OpenShot/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-3+" +SLOT="0/19" +KEYWORDS="~amd64 ~x86" +IUSE="doc examples +imagemagick +python test" +RESTRICT="!test? ( test )" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND=" + dev-libs/jsoncpp:0= + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtmultimedia:5[widgets] + >=media-libs/libopenshot-audio-0.2.0:0= + net-libs/cppzmq + net-libs/zeromq + imagemagick? ( >=media-gfx/imagemagick-7:0=[cxx] ) + media-video/ffmpeg:0=[encode,x264,xvid,vpx,mp3,theora] + python? ( ${PYTHON_DEPS} ) +" +DEPEND="${RDEPEND}" +BDEPEND=" + doc? ( app-doc/doxygen ) + python? ( dev-lang/swig ) + test? ( dev-libs/unittest++ ) +" + +PATCHES=( ${FILESDIR}/${PN}-0.2.5-gcc10.patch ) + +check_compiler() { + if [[ ${MERGE_TYPE} != binary ]] && ! tc-has-openmp; then + eerror "${P} requires a compiler with OpenMP support. Your current" + eerror "compiler does not support it. If you use gcc, you can" + eerror "re-emerge it with the 'openmp' use flag enabled." + die "The current compiler does not support OpenMP" + fi +} + +pkg_pretend() { + check_compiler +} + +pkg_setup() { + check_compiler + use python && python-single-r1_pkg_setup +} + +src_prepare() { + cmake_src_prepare + # https://github.com/OpenShot/libopenshot/issues/17 + use test || cmake_comment_add_subdirectory tests +} + +src_configure() { + local mycmakeargs=( + -DENABLE_RUBY=OFF # TODO: add ruby support + -DENABLE_PYTHON=$(usex python) + -DUSE_SYSTEM_JSONCPP=ON + $(cmake_use_find_package imagemagick ImageMagick) + ) + use python && mycmakeargs+=( + -DPYTHON_EXECUTABLE="${PYTHON}" + -DPYTHON_INCLUDE_DIR="$(python_get_includedir)" + -DPYTHON_LIBRARY="$(python_get_library_path)" + ) + cmake_src_configure +} + +src_compile() { + cmake_src_compile + use doc && cmake_build doc +} + +src_test() { + cmake_build os_test +} + +src_install() { + local DOCS=( AUTHORS README.md doc/HW-ACCEL.md ) + use examples && DOCS+=( src/examples/ ) + use doc && local HTML_DOCS=( "${BUILD_DIR}"/doc/html/. ) + + cmake_src_install + use python && python_optimize +} |