On 8/06/2012 11:01 p.m., Alexander Komyagin wrote:
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.

Excellent. Thank you.

+1 from me on this and applying immediately.


Amos

Reply via email to