You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by mt...@apache.org on 2009/07/25 12:31:33 UTC

svn commit: r797738 - in /commons/sandbox/runtime/trunk/src/main/native: Makefile.msc.in configure

Author: mturk
Date: Sat Jul 25 10:31:32 2009
New Revision: 797738

URL: http://svn.apache.org/viewvc?rev=797738&view=rev
Log:
Use bash for configure

Modified:
    commons/sandbox/runtime/trunk/src/main/native/Makefile.msc.in
    commons/sandbox/runtime/trunk/src/main/native/configure

Modified: commons/sandbox/runtime/trunk/src/main/native/Makefile.msc.in
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/Makefile.msc.in?rev=797738&r1=797737&r2=797738&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/Makefile.msc.in (original)
+++ commons/sandbox/runtime/trunk/src/main/native/Makefile.msc.in Sat Jul 25 10:31:32 2009
@@ -49,7 +49,6 @@
 VERSION_MINOR=@vminor@
 VERSION_PATCH=@vpatch@
 
-LINK=link.exe
 RC=rc.exe
 MT=mt.exe
 
@@ -125,7 +124,7 @@
 
 $(SHAREDLIB): $(COMMON_OBJS) $(@platform@_OBJS) @testobjs@
 	$(RC) /l 0x409 /d "NDEBUG" /i "$(SRCDIR)\include" /fo $@.res $(SRCDIR)/os/win32/main.rc
-	$(LINK) $(SHFLAGS) $(LDFLAGS) /DLL /SUBSYSTEM:WINDOWS /pdb:$(LIBNAME).pdb /out:$@ @<<
+	$(RANLIB) $(SHFLAGS) $(LDFLAGS) /DLL /SUBSYSTEM:WINDOWS /pdb:$(LIBNAME).pdb /out:$@ @<<
 	$(COMMON_OBJS) $(WINDOWS_OBJS) @testobjs@ $@.res
 <<
 	IF EXIST $@.manifest \
@@ -134,7 +133,7 @@
 
 $(SSLMODLIB): $(SHAREDLIB) $(OPENSSL_OBJS)
 	$(RC) /l 0x409 /d "NDEBUG" /d SRC_INTNAME="$(SSLNAME)" /d STR_PRODUCT="Apache Commons Runtime SSL Module" /d STR_INTNAME="$(SSLNAME)" /i "$(SRCDIR)\include" /fo $@.res $(SRCDIR)/os/win32/main.rc
-	$(LINK) $(SHFLAGS) $(LDFLAGS) $(SSLFLAGS) /DLL /SUBSYSTEM:WINDOWS libpath:"." $(LIBNAME).lib /pdb:$(SSLNAME).pdb /out:$@ @<<
+	$(RANLIB) $(SHFLAGS) $(LDFLAGS) $(SSLFLAGS) /DLL /SUBSYSTEM:WINDOWS libpath:"." $(LIBNAME).lib /pdb:$(SSLNAME).pdb /out:$@ @<<
 	$(OPENSSL_OBJS) $@.res
 <<
 	IF EXIST $(SSLMODLIB).manifest \

Modified: commons/sandbox/runtime/trunk/src/main/native/configure
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/configure?rev=797738&r1=797737&r2=797738&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/configure (original)
+++ commons/sandbox/runtime/trunk/src/main/native/configure Sat Jul 25 10:31:32 2009
@@ -37,6 +37,19 @@
 #
 # ====================================================================
 #
+# This is a bash script, which works with any reasonable sh.
+# Solaris sh is not, so we have to start bash, and call ourselves again.
+#
+test "x$1" != "x__running_the_bash_shell@" && \
+(
+    `which sh` -c "__bash_a=(_A _B); echo \${__bash_a[*]}" >/dev/null 2>&1
+    __need_bash=$?
+    test "x$__need_bash" != "x0" && bash $0 __running_the_bash_shell@ "$@"
+    test "x$__need_bash"  = "x0" && sh   $0 __running_the_bash_shell@ "$@"
+)
+
+test "x$1" != "x__running_the_bash_shell@" && exit
+shift
 
 name=acr
 prefix="${PREFIX:=/usr/local}"
@@ -255,14 +268,15 @@
 
 varadds()
 {
-    if [ ".$2" = ".::" ]; then
-        eval "$1=\"\""
-    else
-        eval e="\$$1"
+    p=$1 ; shift
+    if [ ".$p" = ".::" ]; then
+        eval "$p=\"\""
+    elif [ ".$1" != . ]; then
+        eval e="\$$p"
         if [ ".$e" = . ]; then
-            eval "$1=\"$2\""
+            eval "$p=\"$@\""
         else
-            for v in "$2"
+            for v in $@
             do
                 do_adds=true
                 for i in $e
@@ -272,15 +286,28 @@
                         break
                     fi
                 done
-                if $do_adds; then
-                    e="$e $v"
-                fi
+                test $do_adds && e="$e $v"
             done
-            eval "$1=\"$e\""
+            eval "$p=\"$e\""
         fi
     fi
 }
 
+getmstool()
+{
+    sIFS=$IFS ; IFS=:
+    for p in $PATH
+    do
+        if [ -x "$p/$1.exe" ]; then
+            if [ ".`$p/$1.exe -version 2>/dev/null | head -1 | grep Microsoft`" != . ]; then
+                cygpath -w "$p/$1.exe" | sed 's/\\/\\\\/g'
+                return
+            fi
+        fi
+    done
+    echo $1.exe
+}
+
 toupper()
 {
     echo "$1" | tr '[a-z]' '[A-Z]'
@@ -297,41 +324,39 @@
 fi
 if [ ! -d "$java_home" ]; then
     echo "\`$java_home' is not valid JAVA_HOME directory"
+    exit 1
 fi
 
-major_sed="/#define.*ACR_MAJOR_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p"
-minor_sed="/#define.*ACR_MINOR_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p"
-patch_sed="/#define.*ACR_PATCH_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p"
+major_sed='/#define.*ACR_MAJOR_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p'
+minor_sed='/#define.*ACR_MINOR_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p'
+patch_sed='/#define.*ACR_PATCH_VERSION/s/^[^0-9]*\([0-9]*\).*$/\1/p'
 vmajor="`sed -n $major_sed $topdir/include/acr_version.h`"
 vminor="`sed -n $minor_sed $topdir/include/acr_version.h`"
 vpatch="`sed -n $patch_sed $topdir/include/acr_version.h`"
 
-mach=`(uname -m) 2>/dev/null` || mach="unknown"
-host=`(uname -s) 2>/dev/null` || host="unknown"
-host=`tolower "$host"`
+mach=`uname -m 2>/dev/null | tr '[A-Z]' '[a-z]'` || mach="unknown"
+host=`uname -s 2>/dev/null | tr '[A-Z]' '[a-z]'` || host="unknown"
 
-if [ ".$has_64_bit" = .yes ]; then
-    bits=64
-fi
+test ".$has_64_bit" = .yes && bits=64
 
 case "$host" in
     hp-ux   )
-        platform="HPUX"
-        host="hpux"
+        platform=HPUX
+        host=hpux
     ;;
     sunos   )
-        platform="SOLARIS"
-        host="solaris"
+        platform=SOLARIS
+        host=solaris
     ;;
     cygwin* )
-        platform="WINDOWS"
-        host="windows"
+        platform=WINDOWS
+        host=windows
     ;;
     mingw* )
-        platform="WINDOWS"
-        host="windows"
+        platform=WINDOWS
+        host=windows
     ;;
-    *       )
+    *      )
         platform=`toupper "$host"`
     ;;
 esac
@@ -358,81 +383,82 @@
 
 case "$host-$cc" in
     linux-gcc )
-        varadds cppopts "-DLINUX=2 -D_GNU_SOURCE"
-        varadds ccflags "-fPIC -O3 -Wall -g"
-        varadds ldflags "-lrt -lpthread -ldl"
-        varadds shflags '-shared -fPIC -Wl,-soname -Wl,\$@'
-        if [ ".$java_pinc" = . ]; then java_pinc=linux; fi
+        varadds cppopts -DLINUX=2 -D_GNU_SOURCE
+        varadds ccflags -fPIC -O3 -Wall -g
+        varadds ldflags -lrt -lpthread -ldl
+        varadds shflags -shared -fPIC -Wl,-soname '-Wl,\$@'
+        test ".$java_pinc" = . && java_pinc=linux
         ;;
     linux-cc )
         if [ ".$mach" = .i386 ]; then
-            varadds ccflags "-fast -xbuiltin=none -U__MATHERR_ERRNO_DONTCARE -xnolibmopt -xnolibmil"
+            varadds ccflags -fast -xbuiltin=none -U__MATHERR_ERRNO_DONTCARE -xnolibmopt -xnolibmil
         fi
-        varadds cppopts "-D_LINUX=2 -D_GNU_SOURCE"
-        varadds ccflags "-xstrconst -xdepend -O -Xa -KPIC"
-        varadds ldflags "-lpthread -ldl"
-        varadds shflags "-G -KPIC -dy"
-        cxx="CC"
+        varadds cppopts -D_LINUX=2 -D_GNU_SOURCE
+        varadds ccflags -xstrconst -xdepend -O -Xa -KPIC
+        varadds ldflags -lpthread -ldl
+        varadds shflags -G -KPIC -dy
+        cxx=CC
         cpp="cc -E"
-        as="cc"
-        if [ ".$java_pinc" = . ]; then java_pinc=linux; fi
+        as=cc
+        test ".$java_pinc" = . && java_pinc=linux
         ;;
     darwin-gcc )
         r="`uname -r | sed 's/\.//g'`"
-        varadds cppopts "-DDARWIN=$r"
-        varadds ccflags "-fPIC -O3 -g"
-        varadds ldflags "-lpthread -ldl"
+        varadds cppopts -DDARWIN=$r
+        varadds ccflags -fPIC -O3 -g
+        varadds ldflags -lpthread -ldl
         if [ ".$has_jni" = .yes ]; then so=".jnilib"; else so=".dynlib"; fi
-        varadds shflags '-dynamiclib -flat_namespace -undefined suppress -fPIC -Wl,-dylib_install_name -Wl,\$@'
+        varadds shflags -dynamiclib -flat_namespace -undefined suppress -fPIC -Wl,-dylib_install_name '-Wl,\$@'
         ;;
     solaris-cc )
         r="`uname -r | sed 's/5.//'`"
         if [ ".$mach" = .sparc ]; then
-            varadds ccflags "-xarch=sparc"
+            varadds ccflags -xarch=sparc
         else
-            varadds ccflags "-fast -xbuiltin=none -U__MATHERR_ERRNO_DONTCARE -xnolibmopt -xnolibmil"
+            varadds ccflags -fast -xbuiltin=none -U__MATHERR_ERRNO_DONTCARE -xnolibmopt -xnolibmil
         fi
-        varadds cppopts "-DSOLARIS2=$r"
+        varadds cppopts -DSOLARIS2=$r
         if [ ".$has_native_threads" = .yes ]; then
-            varadds ccflags "-mt"
-            varadds cppopts "-DHAS_NATIVE_THREADS"
+            varadds ccflags -mt
+            varadds cppopts -DHAS_NATIVE_THREADS
         else
-            varadds cppopts "-D_POSIX_PTHREAD_SEMANTICS"
+            varadds cppopts -D_POSIX_PTHREAD_SEMANTICS
         fi
-        varadds ccflags "-xstrconst -xdepend -O -Xa -KPIC"
-        varadds ldflags "-lrt -lthread -lsocket -lnsl -ldl"
-        varadds shflags "-G -KPIC -dy"
-        cxx="CC"
+        varadds ccflags -xstrconst -xdepend -O -Xa -KPIC
+        varadds ldflags -lrt -ldl -lthread -lsendfile -lsocket -lnsl
+        varadds shflags -G -KPIC -dy
+        cxx=CC
         cpp="cc -E"
-        as="cc"
-        if [ ".$java_pinc" = . ]; then java_pinc=solaris; fi
+        as=cc
+        test ".$java_pinc" = . && java_pinc=solaris
         ;;
     hpux-cc    )
         r="`uname -r | sed 's/[A-Z].[0-9]*.//'`"
-        varadds cppopts "-D_HPUX_SOURCE -DHPUX11=$r"
-        varadds ccflags "-Ae +O2 -z +Z"
-        varadds ldflags "-lrt -lpthread -ldld"
-        varadds shflags "+Z -b"
-        if [ ".$mach" = .parisc ]; then so=".sl"; fi
-        if [ ".$java_pinc" = . ]; then java_pinc="hp-ux"; fi
+        varadds cppopts -D_HPUX_SOURCE -DHPUX11=$r
+        varadds ccflags -Ae +O2 -z +Z
+        varadds ldflags -lrt -lpthread -ldld -lm
+        varadds shflags +Z -b
+        test ".$mach" = .parisc && so=".sl"
+        test ".$java_pinc" = . && java_pinc=hp-ux
         ;;
     windows-cl )
-        varadds ccflags "-nologo -O2 -Ob2 -Oy- -Zi -D_MD -MD -W3"
-        varadds cppopts "-DWIN32 -DWINNT -D_WIN32 -D_WINDOWS -D_WINNT"
-        varadds cppopts "-D_WIN32_WINNT=0x0501 -D_WIN32_IE=0x0600"
-        varadds cxxopts "-TP"
-        varadds ldflags "kernel32.lib advapi32.lib ws2_32.lib mswsock.lib ole32.lib"
-        varadds ldflags "shell32.lib rpcrt4.lib user32.lib gdi32.lib userenv.lib"
-        varadds ldflags "psapi.lib shlwapi.lib wldap32.lib netapi32.lib iphlpapi.lib"
-        varadds shflags "/NOLOGO /OPT:REF"
+        varadds ccflags -nologo -O2 -Ob2 -Oy- -Zi -D_MD -MD -W3
+        varadds cppopts -DWIN32 -DWINNT -D_WIN32 -D_WINDOWS -D_WINNT
+        varadds cppopts -D_WIN32_WINNT=0x0501 -D_WIN32_IE=0x0600
+        varadds cxxopts -TP
+        varadds ldflags kernel32.lib advapi32.lib ws2_32.lib mswsock.lib ole32.lib
+        varadds ldflags shell32.lib rpcrt4.lib user32.lib gdi32.lib userenv.lib
+        varadds ldflags psapi.lib shlwapi.lib wldap32.lib netapi32.lib iphlpapi.lib
+        varadds shflags /NOLOGO /OPT:REF
         is_unix=false
-        so=".dll"
-        exe=".exe"
-        obj="obj"
-        makefiles="Makefile.msc"
+        so=.dll
+        exe=.exe
+        obj=obj
+        makefiles=Makefile.msc
         cxx="$cc"
-        cccinc="windows"
-        if [ ".$java_pinc" = . ]; then java_pinc="win32"; fi
+        cccinc=windows
+        ranlib="`getmstool link`"
+        test ".$java_pinc" = . && java_pinc=win32
         ;;
     *       )
         echo "$host$bits-$cc platform is not supported!"
@@ -442,11 +468,11 @@
 
 case "$host-$cc" in
     *-gcc      )
-        v=`gcc --version 2>&1 | head -1 | sed 's/.* \([0-9].[0-9].[0-9]*\).*/\1/'`
-        cc_ver_major=`echo $v | sed 's/^\([0-9]\).*/\1/'`
-        cc_ver_minor=`echo $v | sed 's/^[0-9].\([0-9]\).*/\1/'`
+        v=(`echo __GNUC__ __GNUC_MINOR__ __GNUC_PATCHLEVEL__ | gcc -E - | tail -1`)
+        cc_ver_major=${v[0]}
+        cc_ver_minor=${v[1]}
         if [ ".$has_maintainer_mode" != .yes ]; then
-            varadds ccflags "-fno-stack-protector"
+            varadds ccflags -fno-stack-protector
         fi
     ;;
     windows-cl )
@@ -464,52 +490,48 @@
 
 case "$host$bits-$cc" in
     hpux64-cc    )
-        varadds ccflags "+DD64"
-        varadds shflags "+DD64"
+        varadds ccflags +DD64
+        varadds shflags +DD64
         ;;
     windows-cl   )
-        varadds ccflags "-D_X86_=1"
-        varadds shflags "/MACHINE:X86"
-        as="ml.exe"
+        varadds ccflags -D_X86_=1
+        varadds shflags /MACHINE:X86
+        as=ml.exe
         ;;
     windows64-cl )
-        varadds ccflags "-DWIN64 -D_WIN64"
+        varadds ccflags -DWIN64 -D_WIN64
         if [ ".$mach" = .ia64 ]; then
-            varadds ccflags "-D_IA64_=1"
-            varadds shflags "/MACHINE:IA64"
+            varadds ccflags -D_IA64_=1
+            varadds shflags /MACHINE:IA64
         else
-            varadds ccflags "-D_AMD64_=1"
-            varadds shflags "/MACHINE:AMD64"
+            varadds ccflags -D_AMD64_=1
+            varadds shflags /MACHINE:AMD64
         fi
-        as="ml64.exe"
+        as=ml64.exe
         ;;
     *64-*        )
-        varadds ccflags "-m64"
-        varadds shflags "-m64"
+        varadds ccflags -m64
+        varadds shflags -m64
         ;;
 esac
 
 # Common defines
-varadds cppopts "-D_REENTRANT -D_LARGEFILE64_SOURCE"
+varadds cppopts -D_REENTRANT -D_LARGEFILE64_SOURCE
 if [ ".$bits" = .64 ]; then
-    varadds cppopts "-D_COMPILE64BIT_SOURCE"
-fi
-if [ -d "$topdir/include/arch/$host" ]; then
-    varadds includes "-I$topdir/include/arch/$host"
-fi
-if $is_unix; then
-    varadds includes "-I$topdir/include/arch/unix"
+    varadds cppopts -D_COMPILE64BIT_SOURCE
 fi
+test -d "$topdir/include/arch/$host" && varadds includes "-I$topdir/include/arch/$host"
+test $is_unix && varadds includes "-I$topdir/include/arch/unix"
 if [ ".$has_maintainer_mode" = .yes ]; then
-    varadds cppopts "-DDEBUG -D_DEBUG"
+    varadds cppopts -DDEBUG -D_DEBUG
 else
-    varadds cppopts "-DNDEBUG"
+    varadds cppopts -DNDEBUG
 fi
 if [ ".$has_memprotect" = .yes ]; then
-    varadds cppopts "-DACR_ENABLE_SEH"
+    varadds cppopts -DACR_ENABLE_SEH
 fi
 if [ ".$has_test" = .yes ]; then
-    varadds cppopts "-DACR_ENABLE_TEST"
+    varadds cppopts -DACR_ENABLE_TEST
     testobjs='$(TEST_OBJS)'
 else
     testobjs=""
@@ -563,9 +585,7 @@
     if [ ".$co" = "." ]; then
         rc=1
     else
-        if [ -x $test$exe ]; then
-            rc=1
-        fi
+        test -x $test$exe && rc=1
     fi
     rm -rf $test.* $test *.pdb >/dev/null 2>&1 || true
     if [ $rc = 1 ]; then
@@ -592,18 +612,11 @@
 int main() {return 0;}
 EOF
     rc=0
-    if [ ".host" = ".windows" ]; then
-        ll=$1
-    else
-        ll="-l$1"
-    fi
-    co="`$cc $ccflags $cppopts $test.c $ll -o $test$exe 2>&1`"
+    co="`$cc $ccflags $cppopts $test.c -o $test$exe -l$1 2>&1`"
     if [ ".$co" = "." ]; then
         rc=1
     else
-        if [ -x $test$exe ]; then
-            rc=1
-        fi
+        test -x $test$exe && rc=1
     fi
     rm -rf $test.* $test *.pdb >/dev/null 2>&1 || true
     if [ $rc = 1 ]; then
@@ -635,9 +648,7 @@
     if [ ".$co" = . ]; then
         rc=1
     else
-        if [ -x $test$exe ]; then
-            rc=1
-        fi
+        test -x $test$exe && rc=1
     fi
     rm -rf $test.* $test *.pdb >/dev/null 2>&1 || true
     echo $rc
@@ -647,9 +658,7 @@
 {
     printf "Checking for %-32s" "$1" 1>&2
     rc=`have_function_body $1 $2`
-    if [ $rc = 0 ]; then
-        rc=`have_function_body __$1 $2`
-    fi
+    test ".$rc" = .0 && rc=`have_function_body __$1 $2`
     if [ $rc = 1 ]; then
         echo ok 1>&2
     else
@@ -672,9 +681,7 @@
     if [ ".$co" = . ]; then
         rc=1
     else
-        if [ -x $test$exe ]; then
-            rc=1
-        fi
+        test -x $test$exe && rc=1
     fi
     rm -rf $test.* $test *.pdb >/dev/null 2>&1 || true
     if [ $rc = 1 ]; then
@@ -698,11 +705,9 @@
 EOF
     rc=""
     $cc $ccflags $cppopts $ldflags $test.c -o $test$exe >/dev/null 2>&1
-    if [ -x $test$exe ]; then
-        rc=`./$test$exe 2>/dev/null`
-    fi
+    test -x $test$exe && rc=`./$test$exe 2>/dev/null`
     rm -rf $test.* $test *.pdb >/dev/null 2>&1 || true
-    if [ ".$rc" = . ]; then rc="0"; fi
+    test ".$rc" = . && rc="0"
     echo $rc 1>&2
     echo $rc
 }
@@ -722,13 +727,10 @@
 have_long_long=1
 have_long_double=1
 sizeof_long_long=`test_csizeof 'long long'`
-if [ ".$sizeof_long_long" = .0 ]; then
-    have_long_long=0
-fi
+test ".$sizeof_long_long" = .0 && have_long_long=0
+
 sizeof_long_double=`test_csizeof 'long double'`
-if [ ".$sizeof_long_double" = .0 ]; then
-    have_long_double=0
-fi
+test ".$sizeof_long_double" = .0 && have_long_double=0
 
 if [ ".$host" = .windows ]; then
     have_fileextd=`have_include fileextd`
@@ -743,31 +745,25 @@
     have_ktmw32=0
     have_off64t=1
     sizeof_off64t=`test_csizeof off64_t`
-    if [ ".$sizeof_off64t" = .0 ]; then
-        have_off64t=0
-    fi
+    test ".$sizeof_off64t" = .0 && have_off64t=0
     have_aio=`have_include aio`
     have_libaio=`have_include libaio`
     have_windows=0
     have_uuid_uuid=`have_include uuid/uuid`
     if [ ".$have_uuid_uuid" = .1 ]; then
         ok=`have_library uuid`
-        if [ ".$ok" = .1 ]; then
-            varadds ldflags "-luuid"
-        fi
+        test ".$ok" = .1 && varadds ldflags -luuid
     fi
 fi
 
-if [ ".$have_libaio" = .1 ]; then
-    varadds ldflags "-laio"
-fi
+test ".$have_libaio" = .1 && varadds ldflags -laio
 
 if [ ".$host" = ".linux" ]; then
     have_selinux=`have_include selinux/selinux`
     if [ ".$have_selinux" = .1 ]; then
         ok=`have_library selinux`
         if [ ".$ok" = .1 ]; then
-            varadds ldflags "-lselinux"
+            varadds ldflags -lselinux
         else
             have_selinux=0
         fi
@@ -777,19 +773,13 @@
 fi
 
 if [ ".$has_openssl" = .yes ]; then
-    if [ ".$openssl_inc" != . ]; then
-        varadds includes "-I$openssl_inc"
-    fi
+    test ".$openssl_inc" != . && varadds includes "-I$openssl_inc"
     if $is_unix; then
-        if [ ".$openssl_lib" != . ]; then
-            varadds sslflags "-L$openssl_lib"
-        fi
-        varadds sslflags "-lssl -lcrypto"
+        test ".$openssl_lib" != . && varadds sslflags "-L$openssl_lib"
+        varadds sslflags -lssl -lcrypto
     else
-        if [ ".$openssl_lib" != . ]; then
-            varadds sslflags "/libpath:\"$openssl_lib\""
-        fi
-        varadds sslflags "libeay32.lib ssleay32.lib"
+        test ".$openssl_lib" != . && varadds sslflags "/libpath:\"$openssl_lib\""
+        varadds sslflags libeay32.lib ssleay32.lib
     fi
     have_openssl=1
     modules="\$(SSLMODLIB)"
@@ -798,25 +788,21 @@
 fi
 
 if [ ".$has_zlib" = .yes ]; then
-    if [ ".$zlib_inc" != . ]; then
-        varadds includes "-I$zlib_inc"
-    fi
+    test ".$zlib_inc" != . && varadds includes -I$zlib_inc
     if $is_unix; then
         if [ ".$zlib_lib" != . ]; then
-            varadds ldflags "-L$zlib_lib"
-            varadds ldflags "-lz"
+            varadds ldflags -L$zlib_lib
+            varadds ldflags -lz
         else
             ok=`have_library z zlib`
             if [ ".$ok" = .1 ]; then
-                varadds ldflags "-lz"
+                varadds ldflags -lz
                 have_zlib=1
             fi
         fi
     else
-        if [ ".$zlib_lib" != . ]; then
-            varadds ldflags "/libpath:\"$zlib_lib\""
-        fi
-        varadds ldflags "zlib.lib"
+        test ".$zlib_lib" != . && varadds ldflags "/libpath:\"$zlib_lib\""
+        varadds ldflags zlib.lib
     fi
     have_zlib=1
 else
@@ -825,7 +811,7 @@
         if $is_unix; then
             ok=`have_library z zlib`
             if [ ".$ok" = .1 ]; then
-                varadds ldflags "-lz"
+                varadds ldflags -lz
                 have_zlib=1
             fi
         fi
@@ -917,6 +903,8 @@
     if [ ".$have_fileextd" = .1 ]; then
         varadds ldflags "fileextd.lib"
     fi
+else
+    test "`which $ranlib 2>/dev/null`" || ranlib=echo
 fi
 
 for m in $makefiles