diff options
Diffstat (limited to 'sys-devel/clang/clang-10.0.1.ebuild')
-rw-r--r-- | sys-devel/clang/clang-10.0.1.ebuild | 44 |
1 files changed, 29 insertions, 15 deletions
diff --git a/sys-devel/clang/clang-10.0.1.ebuild b/sys-devel/clang/clang-10.0.1.ebuild index 96f2e13b419f..42c03f5c3c62 100644 --- a/sys-devel/clang/clang-10.0.1.ebuild +++ b/sys-devel/clang/clang-10.0.1.ebuild @@ -9,7 +9,9 @@ inherit cmake llvm llvm.org multilib-minimal pax-utils \ DESCRIPTION="C language family frontend for LLVM" HOMEPAGE="https://llvm.org/" +SRC_URI+=" https://dev.gentoo.org/~juippis/distfiles/tmp/10.0.1-0003-clang-tools-extra-Prevent-linking-to-duplicate-.a-li.patch" LLVM_COMPONENTS=( clang clang-tools-extra ) +LLVM_MANPAGES=pregenerated LLVM_TEST_COMPONENTS=( llvm/lib/Testing/Support llvm/utils/{lit,llvm-lit,unittest} @@ -29,7 +31,7 @@ LLVM_TARGET_USEDEPS=${ALL_LLVM_TARGETS[@]/%/?} LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA MIT" SLOT="$(ver_cut 1)" -KEYWORDS="amd64 ~arm arm64 ~ppc64 x86 ~amd64-linux" +KEYWORDS="amd64 arm arm64 ppc64 x86 ~amd64-linux" IUSE="debug default-compiler-rt default-libcxx default-lld doc +static-analyzer test xml kernel_FreeBSD ${ALL_LLVM_TARGETS[*]}" REQUIRED_USE="${PYTHON_REQUIRED_USE} @@ -43,7 +45,7 @@ RDEPEND=" ${PYTHON_DEPS}" DEPEND="${RDEPEND}" BDEPEND=" - dev-python/sphinx + doc? ( dev-python/sphinx ) xml? ( virtual/pkgconfig ) ${PYTHON_DEPS}" RDEPEND="${RDEPEND} @@ -69,7 +71,7 @@ PDEPEND=" PATCHES=( # fix simultaneous linking to .a and dylib - "${FILESDIR}"/10.0.1/0003-clang-tools-extra-Prevent-linking-to-duplicate-.a-li.patch + "${DISTDIR}"/10.0.1-0003-clang-tools-extra-Prevent-linking-to-duplicate-.a-li.patch "${FILESDIR}"/10.0.1/0004-clang-Avoid-linking-c-index-test-to-duplicate-librar.patch ) @@ -116,7 +118,7 @@ check_distribution_components() { ;; # conditional to USE=doc docs-clang-html|docs-clang-tools-html) - continue + use doc || continue ;; esac @@ -196,11 +198,15 @@ get_distribution_components() { find-all-symbols modularize pp-trace - - # manpages - docs-clang-man - docs-clang-tools-man ) + + if llvm_are_manpages_built; then + out+=( + # manpages + docs-clang-man + docs-clang-tools-man + ) + fi use doc && out+=( docs-clang-html @@ -259,16 +265,23 @@ multilib_src_configure() { ) if multilib_is_native_abi; then + local build_docs=OFF + if llvm_are_manpages_built; then + build_docs=ON + 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 + ) + fi + mycmakeargs+=( # normally copied from LLVM_INCLUDE_DOCS but the latter # is lacking value in stand-alone builds - -DCLANG_INCLUDE_DOCS=ON - -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=ON - -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 + -DCLANG_INCLUDE_DOCS=${build_docs} + -DCLANG_TOOLS_EXTRA_INCLUDE_DOCS=${build_docs} ) else mycmakeargs+=( @@ -389,6 +402,7 @@ multilib_src_install_all() { fi docompress "/usr/lib/llvm/${SLOT}/share/man" + llvm_install_manpages # match 'html' non-compression use doc && docompress -x "/usr/share/doc/${PF}/tools-extra" # +x for some reason; TODO: investigate |