Sophie

Sophie

distrib > Fedora > 13 > x86_64 > by-pkgid > 7d5aecaee42d7dac7b1ddae8d7ca767f > files > 5

gappa-0.14.0-1.fc13.src.rpm

Name:		gappa
Version:	0.14.0
Release:	1%{?dist}
Summary:	Prove programs with floating-point or fixed-point arithmetic

Group:		Applications/Productivity
License:	GPLv2 or CeCILL
URL:		http://gappa.gforge.inria.fr/
Source0:	https://gforge.inria.fr/frs/download.php/27654/gappa-%{version}.tar.gz
Source1:	http://gappa.gforge.inria.fr/gappa.pdf
# Tell flex not to generate the unused unput() function.
Patch0:         gappa-nounput.patch
# Fix an order-of-initialization bug with static initializers
Patch1:         gappa-init-order.patch

BuildRequires:	gmp-devel, mpfr-devel, boost-devel, flex, bison

%description
Gappa is a tool intended to help verifying and formally prove
properties on numerical programs and circuits handling floating-point
or fixed-point arithmetic.  This tool manipulates logical formulas
stating the enclosures of expressions in some intervals.  Through the
use of rounding operators as part of the expressions, Gappa is specially
designed to deal with formulas that could appear when certifying numerical
codes. In particular, Gappa makes it simple to bound computational errors
due to floating-point arithmetic.  The tool and its documentation were
written by Guillaume Melquiond.

%prep
%setup -q
cp -p %SOURCE1 .
%patch0
%patch1

# Regenerate the flex and bison files
rm -f src/parser/lexer.cpp src/parser/parser.cpp src/parser/parser.h

# Help the debuginfo generator find the flex and bison files
ln -s parser/lexer.cpp src/lexer.cpp
ln -s parser/lexer.lpp src/lexer.lpp
ln -s parser/parser.cpp src/parser.cpp
ln -s parser/parser.ypp src/parser.ypp

%build
%configure
make %{?_smp_mflags}
iconv -f latin1 -t utf8 COPYING > COPYING.UTF8 && \
touch -r COPYING COPYING.UTF8 && \
mv COPYING.UTF8 COPYING
# We won't 'make html-doc'; that requires dvi2bitmap, which is unpackaged.


%check
# Simple test to see if gappa is working at all:
cd src
echo "x * x in [0, 1b2 {4, 2^(2)}]" > ,test1.correct
echo "{ x in [-2,2] -> x * x in ? }" | ./gappa >,test1 2>&1
tail -1 ,test1 > ,test1.short
cmp ,test1.short ,test1.correct

# That simple test worked, so run full test suite:
cd ..
make check


%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}


%clean
rm -rf %{buildroot}


%files
%defattr(-,root,root,-)
%{_bindir}/gappa
%doc AUTHORS COPYING COPYING.GPL README TODO NEWS gappa.pdf


%changelog
* Tue Mar 15 2011 Jerry James <loganjerry@gmail.com> - 0.14.0-1
- New upstream version
- Remove BuildRoot tag
- Use flex and bison to regenerate the lexer and parser

* Tue Sep 21 2010 David A. Wheeler <dwheeler@dwheeler.com> - 0.13.0-4
- Removed now-incorrect comment.

* Sat Sep 11 2010 David A. Wheeler <dwheeler@dwheeler.com> - 0.13.0-3
- Removed documentation source code from package
- Greatly simplified spec file.

* Fri Sep 10 2010 David A. Wheeler <dwheeler@dwheeler.com> - 0.13.0-2
- Respond to comments 1-2 in https://bugzilla.redhat.com/show_bug.cgi?id=622173
- Simplify (drop variable definitions in configure, drop INSTALL file)
- Preserve the timestamp of file COPYING
- More macro use
- Modified to use bundled testsuite as well
- PDF manual added

* Sat Aug  7 2010 David A. Wheeler <dwheeler@dwheeler.com> - 0.13.0-1
- Initial packaging