Opened 13 years ago

Closed 13 years ago

Last modified 13 years ago

#1700 closed Bug (fixed)

A bug in check-openssl.m4 for not teach Makefile about OPENSSL_*.

Reported by: mezz Owned by: charles
Priority: Normal Milestone: 1.50
Component: Transmission Version: 1.42
Severity: Normal Keywords:
Cc:

Description

I got two reports from FreeBSD users for not able to build transmission when compile libcurl with different option that isn't build with OpenSSL. I believe I have seen similar report in Transmission forums.

http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/130127

Wmissing-prototypes -Wdeclaration-after-statement -rpath=/usr/lib:/usr/local/lib -o transmissioncli cli.o -L/usr/lib ../libtransmission/libtransmission.a ../third-party/libevent/.libs/libevent.a ../third-party/libnatpmp/libnatpmp.a ../third-party/miniupnp/libminiupnp.a -L/usr/local/lib /usr/local/lib/libcurl.so /usr/local/lib/libgnutls.so /usr/local/lib/libtasn1.so /usr/local/lib/libgcrypt.so /usr/local/lib/libgpg-error.so -lz -lm -Wl,--rpath -Wl,/usr/local/lib -Wl,--rpath -Wl,/usr/local/lib
./libtransmission/libtransmission.a(utils.o)(.text+0x1f2b): In function `tr_base64_encode':
: undefined reference to `BIO_s_mem'
./libtransmission/libtransmission.a(utils.o)(.text+0x1f33): In function `tr_base64_encode':
: undefined reference to `BIO_new'
./libtransmission/libtransmission.a(utils.o)(.text+0x1f3b): In function `tr_base64_encode':
: undefined reference to `BIO_f_base64'
[...goes on...]


After check in the tarball more and I got it figured out. It is because of Makefile's $OPENSSL_* return as empty. Here is an example:

Before patch:

# grep OPENSSL_ work/transmission-1.42/libtransmission/Makefile
    $(OPENSSL_CFLAGS) \
    $(OPENSSL_LIBS) \


After patch:

# grep OPENSSL_ work/transmission-1.42/libtransmission/Makefile
OPENSSL_CFLAGS = -I/usr/include
OPENSSL_LIBS = -L/usr/lib -lssl -lcrypto
    $(OPENSSL_CFLAGS) \
    $(OPENSSL_LIBS) \


A lot of us didn't notice this bug, because libcurl.pc includes -lssl -lcrypto when it built with OpenSSL option.

Attachments (1)

patch-m4_check-ssl.m4 (256 bytes) - added by mezz 13 years ago.

Download all attachments as: .zip

Change History (4)

Changed 13 years ago by mezz

comment:1 Changed 13 years ago by charles

  • Milestone changed from None Set to 1.60
  • Owner set to charles
  • Status changed from new to assigned

comment:2 Changed 13 years ago by charles

  • Resolution set to fixed
  • Status changed from assigned to closed

Fix applied to trunk in r7723.

Fix applied to 1.5x in r7724.

Thanks mezz

comment:3 Changed 13 years ago by charles

  • Milestone changed from 1.60 to 1.50
Note: See TracTickets for help on using tickets.