pkgsrc-Users archive

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

Re: wrong REQUIRES in lang/gcc10



* On 2024-12-26 at 17:19 GMT, Greg Troxel wrote:

When I build gcc10, the resulting binary package has

 REQUIRES=/usr/pkg/gcc10//lib/./libgcc_s.so.1
 REQUIRES=/usr/pkg/gcc10//lib/./libquadmath.so.0
 REQUIRES=/usr/pkg/gcc10//lib/./libstdc++.so.7

it also has (among others):

 PROVIDES=/usr/pkg/gcc10/lib/libgcc_s.so
 PROVIDES=/usr/pkg/gcc10/lib/libgcc_s.so.1
 PROVIDES=/usr/pkg/gcc10/lib/libquadmath.so
 PROVIDES=/usr/pkg/gcc10/lib/libquadmath.so.0
 PROVIDES=/usr/pkg/gcc10/lib/libquadmath.so.0.0
 PROVIDES=/usr/pkg/gcc10/lib/libstdc++.so
 PROVIDES=/usr/pkg/gcc10/lib/libstdc++.so.7
 PROVIDES=/usr/pkg/gcc10/lib/libstdc++.so.7.28

pkg_add then objects to it.  (This seems wrong, because I think pkg_add
tries to look in the new package for satisfying its own requires, but
maybe I'm misreading -- and really these REQUIRES lines are wrong and
should be fixed.)

There are a couple of bugs here:

* Packages shouldn't have REQUIRES entries for files they ship themselves. I've only today noticed this as a minor issue in my own GCC packages, and committed this fix:

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

I went ahead and made my script compatible with readelf and objdump, so you're welcome to adapt it for NetBSD, though I've only briefly tested this so far with a couple of packages, and haven't yet tested it in a full bulk build.

* A bunch of lang/gcc* have broken patches that I noted in the previous thread about this issue. Someone trashed MACHINE_GNU_PLATFORM subs in them, hence the "//" where there should be a valid path. Someone should fix that.

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


Home | Main Index | Thread Index | Old Index