summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2013-11-19 08:23:05 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2013-11-19 08:23:05 (GMT)
commit18b36e37e61e3936419af460b146f5c27e2d87f1 (patch)
tree8293221612f42a9d572adfd353d5468276df7712
parent0507a702179a76c4f004e5321dc5f5daa0604080 (diff)
downloadtcl-18b36e37e61e3936419af460b146f5c27e2d87f1.zip
tcl-18b36e37e61e3936419af460b146f5c27e2d87f1.tar.gz
tcl-18b36e37e61e3936419af460b146f5c27e2d87f1.tar.bz2
Cygwin: Instead of checking whether the win32 part is configured properly, just configure it when needed.
Always build the stub library first (and - on Cygwin - configure win32 properly just before building the stub library)
-rw-r--r--unix/Makefile.in7
-rwxr-xr-xunix/configure13
-rw-r--r--unix/tcl.m411
3 files changed, 23 insertions, 8 deletions
diff --git a/unix/Makefile.in b/unix/Makefile.in
index 210d90b..70d98c1 100644
--- a/unix/Makefile.in
+++ b/unix/Makefile.in
@@ -546,7 +546,7 @@ SRCS = $(GENERIC_SRCS) $(TOMMATH_SRCS) $(UNIX_SRCS) $(NOTIFY_SRCS) \
all: binaries libraries doc
-binaries: ${LIB_FILE} $(STUB_LIB_FILE) ${TCL_EXE}
+binaries: ${LIB_FILE} ${TCL_EXE}
libraries:
@@ -554,11 +554,14 @@ doc:
# The following target is configured by autoconf to generate either a shared
# library or non-shared library for Tcl.
-${LIB_FILE}: ${OBJS} ${STUB_LIB_FILE}
+${LIB_FILE}: ${STUB_LIB_FILE} ${OBJS}
rm -f $@
@MAKE_LIB@
${STUB_LIB_FILE}: ${STUB_LIB_OBJS}
+ @if test "x${LIB_FILE}" = "xlibtcl${MAJOR_VERSION}.${MINOR_VERSION}.dll"; then \
+ (cd ${TOP_DIR}/win; ${MAKE} libtclstub${MAJOR_VERSION}${MINOR_VERSION}.a); \
+ fi
rm -f $@
@MAKE_STUB_LIB@
diff --git a/unix/configure b/unix/configure
index d7bd53b..7f8922b 100755
--- a/unix/configure
+++ b/unix/configure
@@ -7007,10 +7007,15 @@ echo "$as_me: error: ${CC} is not a cygwin compiler." >&2;}
echo "$as_me: error: CYGWIN compile is only supported with --enable-threads" >&2;}
{ (exit 1); exit 1; }; }
fi
- if test "x${SHARED_BUILD}" = "x1" -a ! -f "../win/tcldde13.dll" -a ! -f "../win/tk85.dll"; then
- { { echo "$as_me:$LINENO: error: Please configure and make the ../win directory first." >&5
-echo "$as_me: error: Please configure and make the ../win directory first." >&2;}
- { (exit 1); exit 1; }; }
+ do64bit_ok=yes
+ if test "x${SHARED_BUILD}" = "x1"; then
+ echo "running cd ../win; ${CONFIG_SHELL-/bin/sh} ./configure $ac_configure_args"
+ # The eval makes quoting arguments work.
+ if cd ../win; eval ${CONFIG_SHELL-/bin/sh} ./configure $ac_configure_args; cd ../unix
+ then :
+ else
+ { echo "configure: error: configure failed for ../win" 1>&2; exit 1; }
+ fi
fi
;;
dgux*)
diff --git a/unix/tcl.m4 b/unix/tcl.m4
index f484989..e9795b8 100644
--- a/unix/tcl.m4
+++ b/unix/tcl.m4
@@ -1263,8 +1263,15 @@ AC_DEFUN([SC_CONFIG_CFLAGS], [
if test "x${TCL_THREADS}" = "x0"; then
AC_MSG_ERROR([CYGWIN compile is only supported with --enable-threads])
fi
- if test "x${SHARED_BUILD}" = "x1" -a ! -f "../win/tcldde13.dll" -a ! -f "../win/tk85.dll"; then
- AC_MSG_ERROR([Please configure and make the ../win directory first.])
+ do64bit_ok=yes
+ if test "x${SHARED_BUILD}" = "x1"; then
+ echo "running cd ../win; ${CONFIG_SHELL-/bin/sh} ./configure $ac_configure_args"
+ # The eval makes quoting arguments work.
+ if cd ../win; eval ${CONFIG_SHELL-/bin/sh} ./configure $ac_configure_args; cd ../unix
+ then :
+ else
+ { echo "configure: error: configure failed for ../win" 1>&2; exit 1; }
+ fi
fi
;;
dgux*)