summaryrefslogtreecommitdiff
path: root/dev-lang/yap/yap-6.3.4-r1.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'dev-lang/yap/yap-6.3.4-r1.ebuild')
-rw-r--r--dev-lang/yap/yap-6.3.4-r1.ebuild132
1 files changed, 132 insertions, 0 deletions
diff --git a/dev-lang/yap/yap-6.3.4-r1.ebuild b/dev-lang/yap/yap-6.3.4-r1.ebuild
new file mode 100644
index 000000000000..6bdfb12f293d
--- /dev/null
+++ b/dev-lang/yap/yap-6.3.4-r1.ebuild
@@ -0,0 +1,132 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+MY_P=YAP-${PV}
+
+PYTHON_COMPAT=( python3_{7,8,9} )
+
+inherit cmake flag-o-matic python-r1
+
+PATCHSET_VER="0"
+
+DESCRIPTION="YAP is a high-performance Prolog compiler"
+HOMEPAGE="http://www.dcc.fc.up.pt/~vsc/Yap/"
+SRC_URI="https://github.com/vscosta/yap-6.3/archive/YAP-${PV}.tar.gz
+ https://dev.gentoo.org/~keri/distfiles/yap/${P}-gentoo-patchset-${PATCHSET_VER}.tar.gz"
+
+LICENSE="Artistic LGPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="R debug doc examples gmp java mpi mysql odbc postgres python raptor readline sqlite ssl static threads xml"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="dev-libs/libutf8proc
+ sys-libs/zlib
+ gmp? ( dev-libs/gmp:0 )
+ java? ( >=virtual/jdk-1.8:* )
+ mpi? ( virtual/mpi )
+ mysql? ( dev-db/mysql-connector-c:0= )
+ odbc? ( dev-db/unixODBC )
+ postgres? ( dev-db/postgresql:= )
+ R? ( dev-lang/R )
+ python? ( ${PYTHON_DEPS} )
+ raptor? ( media-libs/raptor )
+ readline? ( sys-libs/readline:= sys-libs/ncurses:= )
+ sqlite? ( dev-db/sqlite )
+ ssl? ( dev-libs/openssl )
+ xml? ( dev-libs/libxml2 )"
+
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen[dot] )
+ java? ( dev-lang/swig )
+ python? ( dev-lang/swig )"
+
+S="${WORKDIR}"/yap-6.3-${MY_P}
+
+src_prepare() {
+ if [[ -d "${WORKDIR}"/${PV} ]] ; then
+ eapply "${WORKDIR}"/${PV}
+ fi
+
+ sed -i \
+ -e "s|\(set ( libdir \"\${exec_prefix}\)/lib\")|\1/$(get_libdir)\")|" \
+ -e "s|\(set ( dlls \"\${exec_prefix}\)/lib/Yap\")|\1/$(get_libdir)/Yap\")|" \
+ -e "s|\(set ( docdir \"\${exec_prefix}/share/doc\)/Yap\")|\1/${PF}\")|" \
+ CMakeLists.txt || die
+ rm -rf "${S}"/yap || die "failed to remove yap xcode project"
+
+ cmake_src_prepare
+}
+
+src_configure() {
+ append-flags -fno-strict-aliasing -fcommon -fno-inline-small-functions
+
+ local mycmakeargs=(
+ -DWITH_YAP_STATIC=$(usex static)
+ -DWITH_Threads=$(usex threads)
+ -DWITH_GMP=$(usex gmp)
+ -DWITH_Readline=$(usex readline)
+ -DCMAKE_DISABLE_FIND_PACKAGE_OpenSSL=$(usex !ssl)
+ -DWITH_MPI=$(usex mpi)
+ -DWITH_ODBC=$(usex odbc)
+ -DWITH_MySQL=$(usex mysql)
+ -DWITH_PostgreSQL=$(usex postgres)
+ -DWITH_Sqlite3=$(usex sqlite)
+ -DWITH_JNI=$(usex java)
+ -DCMAKE_DISABLE_FIND_PACKAGE_Java=$(usex !java)
+ -DWITH_PythonInterp=$(usex python)
+ -DWITH_PythonLibs=$(usex python)
+ -DWITH_SWIG=$(if use java || use python; then echo yes; else echo no; fi)
+ -DWITH_R=$(usex R)
+ -DWITH_RAPTOR=$(usex raptor)
+ -DWITH_LibXml2=$(usex xml)
+ -DWITH_DOCUMENTATION=$(usex doc)
+ -DWITH_CUDD=no
+ -DWITH_Gecode=no
+ -DWITH_Matlab=no
+ )
+
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+
+ if use doc ; then
+ cmake_src_compile doc
+ fi
+}
+
+src_test() {
+ # libtai package contains check.c which confuses the default
+ # src_test() function
+ true
+}
+
+src_install() {
+ cmake_src_install
+
+ dodoc changes*.html README
+
+ if use examples ; then
+ docinto examples/chr
+ dodoc packages/chr/Examples/*
+
+ if use java ; then
+ docinto examples/jpl/prolog
+ dodoc packages/jpl/jpl/examples/prolog/*
+
+ docinto examples/jpl/java
+ dodoc packages/jpl/jpl/examples/java/README
+ dodoc -r packages/jpl/jpl/examples/java/*/*.{java,pl}
+ fi
+
+ if use mpi ; then
+ docinto examples/mpi
+ dodoc library/mpi/examples/*.pl
+ fi
+ fi
+}