easyconfigs-it4i/n/ncurses/ncurses-6.5-GCCcore-14.2.0.eb
Lukas Krupcik 65417ffe00 new file: a/Autoconf/Autoconf-2.72-GCCcore-14.2.0.eb
new file:   a/Autotools/Autotools-20231222-GCCcore-14.2.0.eb
	new file:   b/bzip2/bzip2-1.0.8-GCCcore-14.2.0.eb
	new file:   c/CMake/CMake-3.30.5-GCCcore-14.2.0.eb
	new file:   c/cURL/cURL-8.7.1-GCCcore-14.2.0.eb
	new file:   h/hwloc/hwloc-2.10.0-GCCcore-14.2.0.eb
	new file:   l/libarchive/libarchive-3.7.4-GCCcore-14.2.0.eb
	new file:   n/NVHPC/NVHPC-24.3.eb
	new file:   n/ncurses/ncurses-6.5-GCCcore-14.2.0.eb
	new file:   n/numactl/numactl-2.0.18-GCCcore-13.3.0.eb
	new file:   o/OpenMPI/OpenMPI-4.1.6-NVHPC-24.3.eb
	new file:   o/OpenMPI/OpenMPI-5.0.5-GCC-14.2.0.eb
	new file:   p/Perl/Perl-5.38.2-GCCcore-14.2.0.eb
	new file:   p/pkgconf/pkgconf-2.2.0-GCCcore-14.2.0.eb
	new file:   u/UCC/UCC-1.2.0-GCCcore-13.2.0.eb
	modified:   u/UCX/UCX-1.15.0-GCCcore-13.2.0.eb
	new file:   x/XZ/XZ-5.4.5-GCCcore-14.2.0.eb
2024-10-18 11:04:27 +02:00

57 lines
2.3 KiB
Plaintext

# IT4Innovations
# LK 2024
easyblock = 'ConfigureMake'
name = 'ncurses'
version = '6.5'
homepage = 'https://www.gnu.org/software/ncurses/'
description = """
The Ncurses (new curses) library is a free software emulation of curses in
System V Release 4.0, and more. It uses Terminfo format, supports pads and
color and multiple highlights and forms characters and function-key mapping,
and has all the other SYSV-curses enhancements over BSD Curses.
"""
toolchain = {'name': 'GCCcore', 'version': '14.2.0'}
toolchainopts = {'pic': True}
source_urls = [GNU_SOURCE]
sources = [SOURCE_TAR_GZ]
checksums = ['136d91bc269a9a5785e5f9e980bc76ab57428f604ce3e5a5a90cebc767971cc6']
builddependencies = [
('binutils', '2.42'),
('pkgconf', '2.2.0'),
]
local_common_configopts = "--with-shared --enable-overwrite --without-ada --enable-symlinks --with-versioned-syms "
local_common_configopts += "--enable-pc-files --with-pkg-config-libdir=%(installdir)s/lib/pkgconfig "
configopts = [
# build ncurses: serial build in default paths with shared libraries
local_common_configopts + "--disable-widec",
# build ncursesw: serial with UTF-8
local_common_configopts + "--enable-ext-colors --enable-widec --includedir=%(installdir)s/include/ncursesw/",
]
# Symlink libtinfo to libncurses
# libncurses with this configopts has all the symbols from libtinfo, but some packages look for libtinfo specifically
postinstallcmds = ['cd %(installdir)s/lib && for l in libncurses{.,_,w}*; do ln -s "${l}" "${l/ncurses/tinfo}"; done']
_target_suffix = ['', 'w'] # '': ncurses, 'w': ncursesw
_lib_suffix = ['%s%s' % (x, y) for x in _target_suffix for y in ['.a', '_g.a', '.' + SHLIB_EXT]]
_lib_names = ['form', 'menu', 'ncurses', 'panel', 'tinfo']
_pc_names = ['form', 'menu', 'ncurses++', 'ncurses', 'panel']
sanity_check_paths = {
'files': ['bin/%s' % x for x in ["captoinfo", "clear", "infocmp", "infotocap", "ncurses%(version_major)s-config",
"reset", "tabs", "tic", "toe", "tput", "tset"]] +
['lib/lib%s%s' % (x, y) for x in _lib_names for y in _lib_suffix] +
['lib/libncurses++%s.a' % x for x in _target_suffix] +
['lib/pkgconfig/%s%s.pc' % (x, y) for x in _pc_names for y in _target_suffix],
'dirs': ['include', 'include/ncursesw'],
}
moduleclass = 'devel'