]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Add --enable-static-zlib option
authorSebastian Hahn <sebastian@torproject.org>
Wed, 14 Apr 2010 14:48:05 +0000 (16:48 +0200)
committerSebastian Hahn <sebastian@torproject.org>
Wed, 14 Apr 2010 17:28:21 +0000 (19:28 +0200)
Works like the --enable-static-openssl/libevent options. Requires
--with-zlib-dir to be set. Note that other dependencies might still
pull in a dynamicly linked zlib, if you don't link them in statically
too.

changes/static_zlib [new file with mode: 0644]
configure.in
src/or/Makefile.am
src/test/Makefile.am
src/tools/Makefile.am

diff --git a/changes/static_zlib b/changes/static_zlib
new file mode 100644 (file)
index 0000000..77a6131
--- /dev/null
@@ -0,0 +1,4 @@
+  o Minor features:
+    - Support for statically linking openssl/libevent was added earlier, now
+      also allow statically linking zlib by specifying --enable-static-zlib.
+      Enhancement requested by asdsa on #tor, see bug 1358.
index d2868a28b56c6afc1f2cde4714a65e00f479305a..91010ab725f9bf32cf98436c42433eda986f1599 100644 (file)
@@ -30,6 +30,8 @@ AC_ARG_ENABLE(static-openssl,
    AS_HELP_STRING(--enable-static-openssl, Link against a static openssl library. Requires --with-openssl-dir))
 AC_ARG_ENABLE(static-libevent,
    AS_HELP_STRING(--enable-static-libevent, Link against a static libevent library. Requires --with-libevent-dir))
+AC_ARG_ENABLE(static-zlib,
+   AS_HELP_STRING(--enable-static-zlib, Link against a static zlib library. Requires --with-zlib-dir))
 
 if test x$enable_buf_freelists != xno; then
   AC_DEFINE(ENABLE_BUF_FREELISTS, 1,
@@ -351,6 +353,19 @@ TOR_SEARCH_LIBRARY(zlib, $tryzlibdir, [-lz],
     [zlibVersion(); exit(0);], [--with-zlib-dir],
     [/opt/zlib])
 
+if test "$enable_static_zlib" = "yes"; then
+   if test "$tor_cv_library_zlib_dir" = "(system)"; then
+     AC_MSG_ERROR("You must specify an explicit --with-zlib-dir=x option when
+ using --enable-static-zlib")
+   else
+     TOR_ZLIB_LIBS="$TOR_LIBDIR_zlib/libz.a"
+     echo "$TOR_LIBDIR_zlib/libz.a"
+   fi
+else
+     TOR_ZLIB_LIBS="-lz"
+fi
+AC_SUBST(TOR_ZLIB_LIBS)
+
 dnl Make sure to enable support for large off_t if available.
 
 AC_SYS_LARGEFILE
index cfa8a035ad9ee6fd6f0cf926658bd4a91940210d..a354db5db316a4e7c253d05b691f7131b8fb6619 100644 (file)
@@ -43,7 +43,7 @@ AM_CPPFLAGS = -DSHARE_DATADIR="\"$(datadir)\"" \
 tor_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ @TOR_LDFLAGS_libevent@
 tor_LDADD = ./libtor.a ../common/libor.a ../common/libor-crypto.a \
        ../common/libor-event.a \
-       -lz -lm @TOR_LIBEVENT_LIBS@ @TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@
+       @TOR_ZLIB_LIBS@ -lm @TOR_LIBEVENT_LIBS@ @TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@
 
 noinst_HEADERS = or.h eventdns.h eventdns_tor.h micro-revision.i
 
index 7df13da51e514e8454eadb613c9bafd660bb8993..546fa2f4b7ece04031f3f9af28a43958c92a98ef 100644 (file)
@@ -25,6 +25,6 @@ test_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ \
         @TOR_LDFLAGS_libevent@
 test_LDADD = ../or/libtor.a ../common/libor.a ../common/libor-crypto.a \
        ../common/libor-event.a \
-       -lz -lm @TOR_LIBEVENT_LIBS@ @TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@
+       @TOR_ZLIB_LIBS@ -lm @TOR_LIBEVENT_LIBS@ @TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@
 
 noinst_HEADERS = tinytest.h tinytest_macros.h test.h
index be03f8d892308f02f004cb88d6e90ede36d2464a..1bb5076849e9a1634e8becb59a763fff3dfbbd3b 100644 (file)
@@ -9,10 +9,10 @@ tor_gencert_SOURCES = tor-gencert.c
 tor_gencert_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ \
         @TOR_LDFLAGS_libevent@
 tor_gencert_LDADD = ../common/libor.a ../common/libor-crypto.a \
-        -lm -lz @TOR_LIBEVENT_LIBS@ @TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@
+        -lm @TOR_ZLIB_LIBS@ @TOR_LIBEVENT_LIBS@ @TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@
 
 tor_checkkey_SOURCES = tor-checkkey.c
 tor_checkkey_LDFLAGS = @TOR_LDFLAGS_zlib@ @TOR_LDFLAGS_openssl@ \
         @TOR_LDFLAGS_libevent@
 tor_checkkey_LDADD = ../common/libor.a ../common/libor-crypto.a \
-        -lm -lz @TOR_LIBEVENT_LIBS@ @TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@
+        -lm @TOR_ZLIB_LIBS@ @TOR_LIBEVENT_LIBS@ @TOR_OPENSSL_LIBS@ @TOR_LIB_WS32@ @TOR_LIB_GDI@