Skip to content

Commit

Permalink
Merge pull request #18714 from Flamefire/20230904145144_new_pr_ccache483
Browse files Browse the repository at this point in the history
{tools}[system/system] ccache v4.8.3
  • Loading branch information
branfosj authored Sep 4, 2023
2 parents 1fe3f30 + d36ca3d commit 8eaea17
Showing 1 changed file with 54 additions and 0 deletions.
54 changes: 54 additions & 0 deletions easybuild/easyconfigs/c/ccache/ccache-4.8.3.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# Copyright:: Copyright 2012-2014 Uni.Lu/LCSB, NTUA
# Authors:: Fotis Georgatos <fotis@cern.ch>
# License:: MIT/GPL

easyblock = 'CMakeNinja'

name = 'ccache'
version = '4.8.3'

homepage = 'https://ccache.dev/'
description = """Ccache (or “ccache”) is a compiler cache. It speeds up recompilation by
caching previous compilations and detecting when the same compilation is being done again"""

toolchain = SYSTEM

source_urls = ['https://github.com/ccache/ccache/releases/download/v%(version)s/']
sources = [SOURCE_TAR_GZ]
checksums = ['d59dd569ad2bbc826c0bc335c8ebd73e78ed0f2f40ba6b30069347e63585d9ef']

osdependencies = [('glibc-static', 'libc6-dev')]

local_gccver = '12.3.0'
builddependencies = [
('GCC', local_gccver),
('CMake', '3.26.3', '', ('GCCcore', local_gccver)),
('Ninja', '1.11.1', '', ('GCCcore', local_gccver)),
('hiredis', '1.2.0', '', ('GCCcore', local_gccver)),
('zstd', '1.5.5', '', ('GCCcore', local_gccver)),
]

# use BFD linker rather than default ld.gold (required on CentOS 8)
preconfigopts = 'LDFLAGS="-fuse-ld=bfd"'
configopts = ' '.join([
'-DENABLE_DOCUMENTATION=OFF',
'-DENABLE_IPO=ON',
# Link dependencies and binary statically
'-DCMAKE_EXE_LINKER_FLAGS="-static"',
'-DZSTD_LIBRARY="$EBROOTZSTD/lib/libzstd.a"',
'-DHIREDIS_LIBRARY="$EBROOTHIREDIS/lib/libhiredis.a"',
# Disable downloading dependencies
'-DZSTD_FROM_INTERNET=OFF -DHIREDIS_FROM_INTERNET=OFF',
])

sanity_check_paths = {
'files': ['bin/ccache'],
'dirs': []
}
sanity_check_commands = [
'ccache --help',
# Ensure that the binary does not depend on any shared library
'LC_ALL=C ldd $(which ccache) | grep -q "not a dynamic executable"',
]

moduleclass = 'tools'

0 comments on commit 8eaea17

Please sign in to comment.