You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/dev-libs/libclangformat-ide/libclangformat-ide-9.0.1.eb...

73 lines
1.7 KiB

# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake llvm llvm.org toolchain-funcs
DESCRIPTION="A static clangformat library patched for IDE use"
HOMEPAGE="https://www.qt.io/blog/2019/04/17/clangformat-plugin-qt-creator-4-9"
LLVM_COMPONENTS=( clang )
llvm.org_set_globals
LICENSE="Apache-2.0-with-LLVM-exceptions UoI-NCSA MIT"
SLOT="$(ver_cut 1)"
KEYWORDS="~amd64 ~x86"
IUSE="debug"
DEPEND="~sys-devel/llvm-${PV}:${SLOT}=[debug=]"
# least intrusive of all
CMAKE_BUILD_TYPE=RelWithDebInfo
PATCHES=( "${FILESDIR}/clang-qtcreator-compat.patch" )
pkg_setup() {
LLVM_MAX_SLOT=${SLOT} llvm_pkg_setup
}
src_unpack() {
llvm.org_src_unpack
}
src_configure() {
local mycmakeargs=(
-DLLVM_CMAKE_PATH="${EPREFIX}/usr/lib/llvm/${SLOT}/$(get_libdir)/cmake/llvm"
-DCMAKE_INSTALL_PREFIX="${EPREFIX}/usr/lib/llvm/${SLOT}"
-DBUILD_SHARED_LIBS=OFF
-DLLVM_ENABLE_EH=ON
-DLLVM_ENABLE_RTTI=ON
)
if [[ -n ${EPREFIX} ]]; then
mycmakeargs+=(
-DGCC_INSTALL_PREFIX="${EPREFIX}/usr"
)
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_src_configure
}
src_compile() {
cmake_src_compile libclangFormat.a
}
src_install() {
into usr/lib/llvm/${SLOT}
newlib.a "${BUILD_DIR}/$(get_libdir)/libclangFormat.a" libclangFormatIDE.a
insinto usr/lib/llvm/${SLOT}/include/clang/Format
newins "${S}/include/clang/Format/Format.h" FormatIDE.h
}