From 1603847507a63218a29aada46e43f133d16d07eb Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 10 Oct 2022 01:33:06 +0100 Subject: gentoo auto-resync : 10:10:2022 - 01:33:06 --- sys-devel/Manifest.gz | Bin 10477 -> 10476 bytes sys-devel/clang-common/Manifest | 10 +- .../clang-common/clang-common-15.0.2-r1.ebuild | 126 +++++++++++++++++++++ .../clang-common/clang-common-15.0.2.9999.ebuild | 34 +++++- sys-devel/clang-common/clang-common-15.0.2.ebuild | 98 ---------------- .../clang-common/clang-common-16.0.0.9999.ebuild | 34 +++++- .../clang-common-16.0.0_pre20221006-r1.ebuild | 125 ++++++++++++++++++++ .../clang-common-16.0.0_pre20221006.ebuild | 97 ---------------- sys-devel/clang-common/metadata.xml | 1 + sys-devel/gcc/Manifest | 4 + sys-devel/gcc/gcc-12.2.1_p20221008.ebuild | 52 +++++++++ sys-devel/gcc/gcc-13.0.0_pre20221009.ebuild | 53 +++++++++ 12 files changed, 428 insertions(+), 206 deletions(-) create mode 100644 sys-devel/clang-common/clang-common-15.0.2-r1.ebuild delete mode 100644 sys-devel/clang-common/clang-common-15.0.2.ebuild create mode 100644 sys-devel/clang-common/clang-common-16.0.0_pre20221006-r1.ebuild delete mode 100644 sys-devel/clang-common/clang-common-16.0.0_pre20221006.ebuild create mode 100644 sys-devel/gcc/gcc-12.2.1_p20221008.ebuild create mode 100644 sys-devel/gcc/gcc-13.0.0_pre20221009.ebuild (limited to 'sys-devel') diff --git a/sys-devel/Manifest.gz b/sys-devel/Manifest.gz index ec86cbf9fdd1..b13471e2b9f0 100644 Binary files a/sys-devel/Manifest.gz and b/sys-devel/Manifest.gz differ diff --git a/sys-devel/clang-common/Manifest b/sys-devel/clang-common/Manifest index e8a6e4f03525..4be14341998e 100644 --- a/sys-devel/clang-common/Manifest +++ b/sys-devel/clang-common/Manifest @@ -6,8 +6,8 @@ DIST llvm-project-5a0722e0469894564dd9b0ee1d4f8c291d09c776.tar.gz 169164627 BLAK 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.2.9999.ebuild 2746 BLAKE2B 48c1824fe7fdd3e4b7202d8cc67a80c234faeba426aaff866ed00fbe4ce2dde47253c60837f8c309bd101d2b08a705cfd9f6502536a3440ed9f0ca44deee42a7 SHA512 b0b988aa03528a6b922a4e93b536128401470bc8313d32e3ac2816ae1f97318a00bd456c4e32cdcb14bd061dcd727ce48b94b371ff6732fe27a436c8e8087b7f -EBUILD clang-common-15.0.2.ebuild 2689 BLAKE2B 1f692e2ca7d17313770112b70a28ee5c01379e466fe34588d6ea8a2a98f41a72befb08bccec9dd394ac20c1f70123e5299c40d195466fde6ca90cb781c2333e3 SHA512 6aa91f9e587fb1c60313ff44f0ab1ef57df607a8c3bad675a7180261002b166e2c6b65e2dd59d0e721b22a2f2fcbe6d9c4b42185956abc33ba4ea7018b7da5d4 -EBUILD clang-common-16.0.0.9999.ebuild 2746 BLAKE2B 48c1824fe7fdd3e4b7202d8cc67a80c234faeba426aaff866ed00fbe4ce2dde47253c60837f8c309bd101d2b08a705cfd9f6502536a3440ed9f0ca44deee42a7 SHA512 b0b988aa03528a6b922a4e93b536128401470bc8313d32e3ac2816ae1f97318a00bd456c4e32cdcb14bd061dcd727ce48b94b371ff6732fe27a436c8e8087b7f -EBUILD clang-common-16.0.0_pre20221006.ebuild 2746 BLAKE2B 48c1824fe7fdd3e4b7202d8cc67a80c234faeba426aaff866ed00fbe4ce2dde47253c60837f8c309bd101d2b08a705cfd9f6502536a3440ed9f0ca44deee42a7 SHA512 b0b988aa03528a6b922a4e93b536128401470bc8313d32e3ac2816ae1f97318a00bd456c4e32cdcb14bd061dcd727ce48b94b371ff6732fe27a436c8e8087b7f -MISC metadata.xml 608 BLAKE2B 5a93acbaeaf3144187e9814fd17e1e45d9e83ebd3930b0838b622b4d94c450d87529e1302cb228af5482b689c01e1c0eb066a82100ed96c9f324fc494f1f1905 SHA512 7f39ee901fb543ef1904a70108fd40d5ed0e719874327f8875eb6c7abb25c65026d9f691cf3d71f608ed2f1d9a5858b927ed2cd7732b419f61a22fd3d1c80908 +EBUILD clang-common-15.0.2-r1.ebuild 3333 BLAKE2B 1b713786aa4aec0c1e46633f11758490f51d61e6f92cc1d38b6dd2e38980d4555f4288cb0d583895e3c4374ff588a8b619c22a6893b8a73538a89e734eda3846 SHA512 112b953845b475c018b1250a3ca59e84f3fa6f665aebb31bda1fcbefdf7bda70d642f5980c982516933d1db73f92c30299f3e613044f7ae13df1202b5c44b5d2 +EBUILD clang-common-15.0.2.9999.ebuild 3390 BLAKE2B ba162ba51527b33a0b3a7a2c6bcd4385e41e07e0d19338895162f3b3d739f466f3d58b73bbd55e72eccbcac52b651bae1dd15d4062e468b6a9ecabd9414291c3 SHA512 dfa5dbff52cf4b79eff8afd504691a5a77fcd11529b50c1ac9b613d2854c2dd2161a95cd155d45142e4e459802e6289d3452f19572f0e2e68e89f0809ab76ef7 +EBUILD clang-common-16.0.0.9999.ebuild 3390 BLAKE2B ba162ba51527b33a0b3a7a2c6bcd4385e41e07e0d19338895162f3b3d739f466f3d58b73bbd55e72eccbcac52b651bae1dd15d4062e468b6a9ecabd9414291c3 SHA512 dfa5dbff52cf4b79eff8afd504691a5a77fcd11529b50c1ac9b613d2854c2dd2161a95cd155d45142e4e459802e6289d3452f19572f0e2e68e89f0809ab76ef7 +EBUILD clang-common-16.0.0_pre20221006-r1.ebuild 3390 BLAKE2B ba162ba51527b33a0b3a7a2c6bcd4385e41e07e0d19338895162f3b3d739f466f3d58b73bbd55e72eccbcac52b651bae1dd15d4062e468b6a9ecabd9414291c3 SHA512 dfa5dbff52cf4b79eff8afd504691a5a77fcd11529b50c1ac9b613d2854c2dd2161a95cd155d45142e4e459802e6289d3452f19572f0e2e68e89f0809ab76ef7 +MISC metadata.xml 735 BLAKE2B 12ea133df3d7eb9367a65e572ef91893e654d5b77caa27c66e4b5b41ba90ebc5e619eb78dfff2a67183d2c1cbfcf35fa903b2bb75604ce153d5cedfce5346e3c SHA512 8ed6b12d4f2aa1985897a8d81ce898dbc0d14ac222f3d0f259cbe80fbb8b2349dff7677627daeaf39a422f290200da4fac6348abc81c9e35da0ca73a11cfdd83 diff --git a/sys-devel/clang-common/clang-common-15.0.2-r1.ebuild b/sys-devel/clang-common/clang-common-15.0.2-r1.ebuild new file mode 100644 index 000000000000..a29bbbc806c9 --- /dev/null +++ b/sys-devel/clang-common/clang-common-15.0.2-r1.ebuild @@ -0,0 +1,126 @@ +# 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-libcxx? ( >=sys-libs/libcxx-${PV} ) + default-lld? ( sys-devel/lld ) +" + +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 +} + +usec() { + usex "default-${1}" "" "# " +} + +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. + + $(usec compiler-rt)-rtlib=compiler-rt + $(usec compiler-rt)-unwindlib=libunwind + $(usec libcxx)-stdlib=libc++ + $(usec lld)-fuse-ld=lld + 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=strict-prototypes + -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() { + # TODO: move this to gcc-config and call it here? + + 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 +} diff --git a/sys-devel/clang-common/clang-common-15.0.2.9999.ebuild b/sys-devel/clang-common/clang-common-15.0.2.9999.ebuild index e318815568c5..993dddec4bf9 100644 --- a/sys-devel/clang-common/clang-common-15.0.2.9999.ebuild +++ b/sys-devel/clang-common/clang-common-15.0.2.9999.ebuild @@ -11,7 +11,10 @@ HOMEPAGE="https://llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" SLOT="0" KEYWORDS="" -IUSE="default-compiler-rt default-libcxx default-lld llvm-libunwind" +IUSE=" + default-compiler-rt default-libcxx default-lld llvm-libunwind + stricter +" PDEPEND=" sys-devel/clang:* @@ -75,12 +78,37 @@ src_install() { # 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=strict-prototypes + -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-runtimes.cfg - @gentoo-gcc-install.cfg + @gentoo-common.cfg EOF done } diff --git a/sys-devel/clang-common/clang-common-15.0.2.ebuild b/sys-devel/clang-common/clang-common-15.0.2.ebuild deleted file mode 100644 index 71e8aa15b6d8..000000000000 --- a/sys-devel/clang-common/clang-common-15.0.2.ebuild +++ /dev/null @@ -1,98 +0,0 @@ -# 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" - -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-libcxx? ( >=sys-libs/libcxx-${PV} ) - default-lld? ( sys-devel/lld ) -" - -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 -} - -usec() { - usex "default-${1}" "" "# " -} - -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. - - $(usec compiler-rt)-rtlib=compiler-rt - $(usec compiler-rt)-unwindlib=libunwind - $(usec libcxx)-stdlib=libc++ - $(usec lld)-fuse-ld=lld - EOF - - newins - gentoo-gcc-install.cfg <<-EOF - # This file is maintained by gcc-config. - # It is used to specify the selected GCC installation. - EOF - - local tool - for tool in clang{,++,-cpp}; do - newins - "${tool}.cfg" <<-EOF - # This configuration file is used by ${tool} driver. - @gentoo-runtimes.cfg - @gentoo-gcc-install.cfg - EOF - done -} - -pkg_preinst() { - # TODO: move this to gcc-config and call it here? - - 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 -} diff --git a/sys-devel/clang-common/clang-common-16.0.0.9999.ebuild b/sys-devel/clang-common/clang-common-16.0.0.9999.ebuild index e318815568c5..993dddec4bf9 100644 --- a/sys-devel/clang-common/clang-common-16.0.0.9999.ebuild +++ b/sys-devel/clang-common/clang-common-16.0.0.9999.ebuild @@ -11,7 +11,10 @@ HOMEPAGE="https://llvm.org/" LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA" SLOT="0" KEYWORDS="" -IUSE="default-compiler-rt default-libcxx default-lld llvm-libunwind" +IUSE=" + default-compiler-rt default-libcxx default-lld llvm-libunwind + stricter +" PDEPEND=" sys-devel/clang:* @@ -75,12 +78,37 @@ src_install() { # 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=strict-prototypes + -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-runtimes.cfg - @gentoo-gcc-install.cfg + @gentoo-common.cfg EOF done } diff --git a/sys-devel/clang-common/clang-common-16.0.0_pre20221006-r1.ebuild b/sys-devel/clang-common/clang-common-16.0.0_pre20221006-r1.ebuild new file mode 100644 index 000000000000..993dddec4bf9 --- /dev/null +++ b/sys-devel/clang-common/clang-common-16.0.0_pre20221006-r1.ebuild @@ -0,0 +1,125 @@ +# 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="" +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 ) +" + +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=strict-prototypes + -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() { + # TODO: move this to gcc-config and call it here? + + 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 +} diff --git a/sys-devel/clang-common/clang-common-16.0.0_pre20221006.ebuild b/sys-devel/clang-common/clang-common-16.0.0_pre20221006.ebuild deleted file mode 100644 index e318815568c5..000000000000 --- a/sys-devel/clang-common/clang-common-16.0.0_pre20221006.ebuild +++ /dev/null @@ -1,97 +0,0 @@ -# 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="" -IUSE="default-compiler-rt default-libcxx default-lld llvm-libunwind" - -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 ) -" - -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 - - local tool - for tool in clang{,++,-cpp}; do - newins - "${tool}.cfg" <<-EOF - # This configuration file is used by ${tool} driver. - @gentoo-runtimes.cfg - @gentoo-gcc-install.cfg - EOF - done -} - -pkg_preinst() { - # TODO: move this to gcc-config and call it here? - - 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 -} diff --git a/sys-devel/clang-common/metadata.xml b/sys-devel/clang-common/metadata.xml index 31c80b4fb555..7ea033c083c9 100644 --- a/sys-devel/clang-common/metadata.xml +++ b/sys-devel/clang-common/metadata.xml @@ -11,5 +11,6 @@ Use compiler-rt + libunwind instead of libgcc as the default rtlib for clang Use libc++ instead of libstdc++ as the default stdlib for clang Use lld as the default linker for clang + Default to stricter behavior known from newer clang versions, turning more warnings into errors diff --git a/sys-devel/gcc/Manifest b/sys-devel/gcc/Manifest index becbe7eb80ef..6265773e6ba6 100644 --- a/sys-devel/gcc/Manifest +++ b/sys-devel/gcc/Manifest @@ -19,11 +19,13 @@ DIST gcc-11.4.0-patches-2.tar.xz 14224 BLAKE2B d3030c19a7bd8bd082fd39b35c3e80883 DIST gcc-12-20220917.tar.xz 79137544 BLAKE2B ddd538b339e57fce4d8ef47e18077a27b35994bb571b5ac8670fc2f833751f87557a05c3f82fc41e3c0c3ac47ac231d8392353835295874cfb24e02aa72a8662 SHA512 15071044595fcf22deca3fd4569309f7fa01e2e8d54b1c518c480ff134f1222a652b0137be98e03b495648eed3c21992d906e9c9d12f265a6467581adc2dc1ee DIST gcc-12-20220924.tar.xz 79135908 BLAKE2B 41cbc1d232bfb07a2a84b6fe4bc692f21378661197447c39ef9f4d56015410c8416e3a01da98dff7329fc3392331dc5b6e404fa09a0df1e35598b9bfb41cb814 SHA512 ba4d9e73d108088da26fbefe18d9b245b76771ffe752c2b4b31bdf38a2d0b638fbc115c377526c27311d4d7ffd4e0d236a5af5016bd364ccaa11a4989d1401e8 DIST gcc-12-20221001.tar.xz 79132788 BLAKE2B e3ab41f7f31a202380063679f9b233c02ac3ea860a1ef43df943e8ad50c261a72a846486a5f1386a125c379948316eeb4f7cec75998bec7e463b12453d7df0eb SHA512 c838aa1f1ab2df3d0d5e738674b4b5e1dc08118ea7d2c21999e186d3af52e82939acf4c2d752cc7a4b49e710263bdfe8b1020669cf80d9a477a3be283d40f359 +DIST gcc-12-20221008.tar.xz 79145884 BLAKE2B ff3d684d887e282c79fe95952a449ed5770d4bd74077553baf31c34dbd77177e680b19ac741c04aab26ac2c9bb2b89924f51f63e2f22b440decf2c65274a7640 SHA512 a35a6207e7f4375abca3ae57376c98b082846a88e83522c322d713e759367ceb2b3ad68488bed6f1645e47a106b0bbb2efbca6cb14b077672289acb4373e616f DIST gcc-12.2.0-musl-patches-1.tar.xz 3844 BLAKE2B 004432806696f7d0a32366270ac45695e858abee73a255e44dc6e0a225339e4cad40aab0d51dfe9a55d5aa4b4001f5726064bb2eea3212a0874b2d27e229abd7 SHA512 c354edcd641a9dfaf902a0ff4c44c75065d0cf1c36bbf6c3c35c2e23bff22b8f70bcf4458a5a0ef86371e9f2fafca8a54ca822e35820ff442c9458a2819c3606 DIST gcc-12.2.0-patches-1.tar.xz 12864 BLAKE2B a5ae0a85dfc1b6f0bd968f0d5262ebed14ec9cdb3249e3a4c571578c54eda0e53708ee7fe8e03e506366c7f3cf7926eced9b390d9dee948c1249298c0fabd9fb SHA512 f3d793b89a2a0385d596162fb0c653d4acdf21ae418cb792c1786a01fde0391bd0719715dbf07d53636f127168f5cd99108a1dc11cf6cea889b7d82385bcc258 DIST gcc-12.2.0.tar.xz 84645292 BLAKE2B 715574af9ad678f9dc8cfd19c866bf910c7edfd479e7e9681337feaa9b54e5d304ddb85483816b8d89754d502405823ae2eff0d1e444538763f40be8e428d8da SHA512 e9e857bd81bf7a370307d6848c81b2f5403db8c7b5207f54bce3f3faac3bde63445684092c2bc1a2427cddb6f7746496d9fbbef05fbbd77f2810b2998f1f9173 DIST gcc-13-20220918.tar.xz 79822640 BLAKE2B 6c35953290e001352aac3a649de7a6dc696bcad85e5b2905bbb6863fd280ce78cfb5663a95e64a1006c869be0e7892adea85e2b1c9f799c3412f634b23f069d0 SHA512 e1b661a483d71f3f8d0dc66bbc2ce6a00bf3b3bb3142b27b07c01d46c10717ad7a95b79d44fa78e3821614032a5ab9194ff444ff280dd3304d4b030373436b6b DIST gcc-13-20221002.tar.xz 79899100 BLAKE2B e7bde088c380dacd08489541ead97a877a3b7cf514bb8c2e61144a5a953ff1da26342f8d52021983438a06f483f9cd6ac0ea966611801d4e57d3723ea13a09d4 SHA512 b47325dd065b579c71b0c2c57282c8d244894c4edd51a39e8ff97898e0a8dc80e920a9ada5ce13204f98c90c61e9015a4ecdae1c04a8417e20d1df93019f147a +DIST gcc-13-20221009.tar.xz 79944512 BLAKE2B 436a290bf7cf99eddb636f2f73cf31d5b2f7626007215f83ee72ce995bc24207b627aec2752fd641ffc14ac6e1c809029a08c566cde6a79503e2041a54c9e914 SHA512 c2bd85dd1b9a2a8e04609614ff6e8fc959f1ce0b98d4468759d806a44b3ca8fababed722e672588cc87dc18d199891f598dcd36bfe69d7d074b93fa74676b6f4 DIST gcc-13.0.0-patches-1.tar.xz 11064 BLAKE2B 82a7ad193dac00475931840bcee82ef7a51718a74af224b03a41f8349e34c2a64a3eb29985b4e2bffde958c58782242eccaedaa54d950e8d51d8bb6f45868e0e SHA512 e04b510f529dd3187a08ae9cb9a894a3d3d30af81f13c43cc082fda7d26c44a3bf19d36ec02024b2ade8b8c193e9730246abeadee603c41b5873c5b785709921 DIST gcc-8.5.0-patches-2.tar.bz2 16921 BLAKE2B 619a47f74edf05fa01c9de59d0ff7abb027a01cf0bdec91ac41046166192f4eae561684136c4a6a5e077f64754bb5b0710905129f31b0def21d88f92e6bba7fb SHA512 b6095d4570895e2c4dd58fed5756194aea27391b813e5e2de42b2749cb318c4bea2087eb0ff92c70e7f98ae4482c49d476db57be83d7beb19fd462aa61714ab2 DIST gcc-8.5.0.tar.xz 63841008 BLAKE2B aa81a1a730fd7371360f6abed6ba78b5843fd18c58d5de5687acc320741b9e430e85df3535a1ef7a26051409be8d2f0945f503e5968480d919103123a99d4b12 SHA512 92f599680e6b7fbce88bcdda810f468777d541e5fddfbb287f7977d51093de2a5178bd0e6a08dfe37090ea10a0508a43ccd00220041abbbec33f1179bfc174d8 @@ -43,9 +45,11 @@ EBUILD gcc-12.2.0.ebuild 1434 BLAKE2B a02496eb0178f8f3e38487b233eea12467e9e79976 EBUILD gcc-12.2.1_p20220917.ebuild 1437 BLAKE2B c0f35f820ac6b8361761cd90944b7a860c6bff7994497fb96e6be2178f9c888b8927bd3a908af0f0521c06d98d3c84e46c988d70e6a7e454835a978cd0b4b34b SHA512 48ee0cee1a29d0b41f78dd73ce0ebedb5eae4befe60f456f5a80128e878e61f1e6c173110b21ff3de9770f5e05c144f72bacb273532cf6ce62ee221f5281db8a EBUILD gcc-12.2.1_p20220924.ebuild 1437 BLAKE2B c0f35f820ac6b8361761cd90944b7a860c6bff7994497fb96e6be2178f9c888b8927bd3a908af0f0521c06d98d3c84e46c988d70e6a7e454835a978cd0b4b34b SHA512 48ee0cee1a29d0b41f78dd73ce0ebedb5eae4befe60f456f5a80128e878e61f1e6c173110b21ff3de9770f5e05c144f72bacb273532cf6ce62ee221f5281db8a EBUILD gcc-12.2.1_p20221001.ebuild 1437 BLAKE2B c0f35f820ac6b8361761cd90944b7a860c6bff7994497fb96e6be2178f9c888b8927bd3a908af0f0521c06d98d3c84e46c988d70e6a7e454835a978cd0b4b34b SHA512 48ee0cee1a29d0b41f78dd73ce0ebedb5eae4befe60f456f5a80128e878e61f1e6c173110b21ff3de9770f5e05c144f72bacb273532cf6ce62ee221f5281db8a +EBUILD gcc-12.2.1_p20221008.ebuild 1437 BLAKE2B c0f35f820ac6b8361761cd90944b7a860c6bff7994497fb96e6be2178f9c888b8927bd3a908af0f0521c06d98d3c84e46c988d70e6a7e454835a978cd0b4b34b SHA512 48ee0cee1a29d0b41f78dd73ce0ebedb5eae4befe60f456f5a80128e878e61f1e6c173110b21ff3de9770f5e05c144f72bacb273532cf6ce62ee221f5281db8a EBUILD gcc-12.3.9999.ebuild 1545 BLAKE2B 78fdc4a7b20d22bba137cba00e49d2249c5616bf1c4cf619162da1d98c750fb3da71fbb1cd4e136624cc4e0a112547e6c4c29992aa58ab12507917c7d728831a SHA512 f3562696a79035e64b8e79cee720fe24c7041bf922d79e5cff1ae864a533997995465d0871bfc4f87f6d5a66e7f8ac02c490792554a0628ae30d96a061ef9279 EBUILD gcc-13.0.0_pre20220918.ebuild 1288 BLAKE2B a2281da17b96d44850dccf6a6420d66cf163a8f53ea755f1414911fcffd71b504273f3010b6a6c3cb796bf763d8da5b8fa64efb7e107b3e5a8bb1ab767704d05 SHA512 8108432caffabab640a472344adf5660a005436790d31f287f1e72109dd69b5831ea0f3e956a822439862da6a24b78daa7c4253fe51ce9b47457de3b83d80b5d EBUILD gcc-13.0.0_pre20221002.ebuild 1288 BLAKE2B a2281da17b96d44850dccf6a6420d66cf163a8f53ea755f1414911fcffd71b504273f3010b6a6c3cb796bf763d8da5b8fa64efb7e107b3e5a8bb1ab767704d05 SHA512 8108432caffabab640a472344adf5660a005436790d31f287f1e72109dd69b5831ea0f3e956a822439862da6a24b78daa7c4253fe51ce9b47457de3b83d80b5d +EBUILD gcc-13.0.0_pre20221009.ebuild 1288 BLAKE2B a2281da17b96d44850dccf6a6420d66cf163a8f53ea755f1414911fcffd71b504273f3010b6a6c3cb796bf763d8da5b8fa64efb7e107b3e5a8bb1ab767704d05 SHA512 8108432caffabab640a472344adf5660a005436790d31f287f1e72109dd69b5831ea0f3e956a822439862da6a24b78daa7c4253fe51ce9b47457de3b83d80b5d EBUILD gcc-13.0.9999.ebuild 1252 BLAKE2B dbc0cdcbb6bae2177185c41fa014a0c98e05a8101f33e12975e2af951e25539117b9279573770b5d17261032b0c51d80864140417a13b152aa34739c28c0f0c3 SHA512 96e940c83f9e58b7b929c5293ca44582c266d3e10615f6aded5cd0b11cb1d46306382fea04227040a7d7cbfdc0f042e3b1c89a0e617193bbfadea50a4732e9a2 EBUILD gcc-8.5.0-r1.ebuild 473 BLAKE2B 40d3b651d0aed62ceb1df973f1f7e2b6ce419df22da63e49d335fcd0bf7b349d1e7be40dc16e80fe143222d48ac6139d35bf47558d83c30aab4b25dba6fcf6cb SHA512 b88761a3495a1eab0de5321c9230c77cd621ae545d3be49a13273cfcd8e94cc21dbb062bfdebb64dc5bfe1ddd600ee8fb60df6fd7709a7be90915b7e99a8db29 EBUILD gcc-9.5.0.ebuild 844 BLAKE2B 7bee440ddb624d5489ebaa9be899c530bdf7d9563453a9abf45e60d1f3ed66a78535cb9227e66e93524071fbca447786e2133ea316b5b2b55366e2599c587be6 SHA512 4b578a481eb06ff5b445bbd81cf18d4d63ec2d65230e33f95377f270b391bde02c2083a1b46b43838bd115be7d75c3957258f72fb5e7d89ba79185d08195b9ec diff --git a/sys-devel/gcc/gcc-12.2.1_p20221008.ebuild b/sys-devel/gcc/gcc-12.2.1_p20221008.ebuild new file mode 100644 index 000000000000..97d104a8472d --- /dev/null +++ b/sys-devel/gcc/gcc-12.2.1_p20221008.ebuild @@ -0,0 +1,52 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="sam" +PATCH_VER="1" +PATCH_GCC_VER="12.2.0" +MUSL_VER="1" +MUSL_GCC_VER="12.2.0" + +if [[ $(ver_cut 3) == 9999 ]] ; then + MY_PV_2=$(ver_cut 2) + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + else + MY_PV_2=$(($(ver_cut 2) - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.$(($(ver_cut 3) - 9998)) +elif [[ -n ${TOOLCHAIN_GCC_RC} ]] ; then + # Cheesy hack for RCs + MY_PV=$(ver_cut 1).$((($(ver_cut 2) + 1))).$((($(ver_cut 3) - 1)))-RC-$(ver_cut 5) + MY_P=${PN}-${MY_PV} + GCC_TARBALL_SRC_URI="https://gcc.gnu.org/pub/gcc/snapshots/${MY_PV}/${MY_P}.tar.xz" + TOOLCHAIN_SET_S=no + S="${WORKDIR}"/${MY_P} +fi + +inherit toolchain + +# Needs to be after inherit (for now?), bug #830908 +EGIT_BRANCH=releases/gcc-$(ver_cut 1) + +# Don't keyword live ebuilds +#if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then +# KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +#fi + +# Technically only if USE=hardened *too* right now, but no point in complicating it further. +# If GCC is enabling CET by default, we need glibc to be built with support for it. +# bug #830454 +RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" +DEPEND="${RDEPEND}" +BDEPEND=">=${CATEGORY}/binutils-2.30[cet(-)?]" + +src_prepare() { + toolchain_src_prepare + + eapply_user +} diff --git a/sys-devel/gcc/gcc-13.0.0_pre20221009.ebuild b/sys-devel/gcc/gcc-13.0.0_pre20221009.ebuild new file mode 100644 index 000000000000..641ab05e8153 --- /dev/null +++ b/sys-devel/gcc/gcc-13.0.0_pre20221009.ebuild @@ -0,0 +1,53 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +TOOLCHAIN_PATCH_DEV="xen0n" +PATCH_VER="1" +PATCH_GCC_VER="13.0.0" +MUSL_GCC_VER="13.0.0" + +if [[ $(ver_cut 3) == 9999 ]] ; then + MY_PV_2=$(ver_cut 2) + MY_PV_3=$(($(ver_cut 3) - 9998)) + if [[ ${MY_PV_2} == 0 ]] ; then + MY_PV_2=0 + MY_PV_3=0 + else + MY_PV_2=$(($(ver_cut 2) - 1)) + fi + + # e.g. 12.2.9999 -> 12.1.1 + TOOLCHAIN_GCC_PV=$(ver_cut 1).${MY_PV_2}.${MY_PV_3} +fi + +inherit toolchain +# Needs to be after inherit (for now?), bug #830908 +EGIT_BRANCH=master + +# Don't keyword live ebuilds +if ! tc_is_live && [[ -z ${TOOLCHAIN_USE_GIT_PATCHES} ]] ; then + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + KEYWORDS="~loong" +fi + +# Technically only if USE=hardened *too* right now, but no point in complicating it further. +# If GCC is enabling CET by default, we need glibc to be built with support for it. +# bug #830454 +RDEPEND="elibc_glibc? ( sys-libs/glibc[cet(-)?] )" +DEPEND="${RDEPEND}" +BDEPEND="${CATEGORY}/binutils[cet(-)?]" + +src_prepare() { + local p upstreamed_patches=( + # add them here + ) + for p in "${upstreamed_patches[@]}"; do + rm -v "${WORKDIR}/patch/${p}" || die + done + + toolchain_src_prepare + + eapply_user +} -- cgit v1.2.3