On Tue, 8 Jul 2025 16:07:25 +0300
Dima Panov <flu...@freebsd.org> wrote:

> On 08.07.2025 14:09, Dima Panov wrote:
> > Hello!
> > 
> > On 08.07.2025 07:28, Cy Schubert wrote:  
> >> In message <agxx371-hv384...@mail.bsd4all.net>, "Herbert J. Skuhra" 
> >> writes:  
> >>> On Mon, Jul 07, 2025 at 04:04:46PM -0700, Cy Schubert wrote:  
> >>>> In message <agwv06rglgw8z...@mail.bsd4all.net>, "Herbert J. Skuhra" 
> >>>> writes:  
> >>>>> On Mon, Jul 07, 2025 at 10:36:31PM +0300, Dima Panov wrote:  
> >>>>>> Hello!
> >>>>>>
> >>>>>>
> >>>>>> BTW, it looks like symlink for libkadm5clnt.so is broken and produced 
> >>>>>> a  
> >>>   bad  
> >>>>>   file  
> >>>>>> $ ls -la libkadm5clnt
> >>>>>> lrwxr-xr-x  1 root wheel 13  7 Jul 20:40 libkadm5clnt -> kadm5clnt_mit
> >>>>>>
> >>>>>> instead of assumed libkadm5clnt.so -> kadm5clnt_mit.so
> >>>>>>
> >>>>>>
> >>>>>> Please review:
> >>>>>>
> >>>>>> diff --git a/krb5/lib/kadm5clnt/Makefile b/krb5/lib/kadm5clnt/Makefile
> >>>>>> index e377f95f5b6e..be09dd3e210e 100644
> >>>>>> --- a/krb5/lib/kadm5clnt/Makefile
> >>>>>> +++ b/krb5/lib/kadm5clnt/Makefile
> >>>>>> @@ -88,7 +88,7 @@ ${CHPASS_UTIL_STRINGS_ERR_C}: 
> >>>>>> ${CHPASS_UTIL_STRINGS_E  
> >>> RR}  
> >>>>>>          rm -f et-c-${.PREFIX}.et et-c-${.PREFIX}.c
> >>>>>>
> >>>>>>   afterinstall:
> >>>>>> -       ${INSTALL_LIBSYMLINK} ${SHLIB} ${DESTDIR}${LIBDIR}/libkadm5clnt
> >>>>>> +       ${INSTALL_LIBSYMLINK} ${SHLIB_NAME} 
> >>>>>> ${DESTDIR}${LIBDIR}/libkadm  
> >>> 5cln  
> >>>>> t.so  
> >>>>>>
> >>>>>>   .include <bsd.lib.mk>  
> >>>>>
> >>>>> This produces a valid symlink that 'make delete-old' wants to
> >>>>> remove again:
> >>>>>
> >>>>> lrwxr-xr-x  1 root wheel     23 Jul  7 22:26 /usr/lib/libkadm5clnt.so ->
> >>>>> libkadm5clnt_mit.so.121
> >>>>>
> >>>>> # make delete-old  
> >>>>>>>> Removing old files (only deletes safe to delete libs)  
> >>>>> remove /usr/lib/libkadm5clnt.so?  
> >>>>
> >>>> Thanks Dima and Herbert for reporting this. It's been fixed.  
> >>>
> >>> Cy, I am sorry for not being more precise.
> >>>
> >>> Dima's change, which hasn't been commited yet, fixes the real issue of
> >>> creating a bad symlink.
> >>>
> >>> I just wanted to add that his fix also needs removal of
> >>> usr/lib/libkadm5clnt.so in tools/build/mk/OptionalObsoleteFiles.inc.
> >>>
> >>> Maybe usr/lib/libkadm5clnt should be added to OptionalObsoleteFiles.inc?  
> >>
> >> libkadm5clnt.so is a legitimate symlink for both MIT and Heimdal. In the
> >> case of Heimdal it points to libkadm5clnt.so.11. Whereas for MIT it points
> >> to libkadm5clnt_mit.so.121. There is o libkadm5clnt in MIT. It is
> >> libkadm5clnt_mit. You can see this in the port with pkg info -l as follows:
> >>
> >> slippy$ pkg info -l krb5 | grep libkadm5clnt
> >>          /usr/local/lib/libkadm5clnt.so
> >>          /usr/local/lib/libkadm5clnt_mit.so
> >>          /usr/local/lib/libkadm5clnt_mit.so.12
> >>          /usr/local/lib/libkadm5clnt_mit.so.12.0
> >> slippy$
> >>  
> > 
> > Cy, it looks you still have something staled at your machine :(
> > 
> > On a clean build for pkgbase in poudriere without my patch it still 
> > produces a bad symlink and no compat is packaged as result
> > 
> > root@aarch64:~ # pkg info -l -x krb5 | grep libkadm5clnt
> >          /usr/lib/libkadm5clnt_mit.so.121
> >          /usr/lib/debug/usr/lib/libkadm5clnt_mit.so.121.debug
> >          /usr/lib/debug/usr/lib32/libkadm5clnt_mit.so.121.debug
> >          /usr/lib/libkadm5clnt_mit.a
> >          /usr/lib/libkadm5clnt_mit.so
> >          /usr/lib32/libkadm5clnt_mit.a
> >          /usr/lib32/libkadm5clnt_mit.so
> >          /usr/lib32/libkadm5clnt_mit.so.121
> > 
> >   
> 
> ${SHLIB} macro gives a wrong name, check it:
> 
> $ make -V SHLIB
> kadm5clnt_mit
> $ make -V SHLIB_LINK
> libkadm5clnt_mit.so
> $ pwd
> /home/fluffy/repo/FreeBSD/FreeBSD-src/krb5/lib/kadm5clnt
> 
> 
> So we still need to patch it :)
> 
> diff --git a/krb5/lib/kadm5clnt/Makefile b/krb5/lib/kadm5clnt/Makefile
> index e377f95f5b6e..ddb9b0e9fec5 100644
> --- a/krb5/lib/kadm5clnt/Makefile
> +++ b/krb5/lib/kadm5clnt/Makefile
> @@ -88,7 +88,7 @@ ${CHPASS_UTIL_STRINGS_ERR_C}: ${CHPASS_UTIL_STRINGS_ERR}
>          rm -f et-c-${.PREFIX}.et et-c-${.PREFIX}.c
> 
>   afterinstall:
> -       ${INSTALL_LIBSYMLINK} ${SHLIB} ${DESTDIR}${LIBDIR}/libkadm5clnt
> +       ${INSTALL_LIBSYMLINK} ${SHLIB_LINK} 
> ${DESTDIR}${LIBDIR}/libkadm5clnt.so
> 
>   .include <bsd.lib.mk>

Thanks for the patch. I've pushed this with an ObsoleteFiles.inc change
to fix the brokenness. Thanks for pointing this out.


-- 
Cheers,
Cy Schubert <cy.schub...@cschubert.com>
FreeBSD UNIX:  <c...@freebsd.org>   Web:  https://FreeBSD.org
NTP:           <c...@nwtime.org>    Web:  https://nwtime.org

                        e**(i*pi)+1=0

Reply via email to