blob: 233bdf46fe976fe74159c2f38aeee54558aafd94 [file] [log] [blame]
# Copyright 1999-2016 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
PYTHON_COMPAT=(python{2_7,3_3,3_4,3_5})
inherit bash-completion-r1 distutils-r1 eutils
DESCRIPTION="Download videos from YouTube.com (and more sites...)"
HOMEPAGE="https://rg3.github.com/youtube-dl/"
SRC_URI="http://youtube-dl.org/downloads/${PV}/${P}.tar.gz"
LICENSE="public-domain"
SLOT="0"
KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
IUSE="offensive test"
RDEPEND="
dev-python/setuptools[${PYTHON_USEDEP}]
"
DEPEND="
${RDEPEND}
test? ( dev-python/nose[coverage(+)] )
"
S="${WORKDIR}/${PN}"
python_prepare_all() {
if ! use offensive; then
sed -i -e "/__version__/s|'$|-gentoo_no_offensive_sites'|g" \
youtube_dl/version.py || die
# these have single line import statements
local xxx=(
alphaporno anysex behindkink camwithher chaturbate drtuber eporner
eroprofile extremetube fourtube foxgay goshgay hellporno
hentaistigma hornbunny keezmovies lovehomeporn mofosex motherless
myvidster porn91 pornhd pornotube pornovoisines pornoxo redtube
ruleporn sexu slutload spankbang spankwire sunporno thisav tube8
vporn watchindianporn xbef xnxx xtube xvideos xxxymovies youjizz
youporn
)
# these have multi-line import statements
local mxxx=(
pornhub xhamster tnaflix
)
# do single line imports
sed -i \
-e $( printf '/%s/d;' ${xxx[@]} ) \
youtube_dl/extractor/extractors.py \
|| die
# do multiple line imports
sed -i \
-e $( printf '/%s/,/)/d;' ${mxxx[@]} ) \
youtube_dl/extractor/extractors.py \
|| die
sed -i \
-e $( printf '/%s/d;' ${mxxx[@]} ) \
youtube_dl/extractor/generic.py \
|| die
rm \
$( printf 'youtube_dl/extractor/%s.py ' ${xxx[@]} ) \
$( printf 'youtube_dl/extractor/%s.py ' ${mxxx[@]} ) \
test/test_age_restriction.py \
|| die
fi
epatch_user
distutils-r1_python_prepare_all
}
src_compile() {
distutils-r1_src_compile
}
python_test() {
emake test
}
python_install_all() {
dodoc README.txt
doman ${PN}.1
newbashcomp ${PN}.bash-completion ${PN}
insinto /usr/share/zsh/site-functions
newins youtube-dl.zsh _youtube-dl
insinto /usr/share/fish/completions
doins youtube-dl.fish
distutils-r1_python_install_all
rm -r "${D}"/usr/etc || die
}