diff options
Diffstat (limited to 'net-misc/mediatomb/mediatomb-0.12.1-r7.ebuild')
-rw-r--r-- | net-misc/mediatomb/mediatomb-0.12.1-r7.ebuild | 161 |
1 files changed, 161 insertions, 0 deletions
diff --git a/net-misc/mediatomb/mediatomb-0.12.1-r7.ebuild b/net-misc/mediatomb/mediatomb-0.12.1-r7.ebuild new file mode 100644 index 000000000000..7ab5e96d1c24 --- /dev/null +++ b/net-misc/mediatomb/mediatomb-0.12.1-r7.ebuild @@ -0,0 +1,161 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 +inherit autotools eutils linux-info user + +DEB_VER="4" +DESCRIPTION="MediaTomb is an open source UPnP MediaServer" +HOMEPAGE="http://www.mediatomb.cc/" + +SRC_URI="mirror://sourceforge/mediatomb/${P}.tar.gz + mirror://debian/pool/main/${PN:0:1}/${PN}/${PN}_${PV}-${DEB_VER}.debian.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="amd64 ~arm ~ppc x86" + +IUSE="curl debug +exif +ffmpeg flac id3tag +inotify +javascript lastfm + libextractor +magic +mp4 mysql +sqlite +taglib thumbnail +zlib" +REQUIRED_USE=" + || ( mysql sqlite ) + taglib? ( !id3tag ) + id3tag? ( !taglib ) + thumbnail? ( ffmpeg !libextractor ) + ffmpeg? ( !libextractor ) + libextractor? ( !ffmpeg !thumbnail ) +" + +DEPEND="mysql? ( virtual/mysql ) + dev-libs/expat + id3tag? ( media-libs/id3lib ) + javascript? ( >=dev-lang/spidermonkey-1.8.5:0 ) + taglib? ( media-libs/taglib ) + sqlite? ( >=dev-db/sqlite-3 ) + lastfm? ( >=media-libs/lastfmlib-0.4 ) + exif? ( media-libs/libexif ) + libextractor? ( media-libs/libextractor ) + mp4? ( >=media-libs/libmp4v2-1.9.1_p479:0 ) + ffmpeg? ( virtual/ffmpeg ) + flac? ( media-libs/flac ) + thumbnail? ( media-video/ffmpegthumbnailer[jpeg] ) + curl? ( net-misc/curl net-misc/youtube-dl ) + magic? ( sys-apps/file ) + sys-apps/util-linux + zlib? ( sys-libs/zlib ) + virtual/libiconv +" +RDEPEND="${DEPEND}" + +CONFIG_CHECK="~INOTIFY_USER" + +pkg_setup() { + enewgroup mediatomb + enewuser mediatomb -1 -1 /dev/null mediatomb +} + +src_prepare() { + + # Apply Debians patchset + local p dd="${WORKDIR}"/debian/patches + sed -i -r '/^[-+]{3} /s:[.][.]/::' "${dd}"/* || die + for p in $(<"${dd}"/series) ; do + epatch "${dd}"/${p} + done + + # libmp4v2 API breakage #410235 + epatch "${FILESDIR}"/${P}-libmp4v2.patch + + # Use system libuuid #270830 + epatch "${FILESDIR}"/${P}-system-uuid.patch + + # Support spidermonkey-187 #423991 #482392 + if has_version "~dev-lang/spidermonkey-1.8.7" ; then + epatch "${FILESDIR}"/${P}-mozjs187.patch + fi + + # Support libextractor-0.6.0 #435394 + epatch "${FILESDIR}"/${P}-libextractor.patch + + # Fix inotify and hard links + epatch "${FILESDIR}"/${P}-inotify-hard-links.patch + + # Add support for caching thumbnails + epatch "${FILESDIR}"/${P}-thumb-cache.patch + + # Support libav-9 #443178 + epatch "${FILESDIR}"/${P}-libav9.patch + + # Fix Crash due to Uninitalized AVFormatContext pointer #446922 + epatch "${FILESDIR}"/${P}-avformatcontext-pointer.patch + + # Respect AR #464710 + epatch "${FILESDIR}"/${P}-system-ar.patch + + # Add flac metadata support #494398 + epatch "${FILESDIR}"/${P}-flac-metadata.patch + + # Work around broken youtube support by using youtube-dl #467110 + epatch "${FILESDIR}"/${P}-youtube-dl.patch + + epatch_user + + eautoreconf +} + +src_configure() { + econf \ + $(use_enable curl) \ + $(use_enable curl youtube) \ + $(use_enable debug tombdebug) \ + $(use_enable exif libexif) \ + $(use_enable ffmpeg) \ + $(use_enable flac FLAC) \ + $(use_enable id3tag id3lib) \ + $(use_enable inotify) \ + $(use_enable javascript libjs) \ + $(use_enable lastfm lastfmlib) \ + $(use_enable libextractor) \ + $(use_enable magic libmagic) \ + $(use_enable mp4 libmp4v2) \ + $(use_enable mysql) \ + $(use_enable sqlite sqlite3) \ + $(use_enable taglib) \ + $(use_enable thumbnail ffmpegthumbnailer) \ + $(use_enable zlib) \ + --enable-external-transcoding \ + --enable-protocolinfo-extension +} + +src_install() { + default + + newinitd "${FILESDIR}"/${PN}-0.12.1.initd ${PN} + use mysql || sed -i -e "/use mysql/d" "${ED}"/etc/init.d/${PN} + newconfd "${FILESDIR}"/${PN}-0.12.0.confd ${PN} + + insinto /etc/mediatomb + newins "${FILESDIR}/${PN}-0.12.0.config" config.xml + fperms 0600 /etc/mediatomb/config.xml + fowners mediatomb:mediatomb /etc/mediatomb/config.xml + + keepdir /var/lib/mediatomb + fowners mediatomb:mediatomb /var/lib/mediatomb +} + +pkg_postinst() { + if use mysql ; then + elog "MediaTomb has been built with MySQL support and needs" + elog "to be configured before being started." + elog "For more information, please consult the MediaTomb" + elog "documentation: http://mediatomb.cc/pages/documentation" + elog + fi + + elog "To configure MediaTomb edit:" + elog "/etc/mediatomb/config.xml" + elog + elog "The MediaTomb web interface can be reached at (after the service is started):" + elog "http://localhost:49152/" +} |