summaryrefslogtreecommitdiff
path: root/sys-devel/clang
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-12-23 20:48:53 +0000
committerV3n3RiX <venerix@redcorelinux.org>2017-12-23 20:48:53 +0000
commit51536d2fe4697ba9114d611178bb9e20d3d5b729 (patch)
tree30b91d98e65985a575940ed49e756697c1f049c2 /sys-devel/clang
parent4ab6db5717ef23f29320d4c6fb9ebdb8dec1f193 (diff)
gentoo resync : 23.12.2017
Diffstat (limited to 'sys-devel/clang')
-rw-r--r--sys-devel/clang/Manifest3
-rw-r--r--sys-devel/clang/clang-3.7.1-r100.ebuild2
-rw-r--r--sys-devel/clang/clang-5.0.9999.ebuild289
3 files changed, 2 insertions, 292 deletions
diff --git a/sys-devel/clang/Manifest b/sys-devel/clang/Manifest
index b9abe57055a1..7157568c704b 100644
--- a/sys-devel/clang/Manifest
+++ b/sys-devel/clang/Manifest
@@ -18,11 +18,10 @@ DIST llvm-manpages-5.0.0.tar.bz2 94240 BLAKE2B 1657edefa2e839f401b7c30ba1c0cfde4
EBUILD clang-3.4.2-r100.ebuild 972 BLAKE2B b11888e71750e7de7363d0e74a43999b31baf54dd43438c98d037b5b49d4043a74fdda70dd2b0eb405451c2579ee0285404b28792cc525c1c26e81a07bfd2dc9 SHA512 b42ec4379b4a70eb638ae6a6d45a287cd83f5ac339ac25ade2c6c77bd8d05c208d389d6f09e4cfe567e67d3e616adfbaffa1b1a9a7f35f5ecb7a0e7ccdc720fc
EBUILD clang-3.5.2-r100.ebuild 972 BLAKE2B 0f17918969ee1034e1febc34afe95a29dddcf6056caa53920ade66a887b57939933f31b022fb68fb29bf8a5e387f659f6e3b618594cda4cd50f913ec14d0f0de SHA512 1e9a9f67ecd1cea111599376e676c665c6c1e731514a06065751502d221f8c6d7033dc23376f21850a63d036a33fbf241845a9127beca6ee8549348866cdce3e
EBUILD clang-3.6.2-r100.ebuild 972 BLAKE2B 865d1b2ca82dc3e4965f676adee77bcebb285fd3071caa37a399795426f541cbfb4a380e615673a2a1ca6c2832becd21e6252b678f2c1047a0605fdb5db2845c SHA512 604f7551a0081e7de09875f54a64502e8d2e97341bd44e4d2ae35ecd2392b22b7aea5fdf4923cf196cde1de5711f05868943d3f802d975118426ee43d0877f6f
-EBUILD clang-3.7.1-r100.ebuild 1136 BLAKE2B 0eb8dcaf4b936a60333e020762502efbc0cbdea99eecb36394dda87967903fdad2b8452c2198aecd15165e16941b78a03b48ee625837087dc1bf5c9268a64568 SHA512 6cf313c813f93b93ea76d53006684912feff171d0738f6d202d996052f9eae731583ed1616fc21d8d493292028577c7e1bbeabc3aee21650653638cdba7e541d
+EBUILD clang-3.7.1-r100.ebuild 1121 BLAKE2B 9cf6e15e5a2fa9d400731747105f65c8ef14d20e5a982f02b53a13ad1f269b86c298603e6625340670fffd74e434c92df7fb22cfb4cd7af4d75501a0520b5106 SHA512 5280504ce38eba8da79cf1c31b21bcbd07ad9ecb3db59a7054f829ed43d48744d16760cbaab9ef32f01345a9e7f54f8a63091dda3687115654a110f5a0e227bf
EBUILD clang-3.9.1-r100.ebuild 1534 BLAKE2B b269b09553ec5559ad90ffdfcaa20604c10fbe394651b7a9e037a9aaac878a6ef6cc2702a1cc6123cffa0ece705b851e908ac275f7fa854d099ec2ab8bafc9ed SHA512 84a3c016f9db31c6cbcee7620330b76af97702be3e92bd0db6e58883ccc054a792003a374cb5bf9d69b8f7c89165a2853ba495d58cd02d98524cf8025e99bcf0
EBUILD clang-4.0.1.ebuild 9440 BLAKE2B 9ccc82a8f57e8c2e7a7ad1b55b0b6e8f88ad4da2b4d71bbdfaf5312e95d35abf08b31ee38114c7f31c435881ba06d5793bcff287c6dcd11e52e78e9ac90f1d9a SHA512 3b1ead95ef28a4f126e3111297c5c8682b34d74caf369db0d52ce92b334a5025f7894103b1bd4aa820e90368c3a8796139e663da8dc6e4c01683b6f4a84f9bd1
EBUILD clang-5.0.0.ebuild 9394 BLAKE2B 70854a48bede330b76467f83d3adf52d05ffb629982ecdb38cff9585d9df9d4378f907191dc672ab62be669e77c203702c7a97e67a9082e41d55a021b60c4029 SHA512 99f117c00837dbf364e3070b4c51bccbfa3646f07a51c89494a79162b36901de3119a332af757cd1c1e15f37b9f64fe19e9d274a8ecacf5fcc8816d0c9e1a88b
EBUILD clang-5.0.1.ebuild 9447 BLAKE2B aee4c4ea80e46e1972e343360fb348b83fb04b5d29a822e0d933465975320be915e84640d55e8af77a4f9acf600302d0d00ac10b30b7830cf1c6d6c29b91bf22 SHA512 4b03eaa47f4f56a47c7786044eb1ec86ff4b2590207b28f0b7900c92ee2c78f38216dd31a0d7393341c1496181003ecfb3a6b2cfe6ed6f757788ac2330d652d5
-EBUILD clang-5.0.9999.ebuild 9062 BLAKE2B 4825e0b71a07855a7bb347096a13bbadc2fcd6f1f349cc9859a36e455a9a791021afcfe25d1955f03edd80abbfcc9f9a6bd22ca676734386dd32975d9faff421 SHA512 a757603cb42636ee968a17315481ab119c384ff86d22d513060a7a13bde0d275c7828f60074f33cbe5f0031becdf73c042b454945374535cb65a3270b1bf70b1
EBUILD clang-9999.ebuild 8854 BLAKE2B 1f9a2120a08a299ff32282ac034b840b7c2bf12957d3418cd59304ac9d0b911dcad6fdfda1ea3f5c21f3b274793667c1cd6c0cdb797b9647f4e251cd1f1e0db2 SHA512 558f8fbe97e6b29b6db18e36799561fea600cbbb89a95423eba92d527a6028fe727408a51d24b4711e5a9154b9547703d0e341e058640a431b1806e9ebb2e9f4
MISC metadata.xml 1455 BLAKE2B 9dd88bba7158dfdc83bfc48fa4134e1f5a3357ab778cad400a51e348bbb4b44d2740ec417fdc888df0b4fd820441649e92b7adffdd4db558a2f4c3f4830a83a1 SHA512 369a87bd551e483e81ff56f5167177b1bcfedf9bc97f501ef2b07bfdfea3a25532f5e86af062568b3b22a53fe07318fd93dc55bd83b453dd10a0f4d3e88cb932
diff --git a/sys-devel/clang/clang-3.7.1-r100.ebuild b/sys-devel/clang/clang-3.7.1-r100.ebuild
index d231d61133ab..0fa158a374a5 100644
--- a/sys-devel/clang/clang-3.7.1-r100.ebuild
+++ b/sys-devel/clang/clang-3.7.1-r100.ebuild
@@ -11,7 +11,7 @@ SRC_URI=""
LICENSE="UoI-NCSA"
SLOT="0/3.7"
-KEYWORDS="amd64 arm ~arm64 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
+KEYWORDS="amd64 ~arm64 x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos"
IUSE="debug multitarget python +static-analyzer"
RDEPEND="~sys-devel/llvm-${PV}[clang(-),debug=,multitarget?,python?,static-analyzer?,${MULTILIB_USEDEP}]"
diff --git a/sys-devel/clang/clang-5.0.9999.ebuild b/sys-devel/clang/clang-5.0.9999.ebuild
deleted file mode 100644
index 458f5359014e..000000000000
--- a/sys-devel/clang/clang-5.0.9999.ebuild
+++ /dev/null
@@ -1,289 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-: ${CMAKE_MAKEFILE_GENERATOR:=ninja}
-# (needed due to CMAKE_BUILD_TYPE != Gentoo)
-CMAKE_MIN_VERSION=3.7.0-r1
-PYTHON_COMPAT=( python2_7 )
-
-inherit cmake-utils eapi7-ver flag-o-matic git-r3 llvm \
- multilib-minimal pax-utils python-single-r1 toolchain-funcs
-
-DESCRIPTION="C language family frontend for LLVM"
-HOMEPAGE="https://llvm.org/"
-SRC_URI=""
-EGIT_REPO_URI="https://git.llvm.org/git/clang.git
- https://github.com/llvm-mirror/clang.git"
-EGIT_BRANCH="release_50"
-
-# Keep in sync with sys-devel/llvm
-ALL_LLVM_TARGETS=( AArch64 AMDGPU ARM BPF Hexagon Lanai Mips MSP430
- NVPTX PowerPC Sparc SystemZ X86 XCore )
-ALL_LLVM_TARGETS=( "${ALL_LLVM_TARGETS[@]/#/llvm_targets_}" )
-LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?}
-
-LICENSE="UoI-NCSA"
-SLOT="$(ver_cut 1)"
-KEYWORDS=""
-IUSE="debug default-compiler-rt default-libcxx doc +static-analyzer
- test xml z3 kernel_FreeBSD ${ALL_LLVM_TARGETS[*]}"
-RESTRICT="!test? ( test )"
-
-RDEPEND="
- ~sys-devel/llvm-${PV}:${SLOT}=[debug=,${LLVM_TARGET_USEDEPS// /,},${MULTILIB_USEDEP}]
- static-analyzer? (
- dev-lang/perl:*
- z3? ( sci-mathematics/z3:0= )
- )
- xml? ( dev-libs/libxml2:2=[${MULTILIB_USEDEP}] )
- ${PYTHON_DEPS}"
-# configparser-3.2 breaks the build (3.3 or none at all are fine)
-DEPEND="${RDEPEND}
- doc? ( dev-python/sphinx )
- xml? ( virtual/pkgconfig )
- !!<dev-python/configparser-3.3.0.2
- ${PYTHON_DEPS}"
-RDEPEND="${RDEPEND}
- !<sys-devel/llvm-4.0.0_rc:0
- !sys-devel/clang:0"
-PDEPEND="
- ~sys-devel/clang-runtime-${PV}
- default-compiler-rt? ( =sys-libs/compiler-rt-${PV%_*}* )
- default-libcxx? ( sys-libs/libcxx )"
-
-REQUIRED_USE="${PYTHON_REQUIRED_USE}
- || ( ${ALL_LLVM_TARGETS[*]} )"
-
-# We need extra level of indirection for CLANG_RESOURCE_DIR
-S=${WORKDIR}/x/y/${P}
-
-# least intrusive of all
-CMAKE_BUILD_TYPE=RelWithDebInfo
-
-PATCHES=(
- # fix finding compiler-rt libs
- "${FILESDIR}"/5.0.0/0001-Driver-Use-arch-type-to-find-compiler-rt-libraries-o.patch
-)
-
-# Multilib notes:
-# 1. ABI_* flags control ABIs libclang* is built for only.
-# 2. clang is always capable of compiling code for all ABIs for enabled
-# target. However, you will need appropriate crt* files (installed
-# e.g. by sys-devel/gcc and sys-libs/glibc).
-# 3. ${CHOST}-clang wrappers are always installed for all ABIs included
-# in the current profile (i.e. alike supported by sys-devel/gcc).
-#
-# Therefore: use sys-devel/clang[${MULTILIB_USEDEP}] only if you need
-# multilib clang* libraries (not runtime, not wrappers).
-
-pkg_setup() {
- LLVM_MAX_SLOT=${SLOT} llvm_pkg_setup
- python-single-r1_pkg_setup
-}
-
-src_unpack() {
- # create extra parent dir for CLANG_RESOURCE_DIR
- mkdir -p x/y || die
- cd x/y || die
-
- git-r3_fetch "https://git.llvm.org/git/clang-tools-extra.git
- https://github.com/llvm-mirror/clang-tools-extra.git"
- if use test; then
- # needed for patched gtest
- git-r3_fetch "https://git.llvm.org/git/llvm.git
- https://github.com/llvm-mirror/llvm.git"
- fi
- git-r3_fetch
-
- git-r3_checkout https://llvm.org/git/clang-tools-extra.git \
- "${S}"/tools/extra
- if use test; then
- git-r3_checkout https://llvm.org/git/llvm.git \
- "${WORKDIR}"/llvm '' utils/{lit,llvm-lit,unittest}
- fi
- git-r3_checkout "${EGIT_REPO_URI}" "${S}"
-}
-
-multilib_src_configure() {
- local llvm_version=$(llvm-config --version) || die
- local clang_version=$(ver_cut 1-3 "${llvm_version}")
-
- local mycmakeargs=(
- # ensure that the correct llvm-config is used
- -DLLVM_CONFIG="$(type -P "${CHOST}-llvm-config")"
- -DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${SLOT}"
- # relative to bindir
- -DCLANG_RESOURCE_DIR="../../../../lib/clang/${clang_version}"
-
- -DBUILD_SHARED_LIBS=ON
- -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
- -DLLVM_BUILD_TESTS=$(usex test)
-
- # these are not propagated reliably, so redefine them
- -DLLVM_ENABLE_EH=ON
- -DLLVM_ENABLE_RTTI=ON
-
- -DCMAKE_DISABLE_FIND_PACKAGE_LibXml2=$(usex !xml)
- # libgomp support fails to find headers without explicit -I
- # furthermore, it provides only syntax checking
- -DCLANG_DEFAULT_OPENMP_RUNTIME=libomp
-
- # override default stdlib and rtlib
- -DCLANG_DEFAULT_CXX_STDLIB=$(usex default-libcxx libc++ "")
- -DCLANG_DEFAULT_RTLIB=$(usex default-compiler-rt compiler-rt "")
-
- -DCLANG_ENABLE_ARCMT=$(usex static-analyzer)
- -DCLANG_ENABLE_STATIC_ANALYZER=$(usex static-analyzer)
- # z3 is not multilib-friendly
- -DCLANG_ANALYZER_BUILD_Z3=$(multilib_native_usex z3)
- )
- use test && mycmakeargs+=(
- -DLLVM_MAIN_SRC_DIR="${WORKDIR}/llvm"
- )
-
- if multilib_is_native_abi; then
- mycmakeargs+=(
- # normally copied from LLVM_INCLUDE_DOCS but the latter
- # is lacking value in stand-alone builds
- -DCLANG_INCLUDE_DOCS=$(usex doc)
- -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=$(usex doc)
- )
- use doc && mycmakeargs+=(
- -DLLVM_BUILD_DOCS=ON
- -DLLVM_ENABLE_SPHINX=ON
- -DCLANG_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/html"
- -DCLANG-TOOLS_INSTALL_SPHINX_HTML_DIR="${EPREFIX}/usr/share/doc/${PF}/tools-extra"
- -DSPHINX_WARNINGS_AS_ERRORS=OFF
- )
- use z3 && mycmakeargs+=(
- -DZ3_INCLUDE_DIR="${EPREFIX}/usr/include/z3"
- )
- else
- mycmakeargs+=(
- -DLLVM_TOOL_CLANG_TOOLS_EXTRA_BUILD=OFF
- )
- fi
-
- if tc-is-cross-compiler; then
- [[ -x "/usr/bin/clang-tblgen" ]] \
- || die "/usr/bin/clang-tblgen not found or usable"
- mycmakeargs+=(
- -DCMAKE_CROSSCOMPILING=ON
- -DCLANG_TABLEGEN=/usr/bin/clang-tblgen
- )
- fi
-
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- use debug || local -x CPPFLAGS="${CPPFLAGS} -DNDEBUG"
- cmake-utils_src_configure
-}
-
-multilib_src_compile() {
- cmake-utils_src_compile
-
- # provide a symlink for tests
- if [[ ! -L ${WORKDIR}/lib/clang ]]; then
- mkdir -p "${WORKDIR}"/lib || die
- ln -s "${BUILD_DIR}/$(get_libdir)/clang" "${WORKDIR}"/lib/clang || die
- fi
-}
-
-multilib_src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
- cmake-utils_src_make check-clang
- # clang-tidy requires [static-analyzer] and tests are not split
- # correctly, so they are all disabled when static-analyzer is off
- if multilib_is_native_abi && use static-analyzer; then
- cmake-utils_src_make check-clang-tools
- fi
-}
-
-src_install() {
- MULTILIB_WRAPPED_HEADERS=(
- /usr/include/clang/Config/config.h
- )
-
- multilib-minimal_src_install
-
- # Move runtime headers to /usr/lib/clang, where they belong
- mv "${ED%/}"/usr/include/clangrt "${ED%/}"/usr/lib/clang || die
- # move (remaining) wrapped headers back
- mv "${ED%/}"/usr/include "${ED%/}"/usr/lib/llvm/${SLOT}/include || die
-
- # Apply CHOST and version suffix to clang tools
- # note: we use two version components here (vs 3 in runtime path)
- local llvm_version=$(llvm-config --version) || die
- local clang_version=$(ver_cut 1-2 "${llvm_version}")
- local clang_full_version=$(ver_cut 1-3 "${llvm_version}")
- local clang_tools=( clang clang++ clang-cl clang-cpp )
- local abi i
-
- # cmake gives us:
- # - clang-X.Y
- # - clang -> clang-X.Y
- # - clang++, clang-cl, clang-cpp -> clang
- # we want to have:
- # - clang-X.Y
- # - clang++-X.Y, clang-cl-X.Y, clang-cpp-X.Y -> clang-X.Y
- # - clang, clang++, clang-cl, clang-cpp -> clang*-X.Y
- # also in CHOST variant
- for i in "${clang_tools[@]:1}"; do
- rm "${ED%/}/usr/lib/llvm/${SLOT}/bin/${i}" || die
- dosym "clang-${clang_version}" "/usr/lib/llvm/${SLOT}/bin/${i}-${clang_version}"
- dosym "${i}-${clang_version}" "/usr/lib/llvm/${SLOT}/bin/${i}"
- done
-
- # now create target symlinks for all supported ABIs
- for abi in $(get_all_abis); do
- local abi_chost=$(get_abi_CHOST "${abi}")
- for i in "${clang_tools[@]}"; do
- dosym "${i}-${clang_version}" \
- "/usr/lib/llvm/${SLOT}/bin/${abi_chost}-${i}-${clang_version}"
- dosym "${abi_chost}-${i}-${clang_version}" \
- "/usr/lib/llvm/${SLOT}/bin/${abi_chost}-${i}"
- done
- done
-
- # Remove unnecessary headers on FreeBSD, bug #417171
- if use kernel_FreeBSD; then
- rm "${ED}"usr/lib/clang/${clang_full_version}/include/{std,float,iso,limits,tgmath,varargs}*.h || die
- fi
-}
-
-multilib_src_install() {
- cmake-utils_src_install
-
- # move headers to /usr/include for wrapping & ABI mismatch checks
- # (also drop the version suffix from runtime headers)
- rm -rf "${ED%/}"/usr/include || die
- mv "${ED%/}"/usr/lib/llvm/${SLOT}/include "${ED%/}"/usr/include || die
- mv "${ED%/}"/usr/lib/llvm/${SLOT}/$(get_libdir)/clang "${ED%/}"/usr/include/clangrt || die
-}
-
-multilib_src_install_all() {
- python_fix_shebang "${ED}"
- if use static-analyzer; then
- python_optimize "${ED}"usr/lib/llvm/${SLOT}/share/scan-view
- fi
-
- docompress "/usr/lib/llvm/${SLOT}/share/man"
- # match 'html' non-compression
- use doc && docompress -x "/usr/share/doc/${PF}/tools-extra"
- # +x for some reason; TODO: investigate
- use static-analyzer && fperms a-x "/usr/lib/llvm/${SLOT}/share/man/man1/scan-build.1"
-}
-
-pkg_postinst() {
- if [[ ${ROOT} == / && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then
- eselect compiler-shadow update all
- fi
-}
-
-pkg_postrm() {
- if [[ ${ROOT} == / && -f ${EPREFIX}/usr/share/eselect/modules/compiler-shadow.eselect ]] ; then
- eselect compiler-shadow clean all
- fi
-}