Thanks to Anders Larsson for providing the basic ebuild.
Package-Manager: Portage-2.3.5, Repoman-2.3.2
--- /dev/null
+DIST simplescreenrecorder-0.3.8.tar.gz 2037017 SHA256 ef05f1b4c36e1d82a4e96f59c5f29aaae986ad6711ccc311d0e21c8e6c191c6d SHA512 f94c7ac7d5f6fdebd1c68da7469b6c46a21b399e2ad8744c52d3e9959d2ec74d15e6ac061d7fe41f02ebb9ee9a89fbd8feecf4e0a10110975f3857a7fbb66365 WHIRLPOOL 23a811f5af9921bfdaf8d5546b9497e4a46d923d6eeb38d572b4d243ca55e75f0528df4b31936f23684e9a3cd54f47c1289682d196a04d97927501e19362013b
--- /dev/null
+<?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>
--- /dev/null
+# 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[@]}"
+}
--- /dev/null
+# 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[@]}"
+}