media-video/simplescreenrecorder: Initial commit (bug #516082).
authorLars Wendler <polynomial-c@gentoo.org>
Fri, 19 May 2017 14:04:21 +0000 (16:04 +0200)
committerLars Wendler <polynomial-c@gentoo.org>
Fri, 19 May 2017 14:07:05 +0000 (16:07 +0200)
Thanks to Anders Larsson for providing the basic ebuild.

Package-Manager: Portage-2.3.5, Repoman-2.3.2

media-video/simplescreenrecorder/Manifest [new file with mode: 0644]
media-video/simplescreenrecorder/metadata.xml [new file with mode: 0644]
media-video/simplescreenrecorder/simplescreenrecorder-0.3.8.ebuild [new file with mode: 0644]
media-video/simplescreenrecorder/simplescreenrecorder-9999.ebuild [new file with mode: 0644]

diff --git a/media-video/simplescreenrecorder/Manifest b/media-video/simplescreenrecorder/Manifest
new file mode 100644 (file)
index 0000000..1e2b704
--- /dev/null
@@ -0,0 +1 @@
+DIST simplescreenrecorder-0.3.8.tar.gz 2037017 SHA256 ef05f1b4c36e1d82a4e96f59c5f29aaae986ad6711ccc311d0e21c8e6c191c6d SHA512 f94c7ac7d5f6fdebd1c68da7469b6c46a21b399e2ad8744c52d3e9959d2ec74d15e6ac061d7fe41f02ebb9ee9a89fbd8feecf4e0a10110975f3857a7fbb66365 WHIRLPOOL 23a811f5af9921bfdaf8d5546b9497e4a46d923d6eeb38d572b4d243ca55e75f0528df4b31936f23684e9a3cd54f47c1289682d196a04d97927501e19362013b
diff --git a/media-video/simplescreenrecorder/metadata.xml b/media-video/simplescreenrecorder/metadata.xml
new file mode 100644 (file)
index 0000000..9778ada
--- /dev/null
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+  <maintainer type="person">
+    <email>polynomial-c@gentoo.org</email>
+    <name>Lars Wendler</name>
+  </maintainer>
+  <use>
+    <flag name="asm">Enable x86 assembly optimisation.</flag>
+    <flag name="vpx">Enable VP8 codec support via <pkg>media-libs/libvpx</pkg>.</flag>
+  </use>
+  <upstream>
+    <remote-id type="github">MaartenBaert/ssr</remote-id>
+  </upstream>
+</pkgmetadata>
diff --git a/media-video/simplescreenrecorder/simplescreenrecorder-0.3.8.ebuild b/media-video/simplescreenrecorder/simplescreenrecorder-0.3.8.ebuild
new file mode 100644 (file)
index 0000000..a98a42f
--- /dev/null
@@ -0,0 +1,93 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit flag-o-matic multilib-minimal
+
+if [[ ${PV} = 9999 ]]; then
+       inherit git-r3
+fi
+
+DESCRIPTION="A Simple Screen Recorder"
+HOMEPAGE="http://www.maartenbaert.be/simplescreenrecorder"
+LICENSE="GPL-3"
+PKGNAME="ssr"
+if [[ ${PV} = 9999 ]] ; then
+       EGIT_REPO_URI="git://github.com/MaartenBaert/${PKGNAME}.git
+               https://github.com/MaartenBaert/${PKGNAME}.git"
+       EGIT_BOOTSTRAP=""
+else
+       SRC_URI="https://github.com/MaartenBaert/${PKGNAME}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+       KEYWORDS="~amd64 ~x86"
+       S="${WORKDIR}/${PKGNAME}-${PV}"
+fi
+
+SLOT="0"
+IUSE="+asm debug jack mp3 pulseaudio theora vorbis vpx x264"
+
+RDEPEND="
+       dev-qt/qtcore:5
+       dev-qt/qtgui:5
+       dev-qt/qtwidgets:5
+       dev-qt/qtx11extras:5
+       media-libs/alsa-lib:0=
+       media-libs/mesa[${MULTILIB_USEDEP}]
+       || (
+               media-video/ffmpeg[vorbis?,vpx?,x264?,mp3?,theora?]
+               media-video/libav[vorbis?,vpx?,x264?,mp3?,theora?]
+       )
+       x11-libs/libX11[${MULTILIB_USEDEP}]
+       x11-libs/libXext
+       x11-libs/libXfixes[${MULTILIB_USEDEP}]
+       virtual/glu[${MULTILIB_USEDEP}]
+       jack? ( virtual/jack )
+       pulseaudio? ( media-sound/pulseaudio )
+"
+DEPEND="${RDEPEND}"
+
+pkg_setup() {
+       if [[ ${ABI} == amd64 ]]; then
+               elog "You may want to add USE flag 'abi_x86_32' when running a 64bit system"
+               elog "When added 32bit GLInject libraries are also included. This is"
+               elog "required if you want to use OpenGL recording on 32bit applications."
+               elog
+       fi
+
+       if { has_version media-video/ffmpeg[x264] || has_version media-video/libav[x264] ; } && has_version media-libs/x264[10bit] ; then
+               ewarn
+               ewarn "media-libs/x264 is currently built with 10bit useflag."
+               ewarn "This is known to prevent simplescreenrecorder from recording x264 videos"
+               ewarn "correctly. Please build media-libs/x264 without 10bit if you want to "
+               ewarn "record videos with x264."
+               ewarn
+       fi
+
+       # QT requires -fPIC. Compile fails otherwise.
+       # Recently removed from the default compile options upstream
+       # https://github.com/MaartenBaert/ssr/commit/25fe1743058f0d1f95f6fbb39014b6ac146b5180
+       append-flags -fPIC
+}
+
+multilib_src_configure() {
+       local myconf=(
+               $(multilib_native_use_enable debug assert)
+               $(multilib_native_use_with pulseaudio)
+               $(multilib_native_use_with jack)
+               $(use_enable asm x86-asm)
+       )
+
+       # libav doesn't have AVFrame::channels
+       # https://github.com/MaartenBaert/ssr/issues/195#issuecomment-45646159
+       if has_version media-video/libav; then
+               myconf+=( --disable-ffmpeg-versions )
+       fi
+
+       if multilib_is_native_abi ; then
+               myconf+=( --with-qt5 )
+       else
+               myconf+=( --disable-ssrprogram )
+       fi
+
+       ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}
diff --git a/media-video/simplescreenrecorder/simplescreenrecorder-9999.ebuild b/media-video/simplescreenrecorder/simplescreenrecorder-9999.ebuild
new file mode 100644 (file)
index 0000000..a98a42f
--- /dev/null
@@ -0,0 +1,93 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit flag-o-matic multilib-minimal
+
+if [[ ${PV} = 9999 ]]; then
+       inherit git-r3
+fi
+
+DESCRIPTION="A Simple Screen Recorder"
+HOMEPAGE="http://www.maartenbaert.be/simplescreenrecorder"
+LICENSE="GPL-3"
+PKGNAME="ssr"
+if [[ ${PV} = 9999 ]] ; then
+       EGIT_REPO_URI="git://github.com/MaartenBaert/${PKGNAME}.git
+               https://github.com/MaartenBaert/${PKGNAME}.git"
+       EGIT_BOOTSTRAP=""
+else
+       SRC_URI="https://github.com/MaartenBaert/${PKGNAME}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+       KEYWORDS="~amd64 ~x86"
+       S="${WORKDIR}/${PKGNAME}-${PV}"
+fi
+
+SLOT="0"
+IUSE="+asm debug jack mp3 pulseaudio theora vorbis vpx x264"
+
+RDEPEND="
+       dev-qt/qtcore:5
+       dev-qt/qtgui:5
+       dev-qt/qtwidgets:5
+       dev-qt/qtx11extras:5
+       media-libs/alsa-lib:0=
+       media-libs/mesa[${MULTILIB_USEDEP}]
+       || (
+               media-video/ffmpeg[vorbis?,vpx?,x264?,mp3?,theora?]
+               media-video/libav[vorbis?,vpx?,x264?,mp3?,theora?]
+       )
+       x11-libs/libX11[${MULTILIB_USEDEP}]
+       x11-libs/libXext
+       x11-libs/libXfixes[${MULTILIB_USEDEP}]
+       virtual/glu[${MULTILIB_USEDEP}]
+       jack? ( virtual/jack )
+       pulseaudio? ( media-sound/pulseaudio )
+"
+DEPEND="${RDEPEND}"
+
+pkg_setup() {
+       if [[ ${ABI} == amd64 ]]; then
+               elog "You may want to add USE flag 'abi_x86_32' when running a 64bit system"
+               elog "When added 32bit GLInject libraries are also included. This is"
+               elog "required if you want to use OpenGL recording on 32bit applications."
+               elog
+       fi
+
+       if { has_version media-video/ffmpeg[x264] || has_version media-video/libav[x264] ; } && has_version media-libs/x264[10bit] ; then
+               ewarn
+               ewarn "media-libs/x264 is currently built with 10bit useflag."
+               ewarn "This is known to prevent simplescreenrecorder from recording x264 videos"
+               ewarn "correctly. Please build media-libs/x264 without 10bit if you want to "
+               ewarn "record videos with x264."
+               ewarn
+       fi
+
+       # QT requires -fPIC. Compile fails otherwise.
+       # Recently removed from the default compile options upstream
+       # https://github.com/MaartenBaert/ssr/commit/25fe1743058f0d1f95f6fbb39014b6ac146b5180
+       append-flags -fPIC
+}
+
+multilib_src_configure() {
+       local myconf=(
+               $(multilib_native_use_enable debug assert)
+               $(multilib_native_use_with pulseaudio)
+               $(multilib_native_use_with jack)
+               $(use_enable asm x86-asm)
+       )
+
+       # libav doesn't have AVFrame::channels
+       # https://github.com/MaartenBaert/ssr/issues/195#issuecomment-45646159
+       if has_version media-video/libav; then
+               myconf+=( --disable-ffmpeg-versions )
+       fi
+
+       if multilib_is_native_abi ; then
+               myconf+=( --with-qt5 )
+       else
+               myconf+=( --disable-ssrprogram )
+       fi
+
+       ECONF_SOURCE="${S}" econf "${myconf[@]}"
+}