Re: [PATCH] crtd linking issues

From: Alexander Komyagin <komyagin_at_altell.ru>
Date: Fri, 08 Jun 2012 15:01:59 +0400

On Thu, 2012-06-07 at 17:13 -0600, Alex Rousskov wrote:
> On 06/07/2012 10:11 AM, Alexander Komyagin wrote:
> > When compiling squid 3.2 with crtd enabled, I experienced link errors
> > due to non-present libsslutil.
> >
> > I've seen some similar messages, but none had the exact patch. So I made
> > the one myself (could it be pushed to upstream ?) :
> >
> > --- a/src/ssl/Makefile.am 2012-03-07 06:42:55.000000000 +0400
> > +++ b/src/ssl/Makefile.am 2012-06-07 19:25:52.391644141 +0400
> > @@ -45,5 +45,5 @@
> >
> > if USE_SSL_CRTD
> > ssl_crtd_SOURCES = ssl_crtd.cc certificate_db.cc certificate_db.h
> > -ssl_crtd_LDADD = $(SSLLIB) -lsslutil $(COMPAT_LIB)
> > +ssl_crtd_LDADD = libsslutil.la $(SSLLIB) -lsslutil $(COMPAT_LIB)
> > endif
>
>
> Hello Alexander,
>
> We already have -lsslutil in ssl_crtd_LDADD. One of the two
> references to the libutil.la library has to be removed. I found this in
> automake documentation:
>
> > `maude_LDADD'
> > Extra objects (`*.$(OBJEXT)') and libraries (`*.a', `*.la') can be
> > added to a _program_ by listing them in the `_LDADD' variable.
>
> and, more importantly:
>
> > We recommend that you avoid using `-l' options in `LDADD' or
> > `PROG_LDADD' when referring to libraries built by your package.
> > Instead, write the file name of the library explicitly [...]
> > Use `-l' only to list third-party libraries.
>
>
> It looks like -lsslutil should be _replaced_ with libsslutil.la. Could
> you test that theory, please?
>

Hello Alex. You definitely right - no reason to add the same lib twice.
Without -lsslutil crtd links and works fine. So the patch may be
altered:

--- a/src/ssl/Makefile.am 2012-03-07 06:42:55.000000000 +0400
+++ b/src/ssl/Makefile.am 2012-06-07 19:25:52.391644141 +0400
@@ -45,5 +45,5 @@

 if USE_SSL_CRTD
 ssl_crtd_SOURCES = ssl_crtd.cc certificate_db.cc certificate_db.h
-ssl_crtd_LDADD = $(SSLLIB) -lsslutil $(COMPAT_LIB)
+ssl_crtd_LDADD = libsslutil.la $(SSLLIB) $(COMPAT_LIB)
 endif

>
> Thank you,
>
> Alex.

-- 
Best wishes,
Alexander Komyagin
Received on Fri Jun 08 2012 - 11:03:34 MDT

This archive was generated by hypermail 2.2.0 : Fri Jun 08 2012 - 12:00:10 MDT