Pārlūkot izejas kodu

Bump TCL version and switch to the autotools infrastructure

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>
Thomas Petazzoni 15 gadi atpakaļ
vecāks
revīzija
155667c237

+ 0 - 0
package/tcl/tcl-strtod.patch → package/tcl/tcl-8.4.19-strtod.patch


+ 0 - 42
package/tcl/tcl-configure-syntax-error.patch

@@ -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`

+ 0 - 11
package/tcl/tcl-strstr.patch

@@ -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. */

+ 8 - 48
package/tcl/tcl.mk

@@ -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))