summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2006-04-02 11:40:21 +0000
committerRobin H. Johnson <robbat2@gentoo.org>2006-04-02 11:40:21 +0000
commita830249d4e353be9016be7ac24907882ed6824f9 (patch)
treef37dfad260ca0b40000dfead7557cff97a1563f3 /sci-mathematics
parentTypo fix, bug #116929 (diff)
downloadgentoo-2-a830249d4e353be9016be7ac24907882ed6824f9.tar.gz
gentoo-2-a830249d4e353be9016be7ac24907882ed6824f9.tar.bz2
gentoo-2-a830249d4e353be9016be7ac24907882ed6824f9.zip
Initial commit. Ebuild by Robin H. Johnson <robbat2@gentoo.org>. This ebuild may need revisiting when GCC4.2 is closer to final.
(Portage version: 2.1_pre7-r3)
Diffstat (limited to 'sci-mathematics')
-rw-r--r--sci-mathematics/nusmv/ChangeLog12
-rw-r--r--sci-mathematics/nusmv/Manifest12
-rw-r--r--sci-mathematics/nusmv/files/MiniSat_v1.14-optimizedlib.patch44
-rw-r--r--sci-mathematics/nusmv/files/digest-nusmv-2.3.16
-rw-r--r--sci-mathematics/nusmv/metadata.xml8
-rw-r--r--sci-mathematics/nusmv/nusmv-2.3.1.ebuild121
6 files changed, 203 insertions, 0 deletions
diff --git a/sci-mathematics/nusmv/ChangeLog b/sci-mathematics/nusmv/ChangeLog
new file mode 100644
index 000000000000..43793e8e5ddd
--- /dev/null
+++ b/sci-mathematics/nusmv/ChangeLog
@@ -0,0 +1,12 @@
+# ChangeLog for sci-mathematics/nusmv
+# Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/nusmv/ChangeLog,v 1.1 2006/04/02 11:40:21 robbat2 Exp $
+
+*nusmv-2.3.1 (02 Apr 2006)
+
+ 02 Apr 2006; Robin H. Johnson <robbat2@gentoo.org>
+ +files/MiniSat_v1.14-optimizedlib.patch, +metadata.xml,
+ +nusmv-2.3.1.ebuild:
+ Initial commit. Ebuild by Robin H. Johnson <robbat2@gentoo.org>. This ebuild
+ may need revisiting when GCC4.2 is closer to final.
+
diff --git a/sci-mathematics/nusmv/Manifest b/sci-mathematics/nusmv/Manifest
new file mode 100644
index 000000000000..9f2a9685fbec
--- /dev/null
+++ b/sci-mathematics/nusmv/Manifest
@@ -0,0 +1,12 @@
+MD5 a5765b71c2ed4382fab990b31f097fde .nusmv-2.3.1.ebuild.swp 12288
+RMD160 61fd499b3e5221a7fbcc91e4681b02c678fd53af .nusmv-2.3.1.ebuild.swp 12288
+SHA256 6a57b097cb223629ab79169318894f13caf9307cd067ceed071697fdbb52cb9e .nusmv-2.3.1.ebuild.swp 12288
+MD5 9441db17d4c6c257ed274b6b10edf222 files/MiniSat_v1.14-optimizedlib.patch 1112
+RMD160 9ae63aef1b74fac1bad9ee62049460856b5c5982 files/MiniSat_v1.14-optimizedlib.patch 1112
+SHA256 21016b1ce69553c058385afa93f13248dbdc398c7968609d86dd9b707e227bfb files/MiniSat_v1.14-optimizedlib.patch 1112
+MD5 7cb5f70df589851ea7a81ed62e427025 files/digest-nusmv-2.3.1 479
+RMD160 bcca102605a01f2b30ea109fcdc165b9d037c2be files/digest-nusmv-2.3.1 479
+SHA256 c4a06e889a10c3456191f4f39909e57e1d809a20c2c627989b8e8eda9dc1aada files/digest-nusmv-2.3.1 479
+MD5 64db3396b7f03c5bc02247e201bcb641 nusmv-2.3.1.ebuild 3112
+RMD160 6a5768a92de42c0a6b693de645484d0f50417942 nusmv-2.3.1.ebuild 3112
+SHA256 7c27d43f3115f69b90adfb3cd4048388bbb6faef83c08464a0f7191565f62549 nusmv-2.3.1.ebuild 3112
diff --git a/sci-mathematics/nusmv/files/MiniSat_v1.14-optimizedlib.patch b/sci-mathematics/nusmv/files/MiniSat_v1.14-optimizedlib.patch
new file mode 100644
index 000000000000..a291339491bf
--- /dev/null
+++ b/sci-mathematics/nusmv/files/MiniSat_v1.14-optimizedlib.patch
@@ -0,0 +1,44 @@
+diff -Nuar MiniSat_v1.14/Makefile MiniSat_v1.14.new/Makefile
+--- MiniSat_v1.14/Makefile 2006-04-02 01:33:46.000000000 -0800
++++ MiniSat_v1.14.new/Makefile 2006-04-02 01:31:39.000000000 -0800
+@@ -26,10 +26,11 @@
+ RANLIB = ranlib
+ AR = ar
+
+-.PHONY : ls s p d r build clean depend
++.PHONY : lr ls s p d r build clean depend
+
+ s: WAY=standard
+ ls: WAY=standard
++lr: WAY=release
+ p: WAY=profile
+ d: WAY=debug
+ r: WAY=release
+@@ -38,8 +39,7 @@
+ s: CFLAGS+=$(COPTIMIZE) -ggdb -D DEBUG
+ p: CFLAGS+=$(COPTIMIZE) -pg -ggdb -D DEBUG
+ d: CFLAGS+=-O0 -ggdb -D DEBUG
+-r: CFLAGS+=$(COPTIMIZE) -D NDEBUG
+-rs: CFLAGS+=$(COPTIMIZE) -D NDEBUG
++r rs ls lr: CFLAGS+=$(COPTIMIZE) -D NDEBUG
+
+ s: build $(EXEC)
+ p: build $(EXEC)_profile
+@@ -48,7 +48,7 @@
+ rs: build $(EXEC)_static
+
+ s: CFLAGS+=$(COPTIMIZE) -ggdb -D DEBUG
+-ls: lbuild $(LIB)_s
++ls lr: lbuild $(LIB)_s
+
+ build:
+ @echo Building $(EXEC) "("$(WAY)")"
+@@ -63,7 +63,7 @@
+ ## Build rule
+ %.o %.op %.od %.or: %.C
+ @echo Compiling: $<
+- @$(CXX) $(CFLAGS) -c -o $@ $<
++ $(CXX) $(CFLAGS) -c -o $@ $<
+
+ ## Linking rules (standard/profile/debug/release)
+ $(EXEC): $(COBJS)
diff --git a/sci-mathematics/nusmv/files/digest-nusmv-2.3.1 b/sci-mathematics/nusmv/files/digest-nusmv-2.3.1
new file mode 100644
index 000000000000..b43a13a20b00
--- /dev/null
+++ b/sci-mathematics/nusmv/files/digest-nusmv-2.3.1
@@ -0,0 +1,6 @@
+MD5 f7f7199c9cdfa5e4730fbee33b23dc46 MiniSat_v1.14_src.zip 29428
+RMD160 d5f0dc611a6116128d9a404f9045e02b185958b4 MiniSat_v1.14_src.zip 29428
+SHA256 8e5e0ee84a770dcb3abd6fc65ed4aef938f9ffabca5ddc8a739029f7fb58a8f5 MiniSat_v1.14_src.zip 29428
+MD5 8d92612574c9ce02917e8509916d098f NuSMV-2.3.1.tar.gz 2590944
+RMD160 74f00e1c29dabe98e04cf0d652b92d63a73b07dc NuSMV-2.3.1.tar.gz 2590944
+SHA256 b8ba0f29afafdfdef8c30f722eead3ef6cbb17e4bfe5563240a01d8a99dbbf68 NuSMV-2.3.1.tar.gz 2590944
diff --git a/sci-mathematics/nusmv/metadata.xml b/sci-mathematics/nusmv/metadata.xml
new file mode 100644
index 000000000000..2ba90ab6f5c5
--- /dev/null
+++ b/sci-mathematics/nusmv/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>sci</herd>
+<maintainer>
+ <email>robbat2@gentoo.org</email>
+</maintainer>
+</pkgmetadata>
diff --git a/sci-mathematics/nusmv/nusmv-2.3.1.ebuild b/sci-mathematics/nusmv/nusmv-2.3.1.ebuild
new file mode 100644
index 000000000000..b0a8407c2977
--- /dev/null
+++ b/sci-mathematics/nusmv/nusmv-2.3.1.ebuild
@@ -0,0 +1,121 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sci-mathematics/nusmv/nusmv-2.3.1.ebuild,v 1.1 2006/04/02 11:40:21 robbat2 Exp $
+
+inherit eutils toolchain-funcs
+
+NUSMV_PN="NuSMV"
+NUSMV_PV="${PV}"
+NUSMV_P="${NUSMV_PN}-${NUSMV_PV}"
+NUSMV_A="${NUSMV_P}.tar.gz"
+NUSMV_S="${WORKDIR}/${NUSMV_P}/nusmv"
+
+MINISAT_PN="MiniSat"
+MINISAT_PV="1.14"
+MINISAT_P="${MINISAT_PN}_v${MINISAT_PV}"
+MINISAT_A="${MINISAT_P}_src.zip"
+MINISAT_S="${WORKDIR}/${NUSMV_P}/MiniSat/${MINISAT_P}"
+
+CUDD_PN="cudd"
+CUDD_PV="2.3.0.1"
+CUDD_P="${CUDD_PN}-${CUDD_PV}"
+#CUDD_A is none
+CUDD_S="${WORKDIR}/${NUSMV_P}/${CUDD_P}"
+
+DESCRIPTION="NuSMV: new symbolic model checker"
+HOMEPAGE="http://nusmv.irst.itc.it/"
+# The Homepage is _very_ slow, 2Kb/sec or worse.
+# So we use our own mirror.
+# Additionally, MiniSat is distributed with a slightly different filename
+# So we mirror it ourselves
+SRC_URI="mirror://gentoo/${NUSMV_A}
+ http://nusmv.irst.itc.it/distrib/${NUSMV_A}
+ minisat? ( mirror://gentoo/${MINISAT_A} )"
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~x86"
+IUSE="minisat examples"
+RDEPEND="virtual/libc
+ dev-libs/expat"
+DEPEND="${RDEPEND}
+ virtual/tetex
+ virtual/ghostscript
+ www-client/lynx
+ dev-lang/perl"
+# the above 4 are for docs, which aren't optional yet patches welcome to
+# avoid building the docs but I suspect anybody using this package will
+# actually need them
+S="${NUSMV_S}"
+
+src_unpack() {
+ unpack ${NUSMV_A}
+ if use minisat; then
+ cd ${WORKDIR}/${NUSMV_P}/MiniSat
+ unpack ${MINISAT_A}
+ epatch ${MINISAT_P}_nusmv.patch
+ epatch ${FILESDIR}/${MINISAT_P}-optimizedlib.patch
+ fi
+ for i in ${NUSMV_S}/doc/{user-man,tutorial}/Makefile.in ; do
+ sed -i.orig \
+ '/install_sh_DATA/s!$(datadir)!$(DESTDIR)$(datadir)!g' \
+ ${i} || die "sed $i failed"
+ done
+}
+
+src_compile() {
+ rm -f ${NUSMV_S}/${MINISAT_P}
+ if use minisat; then
+ cd ${MINISAT_S}
+ # do NOT merge these targets
+ emake COPTIMIZE="${CFLAGS}" r || die "Failed to build minisat bin"
+ emake COPTIMIZE="${CFLAGS}" lr || die "Failed to build minisat lib"
+ ln -sf ${MINISAT_S} ${WORKDIR}/${NUSMV_P}/${MINISAT_P}
+ fi
+
+ cd ${CUDD_S}
+ emake clean || die "Failed to clean cudd out."
+ emake \
+ CPP="$(tc-getCPP)" CC="$(tc-getCC)" \
+ RANLIB="$(tc-getRANLIB)" ICFLAGS="${CFLAGS}" \
+ || die "Failed to build cudd."
+
+ cd ${NUSMV_S}
+ econf `use_enable minisat` \
+ --enable-sa \
+ --enable-sa-cpp \
+ --enable-psl || die "econf failed"
+ emake || die "emake failed"
+
+ emake docs
+}
+
+src_install() {
+ into /usr
+ if use minisat; then
+ newbin ${MINISAT_S}/minisat_release minisat
+ fi
+
+ dodir /usr/share/nusmv/doc
+ cd ${NUSMV_S}
+ emake DESTDIR="${D}" install || die "emake install failed"
+ # duplicate items
+ rm -f ${D}/usr/share/nusmv/{LGPL-2.1,README*,NEWS}
+ # real docs
+ dodoc README* NEWS AUTHORS
+ dodoc doc/tutorial/tutorial.pdf
+ dodoc doc/user-man/nusmv.pdf
+
+ # move package-installed docs
+ mv ${D}/usr/share/nusmv/doc/* ${D}/usr/share/doc/${PF}/
+ rmdir ${D}/usr/share/nusmv/doc
+
+ # clean out examples if not needed
+ if use !examples ; then
+ rm -rf ${D}/usr/share/nusmv/examples || die "Failed to remove examples"
+ fi
+}
+
+src_test() {
+ cd ${NUSMV_S}
+ emake check || die "emake check failed"
+}