1################################################################################ 2# 3# tcl 4# 5################################################################################ 6 7TCL_VERSION_MAJOR = 8.6 8TCL_VERSION = $(TCL_VERSION_MAJOR).9 9TCL_SOURCE = tcl$(TCL_VERSION)-src.tar.gz 10TCL_SITE = http://downloads.sourceforge.net/project/tcl/Tcl/$(TCL_VERSION) 11TCL_LICENSE = TCL 12TCL_LICENSE_FILES = license.terms 13TCL_CPE_ID_VENDOR = tcl 14TCL_SUBDIR = unix 15TCL_INSTALL_STAGING = YES 16TCL_AUTORECONF = YES 17 18TCL_CONF_OPTS = \ 19 --disable-symbols \ 20 --disable-langinfo \ 21 --disable-framework 22 23HOST_TCL_CONF_OPTS = \ 24 --disable-symbols \ 25 --disable-langinfo \ 26 --disable-framework 27 28# I haven't found a good way to force pkgs to not build 29# or configure without just removing the entire pkg directory. 30define HOST_TCL_REMOVE_PACKAGES 31 rm -fr $(@D)/pkgs/sqlite3* $(@D)/pkgs/tdbc* 32endef 33HOST_TCL_PRE_CONFIGURE_HOOKS += HOST_TCL_REMOVE_PACKAGES 34 35# We remove the bundled sqlite as we prefer to not use bundled stuff at all. 36define TCL_REMOVE_PACKAGES 37 rm -fr $(@D)/pkgs/sqlite3* \ 38 $(if $(BR2_PACKAGE_MYSQL),,$(@D)/pkgs/tdbcmysql*) \ 39 $(@D)/pkgs/tdbcodbc* \ 40 $(if $(BR2_PACKAGE_POSTGRESQL),,$(@D)/pkgs/tdbcpostgres*) \ 41 $(if $(BR2_PACKAGE_SQLITE),,$(@D)/pkgs/tdbcsqlite3*) 42endef 43TCL_PRE_CONFIGURE_HOOKS += TCL_REMOVE_PACKAGES 44 45ifeq ($(BR2_PACKAGE_TCL_DEL_ENCODINGS),y) 46define TCL_REMOVE_ENCODINGS 47 rm -rf $(TARGET_DIR)/usr/lib/tcl$(TCL_VERSION_MAJOR)/encoding/* 48endef 49TCL_POST_INSTALL_TARGET_HOOKS += TCL_REMOVE_ENCODINGS 50endif 51 52ifeq ($(BR2_PACKAGE_TCL_SHLIB_ONLY),y) 53define TCL_REMOVE_TCLSH 54 rm -f $(TARGET_DIR)/usr/bin/tclsh$(TCL_VERSION_MAJOR) 55endef 56TCL_POST_INSTALL_TARGET_HOOKS += TCL_REMOVE_TCLSH 57else 58define TCL_SYMLINK_TCLSH 59 ln -sf tclsh$(TCL_VERSION_MAJOR) $(TARGET_DIR)/usr/bin/tclsh 60endef 61TCL_POST_INSTALL_TARGET_HOOKS += TCL_SYMLINK_TCLSH 62endif 63 64# Until someone needs it, we don't handle locale installation. tcl has 65# a complicated method of translating LANG-style locale names into its internal 66# .msg name which makes it difficult to save the correct locales per the 67# configured whitelist. 68define TCL_REMOVE_EXTRA 69 rm -fr $(TARGET_DIR)/usr/lib/tclConfig.sh \ 70 $(TARGET_DIR)/usr/lib/tclooConfig.sh \ 71 $(TARGET_DIR)/usr/lib/tcl$(TCL_VERSION_MAJOR)/tclAppInit.c \ 72 $(TARGET_DIR)/usr/lib/tcl$(TCL_VERSION_MAJOR)/msgs 73endef 74TCL_POST_INSTALL_TARGET_HOOKS += TCL_REMOVE_EXTRA 75 76TCL_DEPENDENCIES = $(if $(BR2_PACKAGE_SQLITE),sqlite) \ 77 $(if $(BR2_PACKAGE_MYSQL),mysql) \ 78 $(if $(BR2_PACKAGE_POSTGRESQL),postgresql) 79 80$(eval $(autotools-package)) 81$(eval $(host-autotools-package)) 82