-#
-# Copyright (C) 2008 OpenWrt.org
+#
+# Copyright (C) 2006-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
+
include $(TOPDIR)/rules.mk
PKG_NAME:=tcl
-PKG_VERSION:=8.4.19
+PKG_VERSION:=8.5.8
PKG_RELEASE:=1
-PKG_SOURCE:=tcl$(PKG_VERSION)-src.tar.gz
+PKG_SOURCE:=$(PKG_NAME)$(PKG_VERSION)-src.tar.gz
PKG_SOURCE_URL:=@SF/tcl
-PKG_MD5SUM:=ade2c033a7b545ee108f3fdfeb629fcf
+PKG_MD5SUM:=7f123e53b3daaaba2478d3af5a0752e3
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)$(PKG_VERSION)
+PKG_FIXUP:=libtool
+PKG_INSTALL:=1
+
include $(INCLUDE_DIR)/package.mk
define Package/tcl
endef
define Package/tcl/description
- TCL Scripting Language
+Tcl (Tool Command Language) is a very powerful but easy to learn dynamic
+programming language, suitable for a very wide range of uses, including web and
+desktop applications, networking, administration, testing and many more. Open
+source and business-friendly, Tcl is a mature yet evolving language that is truly
+cross platform, easily deployed and highly extensible.
endef
-define Build/Configure
- (cd $(PKG_BUILD_DIR)/unix; \
- autoconf configure.in > configure; \
- sed -i.bak "s/relid'/relid/" configure; \
- $(TARGET_CONFIGURE_OPTS) \
- ./configure \
- --build=$(GNU_HOST_NAME) \
- --host=$(GNU_TARGET_NAME) \
- --prefix=/usr \
- --enable-gcc \
- --enable-threads \
- --disable-nls \
- )
-endef
+CONFIGURE_PATH := unix
-define Build/Compile
- $(MAKE) -C $(PKG_BUILD_DIR)/unix \
- DESTDIR="$(PKG_INSTALL_DIR)" \
- all install
-endef
+CONFIGURE_VARS += \
+ tcl_cv_strtod_unbroken=ok
+
+CONFIGURE_ARGS += \
+ --enable-threads
+
+MAKE_PATH := unix
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include/
+
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libtcl*.{a,so*} $(1)/usr/lib/
endef
-
define Package/tcl/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/*.so $(1)/usr/lib
+
$(INSTALL_DIR) $(1)/usr/bin
$(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin
endef
--- /dev/null
+--- a/unix/Makefile.in
++++ b/unix/Makefile.in
+@@ -817,15 +817,15 @@ install-tzdata: tclsh
+ @echo "Installing time zone data"
+ @@LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
+ TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
+- ./tclsh $(TOOL_DIR)/installData.tcl \
+- $(TOP_DIR)/library/tzdata "$(SCRIPT_INSTALL_DIR)"/tzdata
++ #./tclsh $(TOOL_DIR)/installData.tcl \
++ # $(TOP_DIR)/library/tzdata "$(SCRIPT_INSTALL_DIR)"/tzdata
+
+ install-msgs: tclsh
+ @echo "Installing message catalogs"
+ @@LD_LIBRARY_PATH_VAR@="`pwd`:$${@LD_LIBRARY_PATH_VAR@}"; export @LD_LIBRARY_PATH_VAR@; \
+ TCL_LIBRARY="${TCL_BUILDTIME_LIBRARY}"; export TCL_LIBRARY; \
+- ./tclsh $(TOOL_DIR)/installData.tcl \
+- $(TOP_DIR)/library/msgs "$(SCRIPT_INSTALL_DIR)"/msgs
++ #./tclsh $(TOOL_DIR)/installData.tcl \
++ # $(TOP_DIR)/library/msgs "$(SCRIPT_INSTALL_DIR)"/msgs
+
+ install-doc: doc
+ @for i in "$(MAN_INSTALL_DIR)" "$(MAN1_INSTALL_DIR)" "$(MAN3_INSTALL_DIR)" "$(MANN_INSTALL_DIR)" ; \
--- /dev/null
+--- a/generic/tclStrToD.c
++++ b/generic/tclStrToD.c
+@@ -73,7 +73,7 @@ typedef unsigned int fpu_control_t __att
+ * MIPS floating-point units need special settings in control registers
+ * to use gradual underflow as we expect.
+ */
+-#if defined(__mips)
++#if defined(__sgi) && defined(_COMPILER_VERSION)
+ #include <sys/fpu.h>
+ #endif
+ /*
+@@ -2166,7 +2166,7 @@ TclInitDoubleConversion(void)
+ } bitwhack;
+ #endif
+
+-#if defined(__mips)
++#if defined(__sgi) && defined(_COMPILER_VERSION)
+ union fpc_csr mipsCR;
+
+ mipsCR.fc_word = get_fpc_csr();