]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
rgw: bypass civetweb dynamic ssl load and link libraries directly
authorKarol Mroz <kmroz@suse.com>
Mon, 7 Sep 2015 23:14:27 +0000 (16:14 -0700)
committerNathan Cutler <ncutler@suse.com>
Tue, 27 Oct 2015 10:24:20 +0000 (11:24 +0100)
dlopen() calls in civetweb are guarded by the NO_SSL_DL compiler flag.
Setting this during build, and linking the necessary libraries directly,
simplifies cases of differing library names/versions/locations/etc.
Fixes bsc#942874

(cherry picked from commit cf9e0229f3e54bff24a8f423bea2c430c1e0dfe0)

src/rgw/Makefile.am

index 7620d73b053d1caab4ca22dd6d77a4a9e29c8c99..fdd2429bcbb333c5ce0f10fb020ab1ec6b698c49 100644 (file)
@@ -49,6 +49,10 @@ librgw_la_SOURCES =  \
 librgw_la_CXXFLAGS = -Woverloaded-virtual ${AM_CXXFLAGS}
 noinst_LTLIBRARIES += librgw.la
 
+# Bypass civetweb dlopen() calls for ssl/crypto support and link the libraries
+# directly (below).
+CIVETWEB_COPT = -DNO_SSL_DL
+
 LIBRGW_DEPS += \
        $(LIBRADOS) \
        libcls_rgw_client.la \
@@ -63,6 +67,8 @@ LIBRGW_DEPS += \
        -lexpat \
        -lm \
        -lfcgi \
+       -lssl \
+       -lcrypto \
        -ldl
 
 CIVETWEB_INCLUDE = --include civetweb/include/civetweb_conf.h
@@ -72,8 +78,8 @@ libcivetweb_la_SOURCES =  \
        rgw/rgw_civetweb_log.cc \
        civetweb/src/civetweb.c
 
-libcivetweb_la_CXXFLAGS = ${CIVETWEB_INCLUDE} -Woverloaded-virtual ${AM_CXXFLAGS}
-libcivetweb_la_CFLAGS = -Icivetweb/include ${CIVETWEB_INCLUDE}
+libcivetweb_la_CXXFLAGS = ${CIVETWEB_INCLUDE} -Woverloaded-virtual ${AM_CXXFLAGS} ${CIVETWEB_COPT}
+libcivetweb_la_CFLAGS = -Icivetweb/include ${CIVETWEB_INCLUDE} ${CIVETWEB_COPT}
 
 noinst_LTLIBRARIES += libcivetweb.la