aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Levitte <levitte@openssl.org>2002-02-13 14:44:33 +0000
committerRichard Levitte <levitte@openssl.org>2002-02-13 14:44:33 +0000
commit1fe198b6f9581ebfda2e26073585d756cf193e8e (patch)
tree5b082a683bc9d3663137fca1b0e6f152144bde18
parent78d6603aadf51c3b5f70229be5456ae851ab6bbe (diff)
downloadopenssl-1fe198b6f9581ebfda2e26073585d756cf193e8e.tar.gz
Update the configuration of CygWin32 to use the new capabilities of
CygWin 1.3.x, which includes thread and shared library support. Submitted by Corinna Vinschen <vinschen@redhat.com> and modified a little bit.
-rw-r--r--CHANGES4
-rwxr-xr-xConfigure3
-rw-r--r--Makefile.org26
-rwxr-xr-xconfig10
4 files changed, 36 insertions, 7 deletions
diff --git a/CHANGES b/CHANGES
index 4db9aadf87..5929f05336 100644
--- a/CHANGES
+++ b/CHANGES
@@ -13,6 +13,10 @@
*) applies to 0.9.6a/0.9.6b/0.9.6c and 0.9.7
+) applies to 0.9.7 only
+ *) Add information about CygWin32 1.3 and on, and preserve proper
+ configuration for the versions before that.
+ [Corinna Vinschen <vinschen@redhat.com> and Richard Levitte]
+
*) Make removal from session cache (SSL_CTX_remove_session()) more robust:
check whether we deal with a copy of a session and do not delete from
the cache in this case. Problem reported by "Izhar Shoshani Levi"
diff --git a/Configure b/Configure
index b810cd2fde..3a421ab4bb 100755
--- a/Configure
+++ b/Configure
@@ -504,7 +504,8 @@ my %table=(
"Mingw32", "gcc:-DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall:::::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::win32",
# CygWin32
-"CygWin32", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall:::CYGWIN32::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::win32",
+"CygWin32-pre1.3", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall::(unknown):CYGWIN32::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::win32",
+"CygWin32", "gcc:-DTERMIOS -DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall:::CYGWIN32::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::win32:cygwin-shared::.dll",
# Ultrix from Bernhard Simon <simon@zid.tuwien.ac.at>
"ultrix-cc","cc:-std1 -O -Olimit 1000 -DL_ENDIAN::(unknown):::::::",
diff --git a/Makefile.org b/Makefile.org
index 669361f88e..89f2747b43 100644
--- a/Makefile.org
+++ b/Makefile.org
@@ -240,6 +240,9 @@ clean-shared:
done; \
fi; \
( set -x; rm -f lib$$i$(SHLIB_EXT) ); \
+ if [ "$(PLATFORM)" = "CygWin32" ]; then \
+ ( set -x; rm -f cyg$$i$(SHLIB_EXT) lib$$i$(SHLIB_EXT).a ); \
+ fi; \
done
link-shared:
@@ -286,6 +289,15 @@ do_darwin-shared:
echo "" ; \
done
+do_cygwin-shared:
+ libs='-L. ${SHLIBDEPS}'; for i in ${SHLIBDIRS}; do \
+ ( set -x; ${CC} -shared -o cyg$$i.dll \
+ -Wl,--whole-archive lib$$i.a \
+ -Wl,--out-implib,lib$$i.dll.a \
+ -Wl,--no-whole-archive $$libs ) || exit 1; \
+ libs="$$libs -l$$i"; \
+ done
+
# This assumes that GNU utilities are *not* used
do_alpha-osf1-shared:
if ${DETECT_GNU_LD}; then \
@@ -689,10 +701,18 @@ install: all install_docs
tmp="$(SHARED_LIBS)"; \
for i in $${tmp:-x}; \
do \
- if [ -f "$$i" ]; then \
+ if [ -f "$$i" -o -f "$$i.a" ]; then \
( echo installing $$i; \
- cp -f $$i $(INSTALL_PREFIX)$(INSTALLTOP)/lib; \
- chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i ); \
+ if [ "$(PLATFORM)" != "CygWin32" ]; then \
+ cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/lib; \
+ chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i; \
+ else \
+ c=`echo $$i | sed 's/^lib/cyg/'`; \
+ cp $$c $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$c; \
+ chmod 755 $(INSTALL_PREFIX)$(INSTALLTOP)/bin/$$c; \
+ cp $$i.a $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i.a; \
+ chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i.a; \
+ fi ); \
fi \
done; \
( here="`pwd`"; \
diff --git a/config b/config
index 74e6f08d93..502ca6720f 100755
--- a/config
+++ b/config
@@ -333,7 +333,11 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in
;;
CYGWIN*)
- echo "${MACHINE}-whatever-cygwin32"; exit 0
+ case "$RELEASE" in
+ [bB]*|1.0|1.[12].*)
+ echo "${MACHINE}-whatever-cygwin32_pre1.3"; exit 0
+ *)
+ echo "${MACHINE}-whatever-cygwin32"; exit 0
;;
esac
@@ -670,8 +674,8 @@ EOF
# *-aix) OUT="aix-$CC" ;;
# *-dgux) OUT="dgux" ;;
mips-sony-newsos4) OUT="newsos4-gcc" ;;
- *-*-cygwin32) OUT="CygWin32"
- options="$options no-threads no-asm" ;;
+ *-*-cygwin32_pre1.3) OUT="CygWin32-pre1.3" ;;
+ *-*-cygwin32) OUT="CygWin32" ;;
*) OUT=`echo $GUESSOS | awk -F- '{print $3}'`;;
esac