Commit c4f10a81 authored by "Steven J. Hill"'s avatar "Steven J. Hill"
Browse files

Applied patch to add TCL version 8.4.9 for buildroot submitted by

Ivan Daniluk on May 30 01:28:31 MDT 2005.
parent 56d91e95
Loading
Loading
Loading
Loading

package/tcl/Config.in

0 → 100644
+24 −0
Original line number Diff line number Diff line
config BR2_PACKAGE_TCL
	bool "tcl"
	default n
	help
	  TCL(Tool Command Language) is a simple textual language.

	  http://www.tcl.tk

config BR2_PACKAGE_TCL_DEL_ENCODINGS
	bool "delete encodings (saves 1.4Mb)"
	default y
	depends BR2_PACKAGE_TCL
	help
	  Delete encoding files for TCL. If your programs do not use various tcl
	  character recoding functions, you may safely choose Y here.
	  It saves approx. 1.4 Mb of space.

config BR2_PACKAGE_TCL_SHLIB_ONLY
	bool "install only shared library"
	default y
	depends BR2_PACKAGE_TCL
	help
	  Install only TCL shared library and not binary tcl interpreter(tclsh8.4).
	  Saves ~14kb.
+11 −0
Original line number Diff line number Diff line
--- 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. */
+11 −0
Original line number Diff line number Diff line
--- 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

package/tcl/tcl.mk

0 → 100644
+70 −0
Original line number Diff line number Diff line
#############################################################
#
# TCL8.4
#
#############################################################
TCL_VERSION:=8.4.9
TCL_SOURCE:=tcl$(TCL_VERSION)-src.tar.gz
TCL_SITE:=http://heanet.dl.sourceforge.net/sourceforge/tcl
TCL_DIR:=$(BUILD_DIR)/tcl$(TCL_VERSION)

$(DL_DIR)/$(TCL_SOURCE):
	$(WGET) -P $(DL_DIR) $(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; \
		$(TARGET_CONFIGURE_OPTS) \
		CFLAGS="$(TARGET_CFLAGS)" \
		./configure \
		--target=$(GNU_TARGET_NAME) \
		--host=$(GNU_TARGET_NAME) \
		--build=$(GNU_HOST_NAME) \
		--prefix=/usr \
		--sysconfdir=/etc \
		--enable-shared \
		--disable-symbols \
		--disable-langinfo \
		--disable-framework \
	);
	touch $(TCL_DIR)/.configured;

$(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
	-$(STRIP) --strip-unneeded $(TARGET_DIR)/usr/lib/libtcl8.4.so
	rm -Rf $(TARGET_DIR)/usr/man
	rm -Rf $(TARGET_DIR)/usr/include
	-if [ "$(strip $(BR2_PACKAGE_TCL_DEL_ENCODINGS))" == "y" ]; then \
	rm -Rf $(TARGET_DIR)/usr/lib/tcl8.4/encoding/*; \
	fi
	-if [ "$(strip $(BR2_PACKAGE_TCL_SHLIB_ONLY))" == "y" ]; then \
	rm -f $(TARGET_DIR)/usr/bin/tclsh8.4; \
	fi

tcl: uclibc $(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

less-dirclean:
	rm -rf $(LESS_DIR)

#############################################################
#
# Toplevel Makefile options
#
#############################################################
ifeq ($(strip $(BR2_PACKAGE_TCL)),y)
TARGETS+=tcl
endif