[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gentoo-dev
Subject:    [gentoo-dev] Re: gentoo-x86 commit in media-sound/squeezeboxserver: ChangeLog
From:       Torsten Veller <ml-en () veller ! net>
Date:       2009-11-26 9:35:48
Message-ID: 20091126092958.TAa5856.tv () veller ! net
[Download RAW message or body]

* "Joe Peterson (lavajoe)" <lavajoe@gentoo.org>:
> 1.1                  media-sound/squeezeboxserver/squeezeboxserver-7.4.1.ebuild
> 
> file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-sound/squeezeboxserver/squeezeboxserver-7.4.1.ebuild?rev=1.1&view=markup
>                 
> plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/media-sound/squeezeboxserver/squeezeboxserver-7.4.1.ebuild?rev=1.1&content-type=text/plain
>  
> Index: squeezeboxserver-7.4.1.ebuild
> ===================================================================

> RDEPEND="

> 	>=dev-perl/Class-XSAccessor-1.03
> 	>=dev-perl/Class-XSAccessor-Array-1.04

Class-XSAccessor-Array was merge in dev-perl/Class-XSAccessor-1.05 (#275520)
Please depend on ">=dev-perl/Class-XSAccessor-1.05" and drop -Array.

> 	"

> # Selected contents of SqueezeCenter's local CPAN collection that we include
> # in the installation. This removes duplication of CPAN modules. (See Gentoo
> # bug #251494).

Hm, I've added a bunch of these modules as requested in 
https://bugs.gentoo.org/showdependencytree.cgi?id=251494

Why don't you use them now?

> CPANKEEP="
> 	Class/XSAccessor/Array.pm
> 
> 	JSON/XS/VersionOneAndTwo.pm
> 	Class/Accessor/
> 	Class/Accessor.pm
> 	MRO/Compat.pm
> 	Algorithm/C3.pm
> 	Data/
> 	DBIx/
> 	File/BOM.pm
> 	Net/UPnP/
> 	Net/UPnP.pm
> 	Proc/Background/
> 	Proc/Background.pm
> 	Text/Unidecode/
> 	Text/Unidecode.pm
> 	Tie/Cache/LRU/
> 	Tie/Cache/LRU.pm
> 	Tie/LLHash.pm
> 	Tie/RegexpHash.pm
> 	UUID/Tiny.pm
> 	URI/Find.pm
> 	PAR/
> 	PAR.pm
> 	enum.pm
> 	"


> LIBDIR="/usr/lib/squeezeboxserver"

get_libdir ?

> pkg_setup() {
> 	# Sox has optional OGG and FLAC support, so make sure it has that included
> 	# if required
> 	if use ogg; then
> 		if ! built_with_use media-sound/sox ogg; then
> 			eerror "media-sound/sox not built with USE=ogg"
> 			die "Squeezebox Server needs media-sound/sox to be built with USE=ogg"
> 		fi
> 	fi
> 	if use flac; then
> 		if ! built_with_use media-sound/sox flac; then
> 			eerror "media-sound/sox not built with USE=flac"
> 			die "Squeezebox Server needs media-sound/sox to be built with USE=flac"
> 		fi
> 	fi

Use EAPI=2 and "USE Dependencies"
<http://devmanual.gentoo.org/ebuild-writing/eapi/index.html>


> src_install() {

> 	# The main Perl executables
> 	exeinto /usr/sbin
> 	newexe slimserver.pl squeezeboxserver
> 	newexe scanner.pl squeezeboxserver-scanner
> 	newexe cleanup.pl squeezeboxserver-cleanup

> > die

> 	# Get the Perl package name and version
> 	eval `perl '-V:package'`
> 	eval `perl '-V:version'`
> 
> 	# The custom OS module for Gentoo - provides OS-specific path details
> 	cp "${FILESDIR}/gentoo-filepaths.pm" "Slim/Utils/OS/Custom.pm" || die "Unable to \
> install Gentoo custom OS module" 
> 	# The server Perl modules
> 	dodir "/usr/lib/${package}/vendor_perl/${version}"
> 	cp -r Slim "${D}/usr/lib/${package}/vendor_perl/${version}" || die "Unable to \
> install server Perl modules"

You can make use of:
perl -V:installvendorlib

> 	# Compiled CPAN module go under lib as they are arch-specific
> 	dodir "/usr/lib/squeezeboxserver/CPAN"
> 	cp -r CPAN/arch "${D}/usr/lib/squeezeboxserver/CPAN" || die "Unable to install \
> compiled CPAN modules" 
> 	# Preseve some of the Squeezebox Server-packaged CPAN modules that Gentoo
> 	# doesn't provide ebuilds for.
> 	for ITEM in ${CPANKEEP}; do
> 		dodir "/usr/share/squeezeboxserver/CPAN/$(dirname ${ITEM})"
> 		cp -r "CPAN/${ITEM}" "${D}/usr/share/squeezeboxserver/CPAN/${ITEM}" || die \
> "Unable to preserve CPAN item ${ITEM}"  done

For CPANKEEP, see above.

> 	# Install preferences
> 	insinto "${PREFSDIR}"
> 	if [ ! -f "${PREFSDIR}/squeezeboxserver.prefs" ]; then

This test in src_test is wrong.

> 		newins "${FILESDIR}/squeezeboxserver.prefs" squeezeboxserver.prefs
> 	fi
> 	fowners squeezeboxserver:squeezeboxserver "${PREFSDIR}"
> 	fperms 770 "${PREFSDIR}"


> pkg_postinst() {

> 	# Album art requires PNG and JPEG support from GD, so if it's not there
> 	# then warn the user.  It's not mandatory as the user may not be using
> 	# album art.
> 	if ! built_with_use dev-perl/GD jpeg || \
> 	   ! built_with_use dev-perl/GD png || \
> 	   ! built_with_use media-libs/gd jpeg || \
> 	   ! built_with_use media-libs/gd png; then

EAPI=2 and "if ! has_version dev-perl/GD[jpeg] || \ ..." is prefered.

Regards


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic