Bump TCL version and switch to the autotools infrastructure
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sat, 13 Feb 2010 14:51:28 +0000 (15:51 +0100)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sat, 13 Feb 2010 15:13:38 +0000 (16:13 +0100)
The version of TCL is bumped from 8.4.9 to 8.4.19, which fixes the
build breakage reported by Maxime Ripard <maxime.ripard@anandra.org>
on January, 6th, 2010.

The tcl-strtod patch is kept since it is still needed, the two other
patches are no longer useful.

At the same time, the package is converted to the autotools
infrastructure.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/tcl/tcl-8.4.19-strtod.patch [new file with mode: 0644]
package/tcl/tcl-configure-syntax-error.patch [deleted file]
package/tcl/tcl-strstr.patch [deleted file]
package/tcl/tcl-strtod.patch [deleted file]
package/tcl/tcl.mk

diff --git a/package/tcl/tcl-8.4.19-strtod.patch b/package/tcl/tcl-8.4.19-strtod.patch
new file mode 100644 (file)
index 0000000..a997454
--- /dev/null
@@ -0,0 +1,11 @@
+--- tcl8.4.9/compat/strtod.c   2002-02-25 16:26:12.000000000 +0200
++++ tcl8.4.9/compat/strtod.c   2005-05-30 08:55:18.000000000 +0300
+@@ -24,6 +24,8 @@
+ #define NULL 0
+ #endif
++#undef strtod
++
+ static int maxExponent = 511; /* Largest possible base 10 exponent.  Any
+                                * exponent larger than this will already
+                                * produce underflow or overflow, so there's
diff --git a/package/tcl/tcl-configure-syntax-error.patch b/package/tcl/tcl-configure-syntax-error.patch
deleted file mode 100644 (file)
index b22e974..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-diff -ur tcl8.4.9/unix/configure tcl8.4.9-patched/unix/configure
---- tcl8.4.9/unix/configure    2004-12-06 18:23:45.000000000 -0600
-+++ tcl8.4.9-patched/unix/configure    2006-07-06 21:02:18.884355250 -0500
-@@ -2131,7 +2131,7 @@
-           # results, and the version is kept in special file).
-       
-           if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
--              system=MP-RAS-`awk '{print }' /etc/.relid'`
-+              system=MP-RAS-`awk '{print }' /etc/.relid`
-           fi
-           if test "`uname -s`" = "AIX" ; then
-               system=AIX-`uname -v`.`uname -r`
-@@ -7322,7 +7322,7 @@
-           # results, and the version is kept in special file).
-       
-           if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
--              system=MP-RAS-`awk '{print }' /etc/.relid'`
-+              system=MP-RAS-`awk '{print }' /etc/.relid`
-           fi
-           if test "`uname -s`" = "AIX" ; then
-               system=AIX-`uname -v`.`uname -r`
-diff -ur tcl8.4.9/unix/tcl.m4 tcl8.4.9-patched/unix/tcl.m4
---- tcl8.4.9/unix/tcl.m4       2004-12-06 18:23:45.000000000 -0600
-+++ tcl8.4.9-patched/unix/tcl.m4       2006-07-06 21:02:35.653403250 -0500
-@@ -844,7 +844,7 @@
-           # results, and the version is kept in special file).
-       
-           if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
--              system=MP-RAS-`awk '{print $3}' /etc/.relid'`
-+              system=MP-RAS-`awk '{print $3}' /etc/.relid`
-           fi
-           if test "`uname -s`" = "AIX" ; then
-               system=AIX-`uname -v`.`uname -r`
-@@ -2190,7 +2190,7 @@
-           # results, and the version is kept in special file).
-       
-           if test -r /etc/.relid -a "X`uname -n`" = "X`uname -s`" ; then
--              system=MP-RAS-`awk '{print $3}' /etc/.relid'`
-+              system=MP-RAS-`awk '{print $3}' /etc/.relid`
-           fi
-           if test "`uname -s`" = "AIX" ; then
-               system=AIX-`uname -v`.`uname -r`
diff --git a/package/tcl/tcl-strstr.patch b/package/tcl/tcl-strstr.patch
deleted file mode 100644 (file)
index 3bed414..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- tcl8.4.9/compat/strstr.c   2002-01-26 03:10:08.000000000 +0200
-+++ tcl8.4.9/compat/strstr.c   2005-05-30 06:53:40.000000000 +0300
-@@ -33,6 +33,8 @@
-  *----------------------------------------------------------------------
-  */
-+#include <unistd.h>
-+
- char *
- strstr(string, substring)
-     register char *string;    /* String to search. */
diff --git a/package/tcl/tcl-strtod.patch b/package/tcl/tcl-strtod.patch
deleted file mode 100644 (file)
index a997454..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
---- tcl8.4.9/compat/strtod.c   2002-02-25 16:26:12.000000000 +0200
-+++ tcl8.4.9/compat/strtod.c   2005-05-30 08:55:18.000000000 +0300
-@@ -24,6 +24,8 @@
- #define NULL 0
- #endif
-+#undef strtod
-+
- static int maxExponent = 511; /* Largest possible base 10 exponent.  Any
-                                * exponent larger than this will already
-                                * produce underflow or overflow, so there's
index a30cce29463c2e918fd0eb85692bef8ce47dade7..edcc4417a5dc010b08d26db4788fc193c8c08695 100644 (file)
@@ -3,66 +3,26 @@
 # TCL8.4
 #
 #############################################################
-TCL_VERSION:=8.4.9
+TCL_VERSION:=8.4.19
 TCL_SOURCE:=tcl$(TCL_VERSION)-src.tar.gz
 TCL_SITE:=http://$(BR2_SOURCEFORGE_MIRROR).dl.sourceforge.net/sourceforge/tcl
-TCL_DIR:=$(BUILD_DIR)/tcl$(TCL_VERSION)
-
-$(DL_DIR)/$(TCL_SOURCE):
-       $(call DOWNLOAD,$(TCL_SITE),$(TCL_SOURCE))
-
-$(TCL_DIR)/.source: $(DL_DIR)/$(TCL_SOURCE)
-       $(ZCAT) $(DL_DIR)/$(TCL_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
-       toolchain/patch-kernel.sh $(TCL_DIR) package/tcl/ tcl\*.patch
-       touch $(TCL_DIR)/.source
-
-$(TCL_DIR)/.configured: $(TCL_DIR)/.source
-       (cd $(TCL_DIR)/unix; rm -f config.cache; \
-               $(TARGET_CONFIGURE_OPTS) \
-               $(TARGET_CONFIGURE_ARGS) \
-               ./configure $(QUIET) \
-               --target=$(GNU_TARGET_NAME) \
-               --host=$(GNU_TARGET_NAME) \
-               --build=$(GNU_HOST_NAME) \
-               --prefix=/usr \
-               --sysconfdir=/etc \
+TCL_SUBDIR = unix
+TCL_CONF_OPT = \
                --enable-shared \
                --disable-symbols \
                --disable-langinfo \
-               --disable-framework \
-       )
-       touch $(TCL_DIR)/.configured
+               --disable-framework
 
-$(TCL_DIR)/unix/libtcl8.4.so: $(TCL_DIR)/.configured
-       $(MAKE) CC=$(TARGET_CC) -C $(TCL_DIR)/unix
-
-$(TARGET_DIR)/usr/lib/libtcl8.4.so: $(TCL_DIR)/unix/libtcl8.4.so
-       $(MAKE) INSTALL_ROOT=$(TARGET_DIR) -C $(TCL_DIR)/unix install
+define TCL_POST_INSTALL_CLEANUP
        -$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/lib/libtcl8.4.so
-       rm -Rf $(TARGET_DIR)/usr/man
        -if [ "$(BR2_PACKAGE_TCL_DEL_ENCODINGS)" == "y" ]; then \
        rm -Rf $(TARGET_DIR)/usr/lib/tcl8.4/encoding/*; \
        fi
        -if [ "$(BR2_PACKAGE_TCL_SHLIB_ONLY)" == "y" ]; then \
        rm -f $(TARGET_DIR)/usr/bin/tclsh8.4; \
        fi
+endef
 
-tcl: $(TARGET_DIR)/usr/lib/libtcl8.4.so
-
-tcl-source: $(DL_DIR)/$(TCL_SOURCE)
-
-tcl-clean:
-       $(MAKE) prefix=$(TARGET_DIR)/usr -C $(TCL_DIR)/unix uninstall
-       -$(MAKE) -C $(TCL_DIR)/unix clean
+TCL_POST_INSTALL_TARGET_HOOKS += TCL_POST_INSTALL_CLEANUP
 
-tcl-dirclean:
-       rm -rf $(TCL_DIR)
-
-#############################################################
-#
-# Toplevel Makefile options
-#
-#############################################################
-ifeq ($(BR2_PACKAGE_TCL),y)
-TARGETS+=tcl
-endif
+$(eval $(call AUTOTARGETS,package,tcl))