Skip to content

[Tcl] [package list]

Tcl/8.6.13-cpeGNU-23.12 (Tcl-8.6.13-cpeGNU-23.12.eb)

To access module help and find out for which stacks and partitions the module is installed, use module spider Tcl/8.6.13-cpeGNU-23.12.

EasyConfig:

# contributed by Luca Marsella (CSCS)
# Adapted by Kurt Lust (kurt.lust@uantwerpen.be) for the LUMI consortium
easyblock = 'ConfigureMake'

local_zlib_version =         '1.3.1'         # https://zlib.net/
local_Tcl_version =          '8.6.13'        # https://tcl.tk/

name =    'Tcl'
version = local_Tcl_version

homepage = 'http://www.tcl.tk/'

whatis = [
    'Description: Tcl (Tool Command Language) is a very powerful but easy to learn dynamic programming language'
]

description = """
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.
"""

software_license_urls = [
    'https://tcl.tk/software/tcltk/license.html',
]

toolchain = {'name': 'cpeGNU', 'version': '23.12'}

source_urls = ['http://prdownloads.sourceforge.net/%(namelower)s']
sources =     ['%(namelower)s%(version)s-src.tar.gz']
checksums =   ['43a1fae7412f61ff11de2cfd05d28cfc3a73762f354a417c62370a54e2caf066']

builddependencies = [ # Create a reproducible build environment.
    ('buildtools',   '%(toolchain_version)s',   '', True),
]

dependencies = [
    ('zlib', local_zlib_version),
]

# Doesn't need MPI, ROCm or BLAS, and module unload never fails so this is safe.
preconfigopts = 'module unload cray-libsci cray-mpich rocm xpmem && '
prebuildopts = preconfigopts
pretestopts = preconfigopts
preinstallopts = preconfigopts

configopts = '--enable-threads EXTRA_INSTALL="install-private-headers"'

start_dir = 'unix'

runtest = 'test'

postinstallcmds = [
    'ln -s %(installdir)s/bin/tclsh%(version_major)s.%(version_minor)s %(installdir)s/bin/tclsh',
    'mkdir -p %(installdir)s/share/licenses/%(name)s',
    'cd .. && cp license.terms changes README.md %(installdir)s/share/licenses/%(name)s',   
]

sanity_check_paths = {
    'files': ['bin/tclsh%(version_major)s.%(version_minor)s', 'bin/tclsh',
              'include/tcl.h', 'lib/libtcl%%(version_major)s.%%(version_minor)s.%s' % SHLIB_EXT,
              'lib/tclConfig.sh', 'man/man1/tclsh.1', f'share/licenses/{name}/license.terms'],
    'dirs':  ['share'],
}

moduleclass = 'lang'

[Tcl] [package list]