Commit 1fe198b6 authored by Richard Levitte's avatar Richard Levitte
Browse files

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.
parent 78d6603a
Loading
Loading
Loading
Loading
+4 −0
Original line number Original line Diff line number Diff line
@@ -13,6 +13,10 @@
         *) applies to 0.9.6a/0.9.6b/0.9.6c and 0.9.7
         *) applies to 0.9.6a/0.9.6b/0.9.6c and 0.9.7
         +) applies to 0.9.7 only
         +) 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:
  *) 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
     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"
     the cache in this case. Problem reported by "Izhar Shoshani Levi"
+2 −1
Original line number Original line Diff line number Diff line
@@ -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",
"Mingw32", "gcc:-DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall:::::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::win32",


# CygWin32
# 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 from Bernhard Simon <simon@zid.tuwien.ac.at>
"ultrix-cc","cc:-std1 -O -Olimit 1000 -DL_ENDIAN::(unknown):::::::",
"ultrix-cc","cc:-std1 -O -Olimit 1000 -DL_ENDIAN::(unknown):::::::",
+23 −3
Original line number Original line Diff line number Diff line
@@ -240,6 +240,9 @@ clean-shared:
			done; \
			done; \
		fi; \
		fi; \
		( set -x; rm -f lib$$i$(SHLIB_EXT) ); \
		( 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
	done


link-shared:
link-shared:
@@ -286,6 +289,15 @@ do_darwin-shared:
	echo "" ; \
	echo "" ; \
	done
	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
# This assumes that GNU utilities are *not* used
do_alpha-osf1-shared:
do_alpha-osf1-shared:
	if ${DETECT_GNU_LD}; then \
	if ${DETECT_GNU_LD}; then \
@@ -689,10 +701,18 @@ install: all install_docs
		tmp="$(SHARED_LIBS)"; \
		tmp="$(SHARED_LIBS)"; \
		for i in $${tmp:-x}; \
		for i in $${tmp:-x}; \
		do \
		do \
			if [ -f "$$i" ]; then \
			if [ -f "$$i" -o -f "$$i.a" ]; then \
			(       echo installing $$i; \
			(       echo installing $$i; \
				cp -f $$i $(INSTALL_PREFIX)$(INSTALLTOP)/lib; \
				if [ "$(PLATFORM)" != "CygWin32" ]; then \
				chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/lib/$$i ); \
					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 \
			fi \
		done; \
		done; \
		(	here="`pwd`"; \
		(	here="`pwd`"; \
+7 −3
Original line number Original line Diff line number Diff line
@@ -333,6 +333,10 @@ case "${SYSTEM}:${RELEASE}:${VERSION}:${MACHINE}" in
	;;
	;;


    CYGWIN*)
    CYGWIN*)
	case "$RELEASE" in
	    [bB]*|1.0|1.[12].*)
		echo "${MACHINE}-whatever-cygwin32_pre1.3"; exit 0
	    *)
		echo "${MACHINE}-whatever-cygwin32"; exit 0
		echo "${MACHINE}-whatever-cygwin32"; exit 0
	;;
	;;


@@ -670,8 +674,8 @@ EOF
  # *-aix) OUT="aix-$CC" ;;
  # *-aix) OUT="aix-$CC" ;;
  # *-dgux) OUT="dgux" ;;
  # *-dgux) OUT="dgux" ;;
  mips-sony-newsos4) OUT="newsos4-gcc" ;;
  mips-sony-newsos4) OUT="newsos4-gcc" ;;
  *-*-cygwin32) OUT="CygWin32"
  *-*-cygwin32_pre1.3) OUT="CygWin32-pre1.3" ;;
		options="$options no-threads no-asm" ;;
  *-*-cygwin32) OUT="CygWin32" ;;
  *) OUT=`echo $GUESSOS | awk -F- '{print $3}'`;;
  *) OUT=`echo $GUESSOS | awk -F- '{print $3}'`;;
esac
esac