blob: 68d25ab1d22bbd27df21d2d72e5ec47185418983 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
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="1"
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
}
|