Bug 253600 - Dependencies should receive a PORTREVISION bump when devel/isl is upgraded
Summary: Dependencies should receive a PORTREVISION bump when devel/isl is upgraded
Status: New
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Danilo Egea Gondolfo
Depends on:
Reported: 2021-02-17 21:40 UTC by Patrick McMunn
Modified: 2021-04-24 13:46 UTC (History)
0 users

See Also:


Note You need to log in before you can comment on or make changes to this bug.
Description Patrick McMunn 2021-02-17 21:40:42 UTC
I don't know if there is a good way to do this or not. If not, it's probably a good idea to a least put a notice in UPDATING. I am upgrading a FreeBSD CURRENT system that hasn't been updated in at least a couple of months. Apparently devel/isl was upgraded from 0.22 to 0.23. Then another package needed gcc10's gfortran to compile, but it failed. After checking the config.log file, I saw that gfortran was failing because it was looking for the old isl 0.22 .so file which no longer existed because it had been replaced by 0.23. I'm using portmaster, but there should be some way for the build system to know that gcc needs to be rebuilt against the new version of a dependency -- especially before gcc is called to be used to compile something else.
Comment 1 Gerald Pfeifer freebsd_committer 2021-02-17 22:00:24 UTC
When a port is upgraded, its dependencies should be "bumped" when there are
material changes, that is, their PORTREVISION should be increased to trigger
a rebuild.

This has not happened with the devel/isl upgrade you mentioned, which 
looks like a problem.

Some times in the past it did happen, see for example:

  r466827 | danilo | 2018-04-08 19:05:36 +0000 (So., 08 Apr. 2018) | 10 lines

   - Update to 0.19.0
   - Use github
   - Add ac_cv_prog_TEXI2DVI to avoid building docs for now

   - Update to 0.19

  - Bump PORTREVISION of all dependencies

Danilo, mind having a look?

Patrick, as a side note, lang/gcc10 only depends on devel/isl when the
GRAPHITE option is active which is *not* the default. Any non-default
options you have set are useful to report.
Comment 2 Danilo Egea Gondolfo freebsd_committer 2021-04-24 13:46:04 UTC
Hi, sorry for the huge delay.

Yes, you are absolutely right. All the consumers must be bumped when the major version is bumped like what happened here. And in fact I did that as usual, see [1].

Although, the way I look for the consumers (make search bdeps=isl- | grep Path) does not seem to be enough to find all of them. In this particular case, the usage of devel/isl in lang/gcc10 is conditional and disabled by default. So, what I do is enough to provide the packages correctly via the official pkg repositories, but that might not be the case for custom builds as it seems.

Thanks for calling it out.

[1] - https://cgit.freebsd.org/ports/commit/?id=29f440dfd8c5b0e3d74ae8561fc0b1b0b8dd0bfc