Skip to content

[ANTLR] [package list]

ANTLR/2.7.7-cpeCray-26.03-cray-python3.12 (ANTLR-2.7.7-cpeCray-26.03-cray-python3.12.eb)

Install with the EasyBuild-user module:

eb ANTLR-2.7.7-cpeCray-26.03-cray-python3.12.eb -r
To access module help after installation and get reminded for which stacks and partitions the module is installed, use module spider ANTLR/2.7.7-cpeCray-26.03-cray-python3.12.

EasyConfig:

# contributed by Luca Marsella (CSCS), updated by Samuel Omlin (CSCS)
# Adapted by Kurt Lust (kurt.lust@uantwerpen.be) for the LUMI consortium
#DOC ANTLR for NCO. You can comment out the Java dependency if you want to use the 
#DOC system Java instead.
easyblock = 'ConfigureMake'

local_ANTLR_NCO_version =    '2.7.7'         # Looks like NCO requires an antique version.

local_craypython_version =   '3.12.12'
local_craypython_version_mm = '.'.join( local_craypython_version.split('.')[:2] )

local_Java_version =         '25'

name =          'ANTLR'
version =       local_ANTLR_NCO_version
version_suffix = f'-cray-python{local_craypython_version_mm}'

homepage = 'http://www.antlr.org/'

whatis = [
    'Description: ANTLR - ANother Tool for Language Recognition'
]

description = """
ANTLR, ANother Tool for Language Recognition, (formerly PCCTS) is a
language tool that provides a framework for constructing recognizers,
compilers, and translators from grammatical descriptions containing
Java, C#, C++, or Python actions.

This is an antique version for ANTLR that is needed to compile one
particular package. Users are advised to use newer versions whenever
possible.
"""

software_license_urls = ['https://www.antlr2.org/license.html']

toolchain = {'name': 'cpeCray', 'version': '26.03'}

source_urls = ['https://www.antlr2.org/download/']
sources =     [SOURCELOWER_TAR_GZ]
patches =     ['%(name)s-%(version)s_includes.patch']
checksums =   [
    {'antlr-2.7.7.tar.gz':         '853aeb021aef7586bda29e74a6b03006bcb565a755c86b66032d8ec31b67dbb9'},  # antlr-2.7.7.tar.gz
    {'ANTLR-2.7.7_includes.patch': 'd167d3248a03301bc93efcb37d5df959aae6794968e42231af0b0dd26d6a2e66'},  # ANTLR-2.7.7_includes.patch
]

build_deps = [ # Create a reproducible build environment.
    ('buildtools',          '%(toolchain_version)s',   '', True),
    ('craype-network-none', EXTERNAL_MODULE),
    ('craype-accel-host',   EXTERNAL_MODULE)
]

deps = [
    ('cray-python', EXTERNAL_MODULE),
    ('Java',        local_Java_version, '', SYSTEM),
]

configure_opts = '--disable-examples --disable-csharp '

pre_configure_opts = 'module unload rocm cray-libsci && '
pre_install_opts = pre_test_opts = pre_build_opts = pre_configure_opts

post_install_cmds = [
    'mkdir -p %(installdir)s/share/licenses/%(name)s && cp LICENSE.txt %(installdir)s/share/licenses/%(name)s'
]

sanity_check_paths = {
    'files': ['bin/antlr', 'bin/antlr-config'],
    'dirs':  ['include'],
}

sanity_check_cmds = [
    'antlr --help',
    'antlr-config --libs',
]

env_mod_category = 'tools'

[ANTLR] [package list]