diff options
Diffstat (limited to 'sys-devel/clang-common')
-rw-r--r-- | sys-devel/clang-common/Manifest | 3 | ||||
-rw-r--r-- | sys-devel/clang-common/clang-common-15.0.4.ebuild | 129 |
2 files changed, 132 insertions, 0 deletions
diff --git a/sys-devel/clang-common/Manifest b/sys-devel/clang-common/Manifest index b93527b15a0a..e277f40814d2 100644 --- a/sys-devel/clang-common/Manifest +++ b/sys-devel/clang-common/Manifest @@ -3,12 +3,15 @@ DIST llvm-project-14.0.6.src.tar.xz.sig 566 BLAKE2B cb658ad43d8ab6c43a5773aedadf DIST llvm-project-14f996dca8a2b5b17d6917528bfd9ee71ba6192a.tar.gz 169054148 BLAKE2B a23af6658a6ea8a7cb4272faef151937da229e39383ec068d7ef81e72a25d2a46dc2a86255a7f1148b7385b339d1c17e62f627df834d8eccc39be8921575f88d SHA512 e719d296016e7af718d022424c337a5df8d7124fdb49b9f219ab2a5dc592e6a59f6c09064775ea9349bcf4eed9d72214abb648de649ab872174c35635c945c04 DIST llvm-project-15.0.3.src.tar.xz 112069972 BLAKE2B 3d29bab890467ba87fedcc4e76522f444e63e3dfbe546793f8e67821bcd403bad460ea176254c9e0b72d60ea56b8480e498a7f610477c1108732d178804c26cd SHA512 d378d417f01c56534f301cfe6cb4958d811c04ae22acaacc917e7e5f0380859d40ce19dffb265d046b70fff95dbc2e759f492e4d5af0ade52f21ebaa8da65856 DIST llvm-project-15.0.3.src.tar.xz.sig 438 BLAKE2B e7e0614e144eb878f694c12e97cf42ff8476e47cb55e8f259eb2ec52e303463ad753771271512e89baf0137c1382b11cfa028c85324174ebcd054a124000f537 SHA512 41229bebdb0c2df9a5e3a4d6f02d39fac7dc91f21895a659523beab4fa3ef99ff06eff5e4386221369b6e2b6f8fe974d67b7d8496d5911ce484d09ae0db8b916 +DIST llvm-project-15.0.4.src.tar.xz 110936424 BLAKE2B a02b76ad161e352b4d3d84baffdada9c6a0e704de7a2c4017df4d4d05a9e9d02113791cd7d91c3edfa1f5bcb7ab95e1772d60f7061514928c6828600f41a8322 SHA512 9d5b664dd77c08130601636f9d6c006b257f369470ce823aa56d06698a9f0edfec42f2c90da934b9ad52c4d7960d9a024ea46dc9640275be6d191b1ba9869459 +DIST llvm-project-15.0.4.src.tar.xz.sig 566 BLAKE2B f1a7be65fcce932dc125ae2b498f68a14e68dad0d7a1e031343c52c5dafb7b123e346f3efa50a7693584361abf01efe9401b1b5781dee6b92dc1045e538e9b7b SHA512 35899ffbd13fc44cade54246a423450571cb4b62b8d706864daa3eef2377c48e24ef3113218e39e29de995b7f7fa307f9187552766576c9050fd924beb517f6e DIST llvm-project-b34ea582774c057d9bf5591174d683fd3d8aa02b.tar.gz 169735900 BLAKE2B d3a82a07f855b038071fc8eb3f41a88b4c220a577219985ecddeb9a535ea8b159dbad575699997d90a49db74c074b5f4354ad707e91d6934daaa7319e0d8ee9b SHA512 3f5525c7d893bdac701cff4cf82dafc31608920d788d9b7401654f320b2432528cf4ae8ef013182807b3dc0c5b758c71f1efeedb672dd47fdb8aa6f434dfb583 DIST llvmorg-13.0.1.tar.gz 147290251 BLAKE2B 2a44b012a672501761d0c27c6b3a315b69bfef0cd13b078a7e7d2fccc4a9c8c0f2bee0f164c4271c9106b0a99cb06e8b64986f66253b613336719fb86b82541b SHA512 9a8cb5d11964ba88b7624f19ec861fb28701f23956ea3c92f6ac644332d5f41fde97bd8933dd3ee70ed378058c252fa3a3887c8d1af90d219970c2b27691166f EBUILD clang-common-13.0.1.ebuild 593 BLAKE2B f7d78facc226d949240f31d10bb01f6a2bbe3c806d7f7c22a78d715d29de74723bedccdeefd029d309b090afe63821e10a1bd27662ff156640820fbca1896bab SHA512 48e5c5f3d4716c15018aa246cf61fbf898c4c459b1f04710da155084a8cf5b8a6df7697c300d297ac48ee1a8a8cff9bc9b4fca712455032f78cb26e9f77ef955 EBUILD clang-common-14.0.6.ebuild 541 BLAKE2B 87b158e874cf600e23591a8095e0edb4d30d4482600ef8fe38984e9ba9559e6e2226107cd482f355d950392a6a452e1a8ae79d297d5afc3951a7f1c8f6227b5f SHA512 1bd0481468c278f131ec9f87243927b60a59752f4229450559bf8016e9599155a52593810fcdc1cf0aecd4aa1529e8df300d95123a53de18eb326152caafbbef EBUILD clang-common-15.0.3-r2.ebuild 3578 BLAKE2B 4d2e9b86bcb907101428595718b2887c6155c08a554c36d3c315bbfaba452bf3bb083590494c23861f9265137f94a00658a987ca6e6a98d2c25a25ce78f3a514 SHA512 a512f165c5086e5e3e38777caffc9ed2a6874a1d5a37725c49d7ac14f39b070d945a4fe3e0902767643eaa0584091b57c1b822777ce0e3f092e8a2aefb4b26a3 EBUILD clang-common-15.0.4.9999.ebuild 3499 BLAKE2B e646b6cc44fdd8543ff74724a2e8fb02276fd9c591ae2334cf28abbd022c044be82d9fbe6385553f7b175ac8fb57f876e36ae79bdd304a87a3bd8ce5fe97f44a SHA512 0f98a23302a878350e8df9a0d181f3b2ed9df0c29666171c48fbb37204b93e236a79649759c8dc3eb72b7bc965bc3c890716d5d3b3814415528556273ccc6450 +EBUILD clang-common-15.0.4.ebuild 3583 BLAKE2B 15f7af306a44cc2e4ad1081d074af52525bd0042cbbb56cb34a2d6a3c501422a619145981843922c96cd99d5f6c380c3ed7c2829fbe466738e65823fb2cc44b6 SHA512 ff1c5fd4aa7944fa3a4d1d7ec433b62e8ac238d7e16834c087654bdc31caf4f5e1319402a8bc5999cbe1e08065b97e003d6d4976168359f0737b54e1542e25c5 EBUILD clang-common-16.0.0.9999.ebuild 3432 BLAKE2B 92679a03e3a45df587198ce70dfaebbc674c47229b14040c93353dd4c384636df7ff6591138c8aedf00fcee0f75edef3fc9f3257058f1d8fcdcade0c2be8c244 SHA512 e33fd7582bbe2d3ad4ed3405a92db98d7365d040df39f7e32d2f75b093e346ec88230813c607983398f9c310bc0925b61d9b438905e8177665db123e1b7d064c EBUILD clang-common-16.0.0_pre20221016-r1.ebuild 3432 BLAKE2B 92679a03e3a45df587198ce70dfaebbc674c47229b14040c93353dd4c384636df7ff6591138c8aedf00fcee0f75edef3fc9f3257058f1d8fcdcade0c2be8c244 SHA512 e33fd7582bbe2d3ad4ed3405a92db98d7365d040df39f7e32d2f75b093e346ec88230813c607983398f9c310bc0925b61d9b438905e8177665db123e1b7d064c EBUILD clang-common-16.0.0_pre20221023-r1.ebuild 3432 BLAKE2B 92679a03e3a45df587198ce70dfaebbc674c47229b14040c93353dd4c384636df7ff6591138c8aedf00fcee0f75edef3fc9f3257058f1d8fcdcade0c2be8c244 SHA512 e33fd7582bbe2d3ad4ed3405a92db98d7365d040df39f7e32d2f75b093e346ec88230813c607983398f9c310bc0925b61d9b438905e8177665db123e1b7d064c diff --git a/sys-devel/clang-common/clang-common-15.0.4.ebuild b/sys-devel/clang-common/clang-common-15.0.4.ebuild new file mode 100644 index 000000000000..819076f87723 --- /dev/null +++ b/sys-devel/clang-common/clang-common-15.0.4.ebuild @@ -0,0 +1,129 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit bash-completion-r1 llvm.org + +DESCRIPTION="Common files shared between multiple slots of clang" +HOMEPAGE="https://llvm.org/" + +LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~ppc-macos ~x64-macos" +IUSE=" + default-compiler-rt default-libcxx default-lld llvm-libunwind + stricter +" + +PDEPEND=" + sys-devel/clang:* + default-compiler-rt? ( + sys-devel/clang-runtime[compiler-rt] + llvm-libunwind? ( sys-libs/llvm-libunwind ) + !llvm-libunwind? ( sys-libs/libunwind ) + ) + !default-compiler-rt? ( sys-devel/gcc ) + default-libcxx? ( >=sys-libs/libcxx-${PV} ) + !default-libcxx? ( sys-devel/gcc ) + default-lld? ( sys-devel/lld ) + !default-lld? ( sys-devel/binutils ) +" +IDEPEND=" + !default-compiler-rt? ( sys-devel/gcc-config ) + !default-libcxx? ( sys-devel/gcc-config ) +" + +LLVM_COMPONENTS=( clang/utils ) +llvm.org_set_globals + +pkg_pretend() { + [[ ${CLANG_IGNORE_DEFAULT_RUNTIMES} ]] && return + + local flag missing_flags=() + for flag in default-{compiler-rt,libcxx,lld}; do + if ! use "${flag}" && has_version "sys-devel/clang[${flag}]"; then + missing_flags+=( "${flag}" ) + fi + done + + if [[ ${missing_flags[@]} ]]; then + eerror "It seems that you have the following flags set on sys-devel/clang:" + eerror + eerror " ${missing_flags[*]}" + eerror + eerror "The default runtimes are now set via flags on sys-devel/clang-common." + eerror "The build is being aborted to prevent breakage. Please either set" + eerror "the respective flags on this ebuild, e.g.:" + eerror + eerror " sys-devel/clang-common ${missing_flags[*]}" + eerror + eerror "or build with CLANG_IGNORE_DEFAULT_RUNTIMES=1." + die "Mismatched defaults detected between sys-devel/clang and sys-devel/clang-common" + fi +} + +src_install() { + newbashcomp bash-autocomplete.sh clang + + insinto /etc/clang + newins - gentoo-runtimes.cfg <<-EOF + # This file is initially generated by sys-devel/clang-runtime. + # It is used to control the default runtimes using by clang. + + --rtlib=$(usex default-compiler-rt compiler-rt libgcc) + --unwindlib=$(usex default-compiler-rt libunwind libgcc) + --stdlib=$(usex default-libcxx libc++ libstdc++) + -fuse-ld=$(usex default-lld lld bfd) + EOF + + newins - gentoo-gcc-install.cfg <<-EOF + # This file is maintained by gcc-config. + # It is used to specify the selected GCC installation. + EOF + + newins - gentoo-common.cfg <<-EOF + # This file contains flags common to clang, clang++ and clang-cpp. + @gentoo-runtimes.cfg + @gentoo-gcc-install.cfg + EOF + + if use stricter; then + newins - gentoo-stricter.cfg <<-EOF + # This file increases the strictness of older clang versions + # to match the newest upstream version. + + # clang-16 defaults + -Werror=implicit-function-declaration + -Werror=implicit-int + -Werror=incompatible-function-pointer-types + + # constructs banned by C2x + -Werror=deprecated-non-prototype + EOF + + cat >> "${ED}/etc/clang/gentoo-common.cfg" <<-EOF || die + @gentoo-stricter.cfg + EOF + fi + + local tool + for tool in clang{,++,-cpp}; do + newins - "${tool}.cfg" <<-EOF + # This configuration file is used by ${tool} driver. + @gentoo-common.cfg + EOF + done +} + +pkg_preinst() { + if has_version -b sys-devel/gcc-config && has_version sys-devel/gcc + then + local gcc_path=$(gcc-config --get-lib-path 2>/dev/null) + if [[ -n ${gcc_path} ]]; then + cat >> "${ED}/etc/clang/gentoo-gcc-install.cfg" <<-EOF + --gcc-install-dir="${gcc_path%%:*}" + EOF + fi + fi +} |