Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 2 Feb 2006 00:29:40 GMT
From:      Ade Lovett <ade@FreeBSD.org>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/92711: PERL_{BUILD,RUN}_DEPENDS fundamentally broken
Message-ID:  <200602020029.k120TeZ0030610@freefall.freebsd.org>
Resent-Message-ID: <200602020030.k120U5MV030673@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         92711
>Category:       ports
>Synopsis:       PERL_{BUILD,RUN}_DEPENDS fundamentally broken
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Thu Feb 02 00:30:04 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Ade Lovett
>Release:        FreeBSD 6.0-STABLE i386
>Organization:
>Environment:

Not relevant.

>Description:

Current implementation of PERL_{BUILD,RUN}_DEPENDS is fundamentally
broken:

1.  ports flagged in PERL_{BUILD,RUN}_DEPENDS do not make it into
    the equivalent {BUILD,RUN}_DEPENDS list.

(a) dependencies will not be registered

(b) package building clusters and tinderboxes will attempt to recompile
    the port every single time (and often fail mysteriously) as opposed
    to using a pre-built package

(c) INDEX for such ports will be incomplete, breaking tools such as
    portupgrade that rely on such information


2.  the "convenience" of such a function is minimal.  Indeed, it's not
    even possible to write the actual module name (eg: Foo::Bar), rather
    it has to be manually altered to Foo-Bar

    So we're comparing:

	BUILD_DEPENDS= ${SITE_PERL}/Foo/Bar.pm:${PORTSDIR}/...
    vs
	PERL_BUILD_DEPENDS= Foo-Bar:${PORTSDIR}/...

    saving a whole 11 characters.

>How-To-Repeat:

Not relevant.

>Fix:

The current half-baked implementation should be removed with extreme
prejudice before it spreads further than the handful of ports that are
currently using it.

This is not to say that a PERL_{BUILD,RUN}_DEPENDS concept is broken
in and of itself, however the major issues listed above far, far
outweigh any possible convenience.  Particularly as we're coming up
to 5.5/6.1, an implementation should be developed within the confines
of devel/portmk, thoroughly tested to address the issues raised above,
then, and only then, let loose in the tree.
>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200602020029.k120TeZ0030610>