summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /sci-mathematics/cvc3
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'sci-mathematics/cvc3')
-rw-r--r--sci-mathematics/cvc3/Manifest1
-rw-r--r--sci-mathematics/cvc3/cvc3-2.4.1.ebuild157
-rw-r--r--sci-mathematics/cvc3/files/50cvc3-gentoo.el3
-rw-r--r--sci-mathematics/cvc3/metadata.xml42
4 files changed, 203 insertions, 0 deletions
diff --git a/sci-mathematics/cvc3/Manifest b/sci-mathematics/cvc3/Manifest
new file mode 100644
index 00000000000..e13e2e2bb3e
--- /dev/null
+++ b/sci-mathematics/cvc3/Manifest
@@ -0,0 +1 @@
+DIST cvc3-2.4.1.tar.gz 1196616 SHA256 d55b1d6006cfbac3f6d4c086964558902c3ed0efa66ac499cfb2193f3ee4acf7 SHA512 48e5cd82b3eb7506d762c2abc8db0c8fbc548575a1362dda53888075ac105a5bc0f0d58dfe01b60f207bc00ff8dfc39a5b3d9317784fe551658c884bb02e1ff2 WHIRLPOOL 9d39dacff010f093685191737d41760a84ac7d12246ddaafbb9f48c78c7bff5697c5e85c62ef44b7dc76f86a55c118c041323c3a1b1953f5c725447795375d93
diff --git a/sci-mathematics/cvc3/cvc3-2.4.1.ebuild b/sci-mathematics/cvc3/cvc3-2.4.1.ebuild
new file mode 100644
index 00000000000..8ac2c53297c
--- /dev/null
+++ b/sci-mathematics/cvc3/cvc3-2.4.1.ebuild
@@ -0,0 +1,157 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit elisp-common
+
+DESCRIPTION="CVC3 is an automatic theorem prover for Satisfiability Modulo Theories (SMT) problems"
+HOMEPAGE="http://www.cs.nyu.edu/acsys/cvc3/index.html"
+SRC_URI="http://www.cs.nyu.edu/acsys/cvc3/releases/2.4.1/${P}.tar.gz"
+
+LICENSE="BSD MIT HPND zchaff? ( zchaff )"
+RESTRICT="mirror zchaff? ( bindist )"
+SLOT="0/${PV}"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc emacs isabelle test zchaff"
+
+RDEPEND="dev-libs/gmp
+ isabelle? (
+ >=sci-mathematics/isabelle-2011.1-r1:=
+ )"
+DEPEND="${RDEPEND}
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )
+ emacs? (
+ virtual/emacs
+ )"
+
+SITEFILE=50${PN}-gentoo.el
+
+src_prepare() {
+ sed -e 's#prefix=@prefix@#prefix=$(patsubst %/,%,$(DESTDIR))@prefix@#' \
+ -e 's#libdir=@libdir@#libdir=$(patsubst %/,%,$(DESTDIR))@libdir@#' \
+ -e 's#mandir=@mandir@#mandir=$(patsubst %/,%,$(DESTDIR))@mandir@#' \
+ -i "${S}/Makefile.local.in" \
+ || die "Could not set DESTDIR in Makefile.local.in"
+}
+
+src_configure() {
+ # --enable-static disables building of shared libraries, statically
+ # links /usr/bin/cvc3 and installs static libraries.
+ # --enable-static --enable-sharedlibs behaves the same as just --enable-static
+ econf \
+ --enable-dynamic \
+ $(use_enable zchaff)
+
+ if use test; then
+ sed -e 's@LD_LIBS = @LD_LIBS = -L'"${S}"'/lib -Wl,-R'"${S}"'/lib @' \
+ -i "${S}/test/Makefile" \
+ || die "Could not set library paths in test/Makefile"
+ fi
+}
+
+src_compile() {
+ emake
+
+ if use doc; then
+ pushd doc || die "Could not cd to doc"
+ emake
+ popd
+ fi
+
+ if use emacs ; then
+ pushd "${S}/emacs" || die "Could change directory to emacs"
+ elisp-compile *.el || die "emacs elisp compile failed"
+ popd
+ fi
+
+ if use test; then
+ pushd test || die "Could not cd to test"
+ emake
+ popd
+ fi
+}
+
+src_test() {
+ pushd test || die "Could not cd to test"
+ ./bin/test || die "tests failed"
+ popd
+}
+
+src_install() {
+ emake DESTDIR="${D}" install
+
+ if use doc; then
+ pushd "${S}"/doc/html || die "Could not cd to doc/html"
+ dohtml *.html
+ insinto /usr/share/doc/${PF}/html
+ doins *.css *.gif *.png
+ popd
+ fi
+
+ if use emacs ; then
+ elisp-install ${PN} emacs/*.{el,elc}
+ cp "${FILESDIR}"/${SITEFILE} "${S}"
+ elisp-site-file-install ${SITEFILE}
+ fi
+
+ if use isabelle; then
+ ISABELLE_HOME="$(isabelle getenv ISABELLE_HOME | cut -d'=' -f 2)" \
+ || die "isabelle getenv ISABELLE_HOME failed"
+ [[ -n "${ISABELLE_HOME}" ]] || die "ISABELLE_HOME empty"
+ dodir "${ISABELLE_HOME}/contrib/${PN}-${PV}/etc"
+ cat <<- EOF >> "${S}/settings"
+ CVC3_COMPONENT="\$COMPONENT"
+ CVC3_HOME="${ROOT}usr/bin"
+ CVC3_SOLVER="\$CVC3_HOME/cvc3"
+ CVC3_REMOTE_SOLVER="cvc3"
+ CVC3_INSTALLED="yes"
+ EOF
+ insinto "${ISABELLE_HOME}/contrib/${PN}-${PV}/etc"
+ doins "${S}/settings"
+ fi
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+ if use isabelle; then
+ if [ -f "${ROOT}etc/isabelle/components" ]; then
+ if egrep "contrib/${PN}-[0-9.]*" "${ROOT}etc/isabelle/components"; then
+ sed -e "/contrib\/${PN}-[0-9.]*/d" \
+ -i "${ROOT}etc/isabelle/components"
+ fi
+ cat <<- EOF >> "${ROOT}etc/isabelle/components"
+ contrib/${PN}-${PV}
+ EOF
+ fi
+ fi
+ if use zchaff; then
+ einfo "This copy of CVC3 is also configured to use the SAT solver zchaff whose"
+ einfo "copyright is owned by Princeton University and is more restrictive."
+ einfo "Specifically, it may be used for internal, noncommercial, research purposes"
+ einfo "only. See the copyright notices from the zchaff source files which are"
+ einfo "included in the LICENSE file."
+ einfo "To build CVC3 without these files, please build cvc3 without the zchaff"
+ einfo "use flag (note: zchaff is disabled by default):"
+ einfo "USE=-zchaff emerge sci-mathemathematics/cvc3"
+ fi
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+ if use isabelle; then
+ if [ ! -f "${ROOT}usr/bin/cvc3" ]; then
+ if [ -f "${ROOT}etc/isabelle/components" ]; then
+ # Note: this sed should only match the version of this ebuild
+ # Which is what we want as we do not want to remove the line
+ # of a new CVC3 being installed during an upgrade.
+ sed -e "/contrib\/${PN}-${PV}/d" \
+ -i "${ROOT}etc/isabelle/components"
+ fi
+ fi
+ fi
+}
diff --git a/sci-mathematics/cvc3/files/50cvc3-gentoo.el b/sci-mathematics/cvc3/files/50cvc3-gentoo.el
new file mode 100644
index 00000000000..8e046edf7ad
--- /dev/null
+++ b/sci-mathematics/cvc3/files/50cvc3-gentoo.el
@@ -0,0 +1,3 @@
+(add-to-list 'load-path "@SITELISP@")
+(add-to-list 'auto-mode-alist '("\\.cvc\\'" . cvc-mode))
+(autoload 'cvc-mode "cvc-mode" "CVC specifications editing mode." t)
diff --git a/sci-mathematics/cvc3/metadata.xml b/sci-mathematics/cvc3/metadata.xml
new file mode 100644
index 00000000000..fd176a8c8c6
--- /dev/null
+++ b/sci-mathematics/cvc3/metadata.xml
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer>
+ <email>gienah@gentoo.org</email>
+ <name>Mark Wright</name>
+</maintainer>
+<herd>sci-mathematics</herd>
+<longdescription lang='en'>
+CVC3 is an automatic theorem prover for Satisfiability Modulo Theories
+(SMT) problems. It can be used to prove the validity (or, dually, the
+satisfiability) of first-order formulas in a large number of built-in
+logical theories and their combination.
+
+CVC3 is the last offspring of a series of popular SMT provers, which
+originated at Stanford University with the SVC system. In particular,
+it builds on the code base of CVC Lite, its most recent
+predecessor. Its high level design follows that of the Sammy prover.
+
+CVC3 works with a version of first-order logic with polymorphic types
+and has a wide variety of features including:
+
+ several built-in base theories: rational and integer linear
+ arithmetic, arrays, tuples, records, inductive data types, bit
+ vectors, and equality over uninterpreted function symbols;
+ support for quantifiers;
+ an interactive text-based interface;
+ a rich C and C++ API for embedding in other systems;
+ proof and model generation abilities;
+ predicate subtyping;
+ essentially no limit on its use for research or commercial
+ purposes (see license).
+</longdescription>
+<use>
+ <flag name='isabelle'>Add integration support for the Isabelle/HOL
+ theorem prover.</flag>
+ <flag name='zchaff'>Use the SAT solver zchaff whose copyright is
+ owned by Princeton University and is more restrictive (see zchaff
+ license).
+ </flag>
+</use>
+</pkgmetadata>