summaryrefslogtreecommitdiff
path: root/dev-ml/llvm-ocaml/llvm-ocaml-5.0.2.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'dev-ml/llvm-ocaml/llvm-ocaml-5.0.2.ebuild')
-rw-r--r--dev-ml/llvm-ocaml/llvm-ocaml-5.0.2.ebuild121
1 files changed, 0 insertions, 121 deletions
diff --git a/dev-ml/llvm-ocaml/llvm-ocaml-5.0.2.ebuild b/dev-ml/llvm-ocaml/llvm-ocaml-5.0.2.ebuild
deleted file mode 100644
index d21c45f2aac3..000000000000
--- a/dev-ml/llvm-ocaml/llvm-ocaml-5.0.2.ebuild
+++ /dev/null
@@ -1,121 +0,0 @@
-# Copyright 1999-2019 Gentoo Authors
-# 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 llvm python-any-r1
-
-MY_P=llvm-${PV/_/}.src
-DESCRIPTION="OCaml bindings for LLVM"
-HOMEPAGE="https://llvm.org/"
-SRC_URI="https://releases.llvm.org/${PV/_//}/${MY_P}.tar.xz"
-
-# 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="0/${PV}"
-KEYWORDS="~amd64 ~arm ~x86"
-IUSE="debug test ${ALL_LLVM_TARGETS[*]}"
-
-RDEPEND="
- >=dev-lang/ocaml-4.00.0:0=
- dev-ml/ocaml-ctypes:=
- ~sys-devel/llvm-${PV}:=[${LLVM_TARGET_USEDEPS// /,},debug?]
- !sys-devel/llvm[ocaml(-)]"
-# configparser-3.2 breaks the build (3.3 or none at all are fine)
-DEPEND="${RDEPEND}
- dev-lang/perl
- dev-ml/findlib
- test? ( dev-ml/ounit )
- !!<dev-python/configparser-3.3.0.2
- ${PYTHON_DEPS}"
-
-REQUIRED_USE="|| ( ${ALL_LLVM_TARGETS[*]} )"
-
-S=${WORKDIR}/${MY_P}
-
-# least intrusive of all
-CMAKE_BUILD_TYPE=RelWithDebInfo
-
-pkg_setup() {
- LLVM_MAX_SLOT=${PV%%.*} llvm_pkg_setup
- python-any-r1_pkg_setup
-}
-
-src_prepare() {
- # Python is needed to run tests using lit
- python_setup
-
- cmake-utils_src_prepare
-}
-
-src_configure() {
- local libdir=$(get_libdir)
- local mycmakeargs=(
- -DLLVM_LIBDIR_SUFFIX=${libdir#lib}
-
- -DBUILD_SHARED_LIBS=ON
- -DLLVM_OCAML_OUT_OF_TREE=ON
- -DLLVM_TARGETS_TO_BUILD="${LLVM_TARGETS// /;}"
- -DLLVM_BUILD_TESTS=$(usex test)
-
- # disable various irrelevant deps and settings
- -DLLVM_ENABLE_FFI=OFF
- -DLLVM_ENABLE_TERMINFO=OFF
- -DHAVE_HISTEDIT_H=NO
- -DWITH_POLLY=OFF
- -DLLVM_ENABLE_ASSERTIONS=$(usex debug)
- -DLLVM_ENABLE_EH=ON
- -DLLVM_ENABLE_RTTI=ON
-
- -DLLVM_HOST_TRIPLE="${CHOST}"
-
- # disable go bindings
- -DGO_EXECUTABLE=GO_EXECUTABLE-NOTFOUND
-
- # TODO: ocamldoc
- )
-
- # LLVM_ENABLE_ASSERTIONS=NO does not guarantee this for us, #614844
- # also: custom rules for OCaml do not work for CPPFLAGS
- use debug || local -x CFLAGS="${CFLAGS} -DNDEBUG"
- cmake-utils_src_configure
-
- local llvm_libdir=$(llvm-config --libdir)
- # an ugly hack; TODO: figure out a way to pass -L to ocaml...
- cd "${BUILD_DIR}/${libdir}" || die
- ln -s "${llvm_libdir}"/*.so . || die
-
- if use test; then
- local llvm_bindir=$(llvm-config --bindir)
- # Force using system-installed tools.
- sed -i -e "/llvm_tools_dir/s@\".*\"@\"${llvm_bindir}\"@" \
- "${BUILD_DIR}"/test/lit.site.cfg || die
- fi
-}
-
-src_compile() {
- cmake-utils_src_compile ocaml_all
-}
-
-src_test() {
- # respect TMPDIR!
- local -x LIT_PRESERVES_TMP=1
- cmake-utils_src_make check-llvm-bindings-ocaml
-}
-
-src_install() {
- DESTDIR="${D}" \
- cmake -P "${BUILD_DIR}"/bindings/ocaml/cmake_install.cmake || die
-
- dodoc bindings/ocaml/README.txt
-}