diff -uNr tcl-trf-2.1-orig/generic/bz2lib.c tcl-trf-2.1/generic/bz2lib.c --- tcl-trf-2.1-orig/generic/bz2lib.c 1999-11-08 21:52:13 +0200 +++ tcl-trf-2.1/generic/bz2lib.c 2004-05-15 13:50:01 +0300 @@ -16,34 +16,35 @@ #endif #ifndef BZ2_LIB_NAME -#define BZ2_LIB_NAME "libbz2.so" +#define BZ2_LIB_NAME "libbz2.so.1" #endif - +#ifndef BZLIB_SHARED_BUILD static char* symbols [] = { - "bzCompress", - "bzCompressEnd", - "bzCompressInit", - "bzDecompress", - "bzDecompressEnd", - "bzDecompressInit", + "BZ2_bzCompress", + "BZ2_bzCompressEnd", + "BZ2_bzCompressInit", + "BZ2_bzDecompress", + "BZ2_bzDecompressEnd", + "BZ2_bzDecompressInit", (char *) NULL }; +#endif /* * Global variable containing the vectors into the 'bz2'-library. */ -#ifdef BZLIB_STATIC_BUILD +#ifdef BZLIB_SHARED_BUILD bzFunctions bz = { 0, - bzCompress, - bzCompressEnd, - bzCompressInit, - bzDecompress, - bzDecompressEnd, - bzDecompressInit, + BZ2_bzCompress, + BZ2_bzCompressEnd, + BZ2_bzCompressInit, + BZ2_bzDecompress, + BZ2_bzDecompressEnd, + BZ2_bzDecompressInit, }; #else bzFunctions bz = {0}; /* THREADING: serialize initialization */ @@ -54,7 +55,7 @@ TrfLoadBZ2lib (interp) Tcl_Interp* interp; { -#ifndef BZLIB_STATIC_BUILD +#ifndef BZLIB_SHARED_BUILD int res; TrfLock; /* THREADING: serialize initialization */ diff -uNr tcl-trf-2.1-orig/generic/transformInt.h tcl-trf-2.1/generic/transformInt.h --- tcl-trf-2.1-orig/generic/transformInt.h 2003-01-10 20:31:43 +0200 +++ tcl-trf-2.1/generic/transformInt.h 2004-05-15 13:50:01 +0300 @@ -375,7 +375,7 @@ #define WINAPI #endif -#ifdef ZLIB_STATIC_BUILD +#ifdef ZLIB_SHARED_BUILD #undef ZEXPORT #define ZEXPORT #else @@ -435,7 +435,7 @@ * They will fail, if the library could not be loaded. */ -#ifdef BZLIB_STATIC_BUILD +#ifdef BZLIB_SHARED_BUILD #undef BZEXPORT #define BZEXPORT #else diff -uNr tcl-trf-2.1-orig/generic/zlib.c tcl-trf-2.1/generic/zlib.c --- tcl-trf-2.1-orig/generic/zlib.c 2003-01-09 23:27:12 +0200 +++ tcl-trf-2.1/generic/zlib.c 2004-05-15 13:50:01 +0300 @@ -20,6 +20,7 @@ #endif +#ifndef ZLIB_SHARED_BUILD static char* symbols [] = { "deflate", "deflateEnd", @@ -33,22 +34,23 @@ "crc32", (char *) NULL }; +#endif /* * Global variable containing the vectors into the 'zlib'-library. */ -#ifdef ZLIB_STATIC_BUILD +#ifdef ZLIB_SHARED_BUILD zFunctions zf = { 0, deflate, deflateEnd, - deflateInit_, + deflateInit2_, deflateReset, inflate, inflateEnd, - inflateInit_, + inflateInit2_, inflateReset, adler32, crc32, @@ -61,7 +63,7 @@ TrfLoadZlib (interp) Tcl_Interp* interp; { -#ifndef ZLIB_STATIC_BUILD +#ifndef ZLIB_SHARED_BUILD int res; #ifdef HAVE_zlibtcl_PACKAGE diff -uNr tcl-trf-2.1-orig/Makefile.in tcl-trf-2.1/Makefile.in --- tcl-trf-2.1-orig/Makefile.in 2003-01-09 23:26:58 +0200 +++ tcl-trf-2.1/Makefile.in 2004-05-15 13:50:01 +0300 @@ -147,6 +147,9 @@ ZLIB_LIB_DIR = @ZLIB_LIB_DIR@ ZLIB_INCLUDE_DIR = @ZLIB_INCLUDE_DIR@ +BZ2_LIB_DIR = @BZ2_LIB_DIR@ +BZ2_INCLUDE_DIR = @BZ2_INCLUDE_DIR@ + Trf_INCLUDES = -I$(ZLIB_INCLUDE_DIR) \ -I$(SSL_INCLUDE_DIR) \ -DLIBZ_DEFAULTNAME=\"libz$(SHLIB_SUFFIX)\" diff -uNr tcl-trf-2.1-orig/trf.m4 tcl-trf-2.1/trf.m4 --- tcl-trf-2.1-orig/trf.m4 2002-10-02 02:01:46 +0300 +++ tcl-trf-2.1/trf.m4 2004-05-15 13:57:15 +0300 @@ -31,18 +31,28 @@ [SSL_LIB_DIR=$withval], []) +AC_ARG_WITH(bz2, + [ --with-bz2=DIR bzlib.h resides in DIR/include, libbz2 resides in DIR/lib], + [BZ2_LIB_DIR=$withval/lib; BZ2_INCLUDE_DIR=$withval/include], + []) +dnl +AC_ARG_WITH(bz2-include-dir, + [ --with-bz2-include-dir=DIR bzlib.h resides in DIR], + [BZ2_INCLUDE_DIR=$withval], + []) +dnl AC_ARG_WITH(bz2-lib-dir, [ --with-bz2-lib-dir=DIR libbz2 resides in DIR], [BZ2_LIB_DIR=$withval], []) -AC_ARG_ENABLE(static-zlib, - [ --enable-static-zlib link 'zlib' statically], - [STATIC_ZLIB=$enableval], [STATIC_ZLIB=no]) - -AC_ARG_ENABLE(static-bzlib, - [ --enable-static-bzlib link 'bzlib' statically], - [STATIC_BZLIB=$enableval], [STATIC_BZLIB=no]) +AC_ARG_ENABLE(shared-zlib, + [ --enable-shared-zlib link 'zlib' dynamically], + [SHARED_ZLIB=$enableval], [SHARED_ZLIB=no]) + +AC_ARG_ENABLE(shared-bzlib, + [ --enable-shared-bzlib link 'bzlib' dynamically], + [SHARED_BZLIB=$enableval], [SHARED_BZLIB=no]) AC_ARG_ENABLE(static-md5, [ --enable-static-md5 link 'md5' statically], @@ -298,6 +308,44 @@ AC_SUBST(SSL_LIB_DIR) AC_CACHE_VAL(trf_cv_SSL_LIB_DIR, [trf_cv_SSL_LIB_DIR="$SSL_LIB_DIR"]) +dnl ---------------------------------------------------------------- +dnl +dnl Locate bzlib.h +dnl +dnl Searches: +dnl BZ2_INCLUDE_DIR (--with-bz2, --with-bz2-include-dir) +dnl TCL_INCLUDE_DIR (--with-tcl, --with-tcl-include-dir) +dnl $prefix/include (--prefix) +dnl /usr/local/include +dnl /usr/include +dnl +AC_CACHE_CHECK(for directory with bzlib.h, + trf_cv_path_BZ2_INCLUDE_DIR, + [trf_cv_path_BZ2_INCLUDE_DIR="" + places="$BZ2_INCLUDE_DIR \ + $TCL_INCLUDE_DIR \ + $prefix/include \ + /usr/local/include \ + /usr/include" + for dir in $places; do + if test -r $dir/bzlib.h ; then + trf_cv_path_BZ2_INCLUDE_DIR=$dir + break + fi + done]) +dnl +dnl verify success of search +dnl + +BZ2_INCLUDE_DIR=$trf_cv_path_BZ2_INCLUDE_DIR +if test -z "$BZ2_INCLUDE_DIR" ; then + AC_MSG_ERROR(not found; falling back to compat/ headers; use --with-bz2=DIR or --with-bz2-include-dir=DIR) +else + eval AC_DEFINE_UNQUOTED(HAVE_BZLIB_H, 1) +fi +dnl + +AC_SUBST(BZ2_INCLUDE_DIR) dnl ---------------------------------------------------------------- dnl @@ -350,14 +398,16 @@ AC_CACHE_VAL(trf_cv_BZ2_LIB_DIR, [trf_cv_BZ2_LIB_DIR="$BZ2_LIB_DIR"]) -if test "x$ZLIB_STATIC" = "xyes" +if test "x$SHARED_ZLIB" = "xyes" then - eval AC_DEFINE_UNQUOTED(ZLIB_STATIC_BUILD, 1) + eval AC_DEFINE_UNQUOTED(ZLIB_SHARED_BUILD, 1) + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} -L\${ZLIB_LIB_DIR} -lz" fi -if test "x$BZLIB_STATIC" = "xyes" +if test "x$SHARED_BZLIB" = "xyes" then - eval AC_DEFINE_UNQUOTED(BZLIB_STATIC_BUILD, 1) + eval AC_DEFINE_UNQUOTED(BZLIB_SHARED_BUILD, 1) + SHLIB_LD_LIBS="${SHLIB_LD_LIBS} -L\${BZ2_LIB_DIR} -lbz2" fi if test "x$MD5_STATIC" = "xyes"