tech-pkg archive

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

Re: archivers/pax build failure on Linux



On Sun, Aug 04, 2024 at 03:24:56PM +0200, Benny Siegert wrote:
> Hi!
> 
> I have an exciting new bit of build breakage in archivers/pax. This is on
> Fedora Asahi Linux with GCC 14.1.1.
> 
> cc -DHAVE_CONFIG_H -DHAVE_NBCOMPAT_H=1
> -I/home/bsiegert/pkgsrc/archivers/pax/work/libnbcompat -I. -I. -O2 -c
> getid.c
> getid.c: In function 'setup_getid':
> getid.c:156:13: error: implicit declaration of function 'pwcache_groupdb'
> [-Wimplicit-function-declaration]
>   156 |         if (pwcache_groupdb(gi_setgroupent, gi_endgrent,
>       |             ^~~~~~~~~~~~~~~
> getid.c:158:16: error: implicit declaration of function 'pwcache_userdb'
> [-Wimplicit-function-declaration]
>   158 |             || pwcache_userdb(gi_setpassent, gi_endpwent,
>       |                ^~~~~~~~~~~~~~
> *** [getid.o] Error code 1
> 
> The thing is, I don't understand how this is supposed to work. libnbcompat
> provides implementations for the pwcache functions but no header declaring
> them, as far as I can see. And pax uses the pwcache functions
> unconditionally.
> 
> Can someone explain this to me?
> 
> -- 
> Benny

It looks like the prototypes in question are missing from libnbcompat's
pwd.h, but they should be there. pax also needs to explicitly include
<nbcompat/pwd.h>, since unlike other "substitute functions for legacy
systems" type libraries, nbcompat doesn't do an #include_next dance.


Home | Main Index | Thread Index | Old Index