[gentoo-dev] Re: perl eclass review - EAPI=3 + new helper eclass

2010-04-19 Thread Torsten Veller
* Torsten Veller :
> The perl-module.eclass must be updated to support EAPI=3 [1] and
> a new eclass will be added which does contain some (more or less) useful
> stand-alone functions split from the old perl-module.eclass without
> exporting phase functions.

Somehow I was sleeping: It's more useful to set EXPORT_FUNCTIONS
conditionally and have all functions in perl-module.eclass.

I think this justifies the elimination of the perl-helper.eclass.

Sorry for the confusion. Hopefully wide awake now.



New perl-helper.eclass:

| # Copyright 1999-2010 Gentoo Foundation
| # Distributed under the terms of the GNU General Public License v2
| # $Header: $
| 
| # @DEAD
| 
| PERL_EXPORT_PHASE_FUNCTIONS=no
| inherit perl-module


Head of new perl-module.eclass:
http://git.overlays.gentoo.org/gitweb/?p=proj/perl-overlay.git;a=tree;f=eclass;hb=HEAD

| @@ -12,19 +12,19 @@
|  # The perl-module eclass is designed to allow easier installation of perl
|  # modules, and their incorporation into the Gentoo Linux system.
|  
| -inherit perl-helper eutils base
| +inherit eutils base
|  [[ ${CATEGORY} == "perl-core" ]] && inherit alternatives
|  
|  PERL_EXPF="src_unpack src_compile src_test src_install"
|  
|  case "${EAPI:-0}" in
| 0|1)
| -   PERL_EXPF="${PERL_EXPF} pkg_setup pkg_preinst pkg_postinst 
pkg_prerm pkg_postrm"
| +   PERL_EXPF+=" pkg_setup pkg_preinst pkg_postinst pkg_prerm 
pkg_postrm"
| ;;
| 2|3)
| -   PERL_EXPF="${PERL_EXPF} src_prepare src_configure"
| +   PERL_EXPF+=" src_prepare src_configure"
| [[ ${CATEGORY} == "perl-core" ]] && \
| -   PERL_EXPF="${PERL_EXPF} pkg_postinst pkg_postrm"
| +   PERL_EXPF+=" pkg_postinst pkg_postrm"
|  
| case "${GENTOO_DEPEND_ON_PERL:-yes}" in
| yes)
| @@ -38,7 +38,17 @@ case "${EAPI:-0}" in
| ;;
|  esac
|  
| -EXPORT_FUNCTIONS ${PERL_EXPF}
| +case "${PERL_EXPORT_PHASE_FUNCTIONS:-yes}" in
| +   yes)
| +   EXPORT_FUNCTIONS ${PERL_EXPF}
| +   ;;
| +   no)
| +   debug-print "PERL_EXPORT_PHASE_FUNCTIONS=no"
| +   ;;
| +   *)
| +   DEPEND+=" PERL_EXPORT_PHASE_FUNCTIONS-UNSUPPORTED"
| +   ;;
| +esac
|  
|  DESCRIPTION="Based on the $ECLASS eclass"
...



[gentoo-dev] Re: perl eclass review - EAPI=3 + new helper eclass

2010-04-17 Thread Torsten Veller
* James Cloos :
> > "TV" == Torsten Veller  writes:
> TV> There was a reason why the man-pages were removed: I think it was
> TV> collisions protection and perl people use `perldoc` anyway.
> 
> Perl people -- I'm one -- use man(1); given the differences in
> usefulness, I cannot imagine why anyone would prefer perldoc(1)
> over man(1).

Please file a bug if you want man pages for all the modules.

Thanks



Re: [gentoo-dev] Re: perl eclass review - EAPI=3 + new helper eclass

2010-04-12 Thread Fabian Groffen
On 12-04-2010 10:07:54 +0200, Christian Faulhammer wrote:
> > if [[ -d ${D}/${VENDOR_LIB} ]] ; then
> 
>  Haven't checked, but quotes not needed?

it's within [[ ]], so no.


-- 
Fabian Groffen
Gentoo on a different level



[gentoo-dev] Re: perl eclass review - EAPI=3 + new helper eclass

2010-04-12 Thread Christian Faulhammer
Hi,

Torsten Veller :
>   find "${S}" -type f -name "._*" -print0 | while read -rd ''
> f ; do einfo "Removing AppleDouble encoded Macintosh file: ${f#${S}/}"
>   rm -f "${f}"
>   f=${f#${S}/}
>   #   f=${f//\//\/}
>   #   f=${f//\./\.}
>   #   sed -i "/${f}/d" "${S}"/MANIFEST || die
>   grep -q "${f}" "${S}"/MANIFEST && \
>   elog "AppleDouble encoded Macintosh file in
> MANIFEST: ${f#${S}/}" done
> }

 Are those f= lines commented?  And what was their purpose?  Can they
be deleted?

>   if [[ -d ${D}/${VENDOR_LIB} ]] ; then

 Haven't checked, but quotes not needed?

V-Li

-- 
Christian Faulhammer, Gentoo Lisp project
http://www.gentoo.org/proj/en/lisp/>, #gentoo-lisp on FreeNode

http://gentoo.faulhammer.org/>


signature.asc
Description: PGP signature


Re: [gentoo-dev] Re: perl eclass review - EAPI=3 + new helper eclass

2010-04-09 Thread James Cloos
> "D" == Duncan  <1i5t5.dun...@cox.net> writes:

D> While you're correct in the ordinary case, keep in mind that this is perl 
D> developer docs we're talking about here -- not ordinary user documentation.

Developer docs *are* ordinary user documentation.  Section 3 is perhaps
the most used section of man, with sections 2 and, depending on platform,
one or more of sections 4, 5 or 6 following.

D> And those that know enough about perl to find the developer documentation 
D> useful should also know how to use perldoc,

You are ignoring the fact that having the docs in man is more useful;
much easier to use, usable by any man reader.  The list goes on.

There is simply no *real* benefit to eliding them, it only does harm.

People who do not want to install them should specify that preference
via a USE flag (-man, perhaps).

It would even be OK were the USE flag off by default; but making it
impossible to Do The Right Thing w/o editing eclasses every time one
syncs is just wrong.

-JimC
-- 
James Cloos  OpenPGP: 1024D/ED7DAEA6



Re: [gentoo-dev] Re: perl eclass review - EAPI=3 + new helper eclass

2010-04-09 Thread James Cloos
> "MG" == Michał Górny  writes:

MG> I prefer perldoc over man. And I cannot imagine why anyone would prefer
MG> keeping two copies of the same docs if generating one from another
MG> takes less than a second.

It takes more than a mere second, and man(1), man.el, woman.el and the
like have better UIs than perldoc(1) has.

-JimC
-- 
James Cloos  OpenPGP: 1024D/ED7DAEA6



Re: [gentoo-dev] Re: perl eclass review - EAPI=3 + new helper eclass

2010-04-06 Thread Michał Górny
On Tue, 06 Apr 2010 10:25:27 -0400
James Cloos  wrote:

> Perl people -- I'm one -- use man(1); given the differences in
> usefulness, I cannot imagine why anyone would prefer perldoc(1)
> over man(1).

I prefer perldoc over man. And I cannot imagine why anyone would prefer
keeping two copies of the same docs if generating one from another
takes less than a second.

-- 
Best regards,
Michał Górny





signature.asc
Description: PGP signature


[gentoo-dev] Re: perl eclass review - EAPI=3 + new helper eclass

2010-04-06 Thread Duncan
James Cloos posted on Tue, 06 Apr 2010 10:27:36 -0400 as excerpted:

>> "MH" == Michael Higgins  writes:
> 
> MH> Yep. Why have a man page for a perl module? OTOH, if there is
> something MH> that goes in /usr/bin, it should get a man page if there
> is one. But MH> not for the modules themselves -- that's not needed at
> all.
> 
> Because man(1) works better than the alternatives; it is the unix way;
> it is the first thing one types when searching for documentation.
> 
> The idea that the man pages are somehow uneeded is incomprehensible.

While you're correct in the ordinary case, keep in mind that this is perl 
developer docs we're talking about here -- not ordinary user documentation.

And those that know enough about perl to find the developer documentation 
useful should also know how to use perldoc, while those that don't know 
how to use perldoc, aren't likely to find the perl developer manpages of 
much help, either; they'll be pretty much ordinary users, at least where 
perl is concerned, and thus if anything, confused and irritated by all 
those extra "useless" perl developer manpages.

-- 
Duncan - List replies preferred.   No HTML msgs.
"Every nonfree program has a lord, a master --
and if you use the program, he is your master."  Richard Stallman




Re: [gentoo-dev] Re: perl eclass review - EAPI=3 + new helper eclass

2010-04-06 Thread James Cloos
> "MH" == Michael Higgins  writes:

MH> Yep. Why have a man page for a perl module? OTOH, if there is something
MH> that goes in /usr/bin, it should get a man page if there is one. But
MH> not for the modules themselves -- that's not needed at all.

Because man(1) works better than the alternatives; it is the unix way;
it is the first thing one types when searching for documentation.

The idea that the man pages are somehow uneeded is incomprehensible.

-JimC
-- 
James Cloos  OpenPGP: 1024D/ED7DAEA6



Re: [gentoo-dev] Re: perl eclass review - EAPI=3 + new helper eclass

2010-04-06 Thread James Cloos
> "TV" == Torsten Veller  writes:

TV> * James Cloos :
>> One change the perl eclasses require is elimination of the code which
>> deletes the man pages.
>> 
>> Deleting the man pages is /extremely/ rude and should not occur.

TV> There was a reason why the man-pages were removed: I think it was
TV> collisions protection and perl people use `perldoc` anyway.

Perl people -- I'm one -- use man(1); given the differences in
usefulness, I cannot imagine why anyone would prefer perldoc(1)
over man(1).

TV> Do we need a patch to avoid collisions? Do you have it ready and tested?

I've never seen any collisions due to installing the man pages.

-JimC
-- 
James Cloos  OpenPGP: 1024D/ED7DAEA6



Re: [gentoo-dev] Re: perl eclass review - EAPI=3 + new helper eclass

2010-04-04 Thread Michael Higgins
On Sat, 3 Apr 2010 12:33:48 +0200
Torsten Veller  wrote:

>  perl people use `perldoc` anyway.

Yep. Why have a man page for a perl module? OTOH, if there is something
that goes in /usr/bin, it should get a man page if there is one. But
not for the modules themselves -- that's not needed at all.

Just my $0.02.

-- 
 |\  /||   |  ~ ~  
 | \/ ||---|  `|` ?
 ||ichael  |   |iggins\^ /
 michael.higgins[at]evolone[dot]org



[gentoo-dev] Re: perl eclass review - EAPI=3 + new helper eclass

2010-04-03 Thread Torsten Veller
* James Cloos :
> One change the perl eclasses require is elimination of the code which
> deletes the man pages.
> 
> Deleting the man pages is /extremely/ rude and should not occur.

There was a reason why the man-pages were removed: I think it was
collisions protection and perl people use `perldoc` anyway.

Do we need a patch to avoid collisions? Do you have it ready and tested?



[gentoo-dev] Re: perl eclass review - EAPI=3 + new helper eclass

2010-04-03 Thread Torsten Veller
* Alec Warner :
> It is obvious what many of the functions do (I can read shell, yay!)
> but it is not obvious to me why they exist or why I would want to call
> them.  Why do I want to delete AppleDouble files?  What are dual-life
> scripts and why do I want to symlink them?  Why would I want to delete
> packfiles?  Some documentation would be nice h ere.

Absolutely. The perl-team already has a bug for it (#259815).
Perl eclass changes are tracked in bug #239510.
But I don't think missing documentation is a stopper here. Most of it
is copied from perl-modules.eclass.

- AppleDouble (name reported by `file`)
  268497 [p...@gentoo.org] - Remove ._* files in perl-module_src_prepare
  273104 [dev-port...@gentoo.org] - New QA check: installed OSX fork files (if 
I got the name right)

- dual-life scripts
  scripts installed by dual-life packages (part of dev-lang/perl and
  also stand-alone in perl-core/). Only relevant for perl-core/
  packages.

- .packlist
  something like CONTENTS.

[---=| TOFU protection by t-prot: 143 lines snipped |=---]



[gentoo-dev] Re: perl eclass review - EAPI=3 + new helper eclass

2010-04-01 Thread Jonathan Callen
On 04/01/2010 07:41 PM, James Cloos wrote:
> And given that portage inappropriately ignores a fixed eclass in the
> OVERlay, that means that every time one syncs one must re-patch the
> offending eclasses.

If you want all ebuilds to use eclasses from a given overlay (if available)
instead of the eclasses from the same repository, then you should add the
following 2 lines to /etc/portage/repos.conf:

[DEFAULT]
eclass-overrides = local

Where "local" is the contents of /path/to/overlay/profiles/repo_name.

-- 
Jonathan Callen



signature.asc
Description: OpenPGP digital signature