diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /sci-mathematics/cvc3 | |
download | gentoo-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/Manifest | 1 | ||||
-rw-r--r-- | sci-mathematics/cvc3/cvc3-2.4.1.ebuild | 157 | ||||
-rw-r--r-- | sci-mathematics/cvc3/files/50cvc3-gentoo.el | 3 | ||||
-rw-r--r-- | sci-mathematics/cvc3/metadata.xml | 42 |
4 files changed, 203 insertions, 0 deletions
diff --git a/sci-mathematics/cvc3/Manifest b/sci-mathematics/cvc3/Manifest new file mode 100644 index 000000000000..e13e2e2bb3eb --- /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 000000000000..8ac2c53297c1 --- /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 000000000000..8e046edf7ad1 --- /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 000000000000..fd176a8c8c63 --- /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> |