Bug 154896 - Forbid ${BUILD_DEPENDS} provision in ports-mgmt/portlint
Summary: Forbid ${BUILD_DEPENDS} provision in ports-mgmt/portlint
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Joe Marcus Clarke
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-02-19 23:10 UTC by Joseph S. Atkinson
Modified: 2011-03-21 16:00 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Joseph S. Atkinson freebsd_committer freebsd_triage 2011-02-19 23:10:11 UTC
Some maintainers have been including ${BUILD_DEPENDS} to their RUN_DEPENDS sections of their port's Makefile. This has the consequence of forcing these packages to appear to require build only depends such as gmake and libtool.

Also, as a footnote, there is a false positive for direct use of "python" for USE_GSTREAMER. This is, in fact, correct syntax.

Fix: 

A condition should be added to forbid RUN_DEPENDS=${BUILD_DEPENDS} variations from passing portlint(1).
How-To-Repeat: Here is a list of ports currently affected by the problem:
http://people.freebsd.org/~jsa/share/run_equal_build_ports.txt

Attempt to install some of these via pkg_add and note build tools being pulled in.
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2011-02-19 23:10:17 UTC
Responsible Changed
From-To: freebsd-ports-bugs->marcus

Over to maintainer (via the GNATS Auto Assign Tool)
Comment 2 Sahil Tandon freebsd_committer freebsd_triage 2011-02-20 04:55:20 UTC
On Sat, 2011-02-19 at 23:06:42 +0000, Joseph S. Atkinson wrote:

> >Description:
> Some maintainers have been including ${BUILD_DEPENDS} to their
> RUN_DEPENDS sections of their port's Makefile. This has the
> consequence of forcing these packages to appear to require build only
> depends such as gmake and libtool.

Agreed, and AFAIK this is especially problematic when USE_FOO=yes or
similar definitions pull deps into BUILD_DEPENDS that eventually pollute
RUN_DEPENDS.  This is discussed in the RUN_DEPENDS section of the
Porter's Handbook, thanks to danfe@.

> >How-To-Repeat:
> Here is a list of ports currently affected by the problem:
> http://people.freebsd.org/~jsa/share/run_equal_build_ports.txt
> 
> Attempt to install some of these via pkg_add and note build tools
> being pulled in.
> >Fix:
> A condition should be added to forbid RUN_DEPENDS=${BUILD_DEPENDS}
> variations from passing portlint(1).

I would like to see not only a check for RUN_DEPENDS=${BUILD_DEPENDS} in
portlint(1), but also a pointer to the relevant section of the Porter's
Handbook ... perhaps along with a blurb that recommends using the
'assign with expansion' syntax.

-- 
Sahil Tandon <sahil@FreeBSD.org>
Comment 3 Joe Marcus Clarke freebsd_committer freebsd_triage 2011-02-20 17:51:03 UTC
State Changed
From-To: open->patched

Committed to my CVS repo pending the next release of portlint.  The new 
error is: 

FATAL: Makefile: RUN_DEPENDS should not be set to ${BUILD_DEPENDS} as ${BUILD_DEPENDS} includes other implicit dependencies.  Instead, copy the explicit dependencies from BUILD_DEPENDS to RUN_DEPENDS.  See http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/makefile-depend.html#AEN2154 for more details.
Comment 4 Joe Marcus Clarke freebsd_committer freebsd_triage 2011-03-21 01:00:21 UTC
State Changed
From-To: patched->closed

Committed, thanks!
Comment 5 dfilter service freebsd_committer freebsd_triage 2011-03-21 01:00:22 UTC
marcus      2011-03-21 01:00:11 UTC

  FreeBSD ports repository

  Modified files:
    ports-mgmt/portlint  Makefile 
    ports-mgmt/portlint/src portlint.pl 
  Log:
  Update to 2.13.5.
  
  * Check for the direct assignment of BUILD_DEPENDS to RUN_DEPENDS [1]
  * Add a deprecated pointer for USE_XPM. [2]
  * CPPFLAGS is now passed to CONFIGURE_ENV automatically. [3]
  
  PR:             154896 [1]
                  155550 [3]
  Submitted by:   eadler [2]
  
  Revision  Changes    Path
  1.144     +1 -2      ports/ports-mgmt/portlint/Makefile
  1.121     +16 -4     ports/ports-mgmt/portlint/src/portlint.pl
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
Comment 6 dfilter service freebsd_committer freebsd_triage 2011-03-21 15:55:24 UTC
mandree     2011-03-21 15:55:15 UTC

  FreeBSD ports repository

  Modified files:
    textproc/xmlto       Makefile distinfo 
  Log:
  Use immediate assignment when copying BUILD_DEPENDS to RUN_DEPENDS,
  per the revised porter's handbook.
  
  Remove MD5 checksum from distinfo.
  
  PR: 154896
  
  Revision  Changes    Path
  1.24      +1 -1      ports/textproc/xmlto/Makefile
  1.11      +0 -1      ports/textproc/xmlto/distinfo
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"