tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Fix for implicit DEPENDS



See my mail from last week about the problem we have.

I've coded up a fix that I'm currently running through my bulk builds, the patch is here:

  https://github.com/TritonDataCenter/pkgsrc/commit/b6d013be4253a50ae0737ccd59b36b40570ca455

This adds IMPLICIT_DEPENDS and IMPLICIT_BUILD_DEPENDS to the buildlink3 machinery to allow check-shlibs to verify that all shared library dependencies are accounted for in the dependency tree.

It does this by correctly setting BUILDLINK_DEPMETHOD for each package using a recursive stack. Previously a package would default to "full", even if it was only pulled in by a package that was set to "build". Now the correct value is propagated through dependencies.

One anomaly that it uncovered is that some packages are erroneously appending to BUILDLINK_DEPMETHOD. That variable should only every have one value, "full" or "build". It makes no sense to have both (in which case "full" will always take precedence). For now I've coded it so that this case is covered, but it'd be good to fix these up at some point:

  $ git grep BUILDLINK_DEPMETHOD.*+= | wc -l
      45

and tighten up the code and add pkglint for it.

It'll be a few days before this finishes all the bulk build tests, so let me know in the meantime if you have any objections to this approach.

Cheers,

--
Jonathan Perkin   -   mnx.io   -   pkgsrc.smartos.org
Open Source Complete Cloud   www.tritondatacenter.com


Home | Main Index | Thread Index | Old Index