diff --git a/easybuild/easyconfigs/a/Arrow/Arrow-8.0.0-foss-2022.05.eb b/easybuild/easyconfigs/a/Arrow/Arrow-8.0.0-foss-2022.05.eb new file mode 100644 index 00000000000..6f01b9c72ba --- /dev/null +++ b/easybuild/easyconfigs/a/Arrow/Arrow-8.0.0-foss-2022.05.eb @@ -0,0 +1,69 @@ +easyblock = 'CMakeMake' + +name = 'Arrow' +version = '8.0.0' + +homepage = 'https://arrow.apache.org' +description = """Apache Arrow (incl. PyArrow Python bindings), a cross-language development platform + for in-memory data.""" + +toolchain = {'name': 'foss', 'version': '2022.05'} + +source_urls = ['https://archive.apache.org/dist/%(namelower)s/%(namelower)s-%(version)s'] +sources = ['apache-arrow-%(version)s.tar.gz'] +checksums = ['ad9a05705117c989c116bae9ac70492fe015050e1b80fb0e38fde4b5d863aaa3'] + +builddependencies = [ + ('CMake', '3.23.1'), + ('Autotools', '20220317'), + ('flex', '2.6.4'), + ('Bison', '3.8.2'), + ('pkgconf', '1.8.0'), +] + +# Arrow strongly prefers included jemalloc, so not including it as a dependency +dependencies = [ + ('Python', '3.10.4'), + ('SciPy-bundle', '2022.05'), # for numpy + ('Boost', '1.79.0'), + ('lz4', '1.9.3'), + ('zlib', '1.2.12'), + ('bzip2', '1.0.8'), + ('zstd', '1.5.2'), + ('snappy', '1.1.9'), + ('RapidJSON', '1.1.0'), + ('RE2', '2022-06-01'), + ('utf8proc', '2.7.0'), +] + +start_dir = 'cpp' + +# see https://arrow.apache.org/docs/developers/python.html +configopts = "-DARROW_PYTHON=on -DARROW_PARQUET=ON -DARROW_WITH_SNAPPY=ON " +configopts += "-DCMAKE_INSTALL_LIBDIR=lib -DPython3_ROOT_DIR=$EBROOTPYTHON " +configopts += "-DARROW_WITH_ZLIB=ON -DARROW_WITH_BZ2=ON -DARROW_WITH_ZSTD=ON -DARROW_WITH_LZ4=ON " +configopts += "-DZSTD_ROOT=$EBROOTZSTD " + +# also install Python bindings +local_install_pyarrow_cmds = "export PKG_CONFIG_PATH=%(installdir)s/lib/pkgconfig:$PKG_CONFIG_PATH && " +local_install_pyarrow_cmds += "export PYTHONPATH=%(installdir)s/lib/python%(pyshortver)s/site-packages:$PYTHONPATH && " +local_install_pyarrow_cmds += "cd %(builddir)s/*arrow-%(version)s/python && export XDG_CACHE_HOME=$TMPDIR && " +local_install_pyarrow_cmds += "sed -i 's/numpy==[0-9.]*/numpy/g' pyproject.toml && " +local_install_pyarrow_cmds += "Python3_ROOT_DIR=$EBROOTPYTHON " +local_install_pyarrow_cmds += "PYARROW_WITH_PARQUET=1 pip install --prefix %(installdir)s ." +postinstallcmds = [local_install_pyarrow_cmds] + +modextrapaths = {'PYTHONPATH': 'lib/python%(pyshortver)s/site-packages'} + +sanity_check_paths = { + 'files': ['lib/libarrow.a', 'lib/libarrow.%s' % SHLIB_EXT, + 'lib/libarrow_python.a', 'lib/libarrow_python.%s' % SHLIB_EXT], + 'dirs': ['include/arrow', 'lib/cmake/arrow', 'lib/pkgconfig', 'lib/python%(pyshortver)s/site-packages'], +} + +sanity_check_commands = [ + "python -c 'import pyarrow'", + "python -c 'import pyarrow.parquet'", +] + +moduleclass = 'data' diff --git a/easybuild/easyconfigs/r/RE2/RE2-2022-06-01-GCCcore-11.3.0.eb b/easybuild/easyconfigs/r/RE2/RE2-2022-06-01-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..6180050adea --- /dev/null +++ b/easybuild/easyconfigs/r/RE2/RE2-2022-06-01-GCCcore-11.3.0.eb @@ -0,0 +1,33 @@ +## +# Author: Robert Mijakovic +## +easyblock = "CMakeMake" + +name = 'RE2' +version = '2022-06-01' + +homepage = 'https://github.com/google/re2' +description = """ +RE2 is a fast, safe, thread-friendly alternative to backtracking regular +expression engines like those used in PCRE, Perl, and Python. It is a C++ +library. """ + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} +toolchainopts = {'pic': True} + +github_account = 'google' +source_urls = [GITHUB_SOURCE] +sources = ['%(version)s.tar.gz'] +checksums = ['f89c61410a072e5cbcf8c27e3a778da7d6fd2f2b5b1445cd4f4508bee946ab0f'] + +builddependencies = { + ('binutils', '2.38'), + ('CMake', '3.23.1'), +} + +sanity_check_paths = { + 'files': ['lib/libre2.a'], + 'dirs': ['include/re2'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/r/RapidJSON/RapidJSON-1.1.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/r/RapidJSON/RapidJSON-1.1.0-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..3452dfb7caf --- /dev/null +++ b/easybuild/easyconfigs/r/RapidJSON/RapidJSON-1.1.0-GCCcore-11.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'CMakeMake' + +name = 'RapidJSON' +version = '1.1.0' + +homepage = 'https://rapidjson.org' +description = "A fast JSON parser/generator for C++ with both SAX/DOM style API" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/Tencent/%(namelower)s/archive/'] +sources = ['v%(version)s.tar.gz'] +patches = ['%(name)s-%(version)s_fix-compiler-errors.patch'] +checksums = [ + 'bf7ced29704a1e696fbccf2a2b4ea068e7774fa37f6d7dd4039d0787f8bed98e', # v1.1.0.tar.gz + # %(name)s-%(version_major_minor)s.0_fix-compiler-errors.patch + '2e40ef6c46bf355feac16cd84faad5b7aca0ad54273117b85534b1b781f411c7', +] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1'), +] + +sanity_check_paths = { + 'files': ['lib/pkgconfig/%(name)s.pc'], + 'dirs': ['include/%(namelower)s', 'lib/cmake', 'share'], +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/s/snappy/snappy-1.1.9-GCCcore-11.3.0.eb b/easybuild/easyconfigs/s/snappy/snappy-1.1.9-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..459be39d9c3 --- /dev/null +++ b/easybuild/easyconfigs/s/snappy/snappy-1.1.9-GCCcore-11.3.0.eb @@ -0,0 +1,39 @@ +easyblock = 'CMakeMake' + +name = 'snappy' +version = '1.1.9' + +homepage = 'https://github.com/google/snappy' +description = """Snappy is a compression/decompression library. It does not aim +for maximum compression, or compatibility with any other compression library; +instead, it aims for very high speeds and reasonable compression.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/google/snappy/archive/'] +sources = ['%(version)s.tar.gz'] +patches = [ + '%(name)s-%(version)s_inline-functions.patch', + '%(name)s-%(version)s_use-default-rtti.patch', +] +checksums = [ + '75c1fbb3d618dd3a0483bff0e26d0a92b495bbe5059c8b4f1c962b478b6e06e7', # 1.1.9.tar.gz + 'ad79190b274df5ddabf14eddd2bb0d9a091ee7d44e4afde89febf9a8f783fdce', # snappy-1.1.9_inline-functions.patch + 'af56538330b2d781677c7d94576c15fc36e004ae0b4f1ac7d86bbec22b65e73d', # snappy-1.1.9_use-default-rtti.patch +] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1'), +] + +# Disable building tests and benchmarks - we're not using them and they require googletest and benchmark source code +_configopts = '-DSNAPPY_BUILD_TESTS=OFF -DSNAPPY_BUILD_BENCHMARKS=OFF' +configopts = ['%s' % _configopts, '-DBUILD_SHARED_LIBS=ON %s' % _configopts] + +sanity_check_paths = { + 'files': ['lib64/libsnappy.a', 'lib64/libsnappy.%s' % SHLIB_EXT, 'include/snappy.h'], + 'dirs': [] +} + +moduleclass = 'lib' diff --git a/easybuild/easyconfigs/u/utf8proc/utf8proc-2.7.0-GCCcore-11.3.0.eb b/easybuild/easyconfigs/u/utf8proc/utf8proc-2.7.0-GCCcore-11.3.0.eb new file mode 100644 index 00000000000..be580835593 --- /dev/null +++ b/easybuild/easyconfigs/u/utf8proc/utf8proc-2.7.0-GCCcore-11.3.0.eb @@ -0,0 +1,30 @@ +easyblock = 'CMakeMake' + +name = 'utf8proc' +version = '2.7.0' + +homepage = 'https://github.com/JuliaStrings/utf8proc' +description = """utf8proc is a small, clean C library that provides Unicode normalization, case-folding, +and other operations for data in the UTF-8 encoding.""" + +toolchain = {'name': 'GCCcore', 'version': '11.3.0'} + +source_urls = ['https://github.com/JuliaStrings/utf8proc/archive/'] +sources = ['v%(version)s.tar.gz'] +checksums = ['4bb121e297293c0fd55f08f83afab6d35d48f0af4ecc07523ad8ec99aa2b12a1'] + +builddependencies = [ + ('binutils', '2.38'), + ('CMake', '3.23.1'), +] + +separate_build_dir = True + +configopts = ['', '-DBUILD_SHARED_LIBS=true'] + +sanity_check_paths = { + 'files': ['include/utf8proc.h', 'lib/libutf8proc.a', 'lib/libutf8proc.%s' % SHLIB_EXT], + 'dirs': [], +} + +moduleclass = 'lib'