diff --git a/easybuild/easyconfigs/a/Abseil/Abseil-20250512.1-GCCcore-14.2.0.eb b/easybuild/easyconfigs/a/Abseil/Abseil-20250512.1-GCCcore-14.2.0.eb new file mode 100644 index 000000000000..e5099de6f180 --- /dev/null +++ b/easybuild/easyconfigs/a/Abseil/Abseil-20250512.1-GCCcore-14.2.0.eb @@ -0,0 +1,35 @@ +easyblock = 'CMakeMake' + +name = 'Abseil' +version = '20250512.1' + +homepage = 'https://abseil.io/' +description = """Abseil is an open-source collection of C++ library code designed to augment the +C++ standard library. The Abseil library code is collected from Google's own +C++ code base, has been extensively tested and used in production, and is the +same code we depend on in our daily coding lives.""" + +toolchain = {'name': 'GCCcore', 'version': '14.2.0'} +toolchainopts = {'pic': True} + +source_urls = [ + 'https://github.com/%(namelower)s/%(namelower)s-cpp/archive/refs/tags'] +sources = ['%(version)s.tar.gz'] +checksums = ['9b7a064305e9fd94d124ffa6cc358592eb42b5da588fb4e07d09254aa40086db'] + +builddependencies = [ + ('binutils', '2.42'), + ('CMake', '3.31.3'), +] + +local_configopts = "-DABSL_PROPAGATE_CXX_STD=ON " +# Build static and shared libraries, static last so they get preferred by CMake consumers +# For backwards compatibility only. Future builds should only build static libs to avoid excessive linkage. +configopts = [f'-DBUILD_SHARED_LIBS={shlib} {local_configopts}' for shlib in ['ON', 'OFF']] + +sanity_check_paths = { + 'files': [f'lib/libabsl_base.{ext}' for ext in (SHLIB_EXT, 'a')], + 'dirs': ['include/absl'], +} + +moduleclass = 'lib'