%define name ppl %define version @VERSION@ %define release 1 %define builddir $RPM_BUILD_DIR/%{name}-%{version} Name: %{name} Version: %{version} Release: %{release} Vendor: ppl-devel@cs.unipr.it Packager: %{packager} URL: http://www.cs.unipr.it/ppl/ Source: ftp://ftp.cs.unipr.it/ppl/%{name}-%{version}.tar.gz #Patch: Group: Development/Libraries Copyright: GPL #Icon: Requires: gmp >= 4.1.3, gcc-c++ == 3.4.1 BuildRoot: %{_tmppath}/%{name}-%{version} Prefix: /usr Summary: The Parma Polyhedra Library: a C++ library for convex polyhedra. %description The Parma Polyhedra Library (PPL) is a C++ library for the manipulation of (not necessarily closed) convex polyhedra and other numerical abstractions. The applications of convex polyhedra include program analysis, optimized compilation, integer and combinatorial optimization and statistical data-editing. The Parma Polyhedra Library is user friendly (you write `x + 2*y + 5*z <= 7' when you mean it), fully dynamic (available virtual memory is the only limitation to the dimension of anything), written in standard C++, exception-safe, rather efficient, thoroughly documented, and free software. %package c Summary: The C interface of the Parma Polyhedra Library Group: Development/Libraries Requires: ppl = %{version}-%{release} %description c This package adds C support to the Parma Polyhedra Library (PPL). Install this package if you want to access the PPL via C. %package gprolog Summary: The GNU Prolog interface of the Parma Polyhedra Library. Group: Development/Libraries Requires: ppl = %{version}-%{release}, ppl-pwl = %{version}-%{release} %description gprolog This package adds GNU Prolog support to the Parma Polyhedra Library (PPL). Install this package if you want to use the library in GNU Prolog programs. %package sicstus Summary: The SICStus Prolog interface of the Parma Polyhedra Library. Group: Development/Libraries Requires: ppl = %{version}-%{release}, ppl-pwl = %{version}-%{release} %description sicstus This package adds SICStus Prolog support to the Parma Polyhedra Library (PPL). Install this package if you want to use the library in SICStus Prolog programs. %package swi Summary: The SWI Prolog interface of the Parma Polyhedra Library. Group: Development/Libraries Requires: ppl = %{version}-%{release}, ppl-pwl = %{version}-%{release} %description swi This package adds SWI Prolog support to the Parma Polyhedra Library (PPL). Install this package if you want to use the library in SWI Prolog programs. %package yap Summary: The YAP Prolog interface of the Parma Polyhedra Library. Group: Development/Libraries Requires: ppl = %{version}-%{release}, ppl-pwl = %{version}-%{release} %description yap This package adds YAP Prolog support to the Parma Polyhedra Library (PPL). Install this package if you want to use the library in YAP Prolog programs. %package pwl Summary: The Parma Watchdog Library: a C++ library for watchdog timers. Group: Development/Libraries Requires: gcc-c++ == 3.4.1 %description pwl This package contains the Parma Watchdog Library (PWL). The library provides support for multiple, concurrent watchdog timers on systems providing the setitimer(2). The PWL is currently distributed with the Parma Polyhedra Library (PPL), but is totally independent from it. %prep %setup -n %{name}-%{version} #%patch -p1 %build CXXFLAGS="$RPM_OPT_FLAGS" ./configure --enable-shared \ --prefix=%{_prefix} --bindir=%{_bindir} --mandir=%{_mandir} \ --localstatedir=%{_localstatedir} --libdir=%{_libdir} \ --datadir=%{_datadir} --includedir=%{_includedir} \ --sysconfdir=%{_sysconfdir} make %install if [ -d $RPM_BUILD_ROOT ] then rm -rf $RPM_BUILD_ROOT fi mkdir -p $RPM_BUILD_ROOT make prefix=$RPM_BUILD_ROOT%{_prefix} bindir=$RPM_BUILD_ROOT%{_bindir} \ mandir=$RPM_BUILD_ROOT%{_mandir} libdir=$RPM_BUILD_ROOT%{_libdir} \ localstatedir=$RPM_BUILD_ROOT%{_localstatedir} \ datadir=$RPM_BUILD_ROOT%{_datadir} \ includedir=$RPM_BUILD_ROOT%{_includedir} \ sysconfdir=$RPM_BUILD_ROOT%{_sysconfdir} install %files %defattr(-,root,root) %doc BUGS COPYING CREDITS ChangeLog NEWS README README.configure doc/README doc/*.pdf* doc/*.ps.gz doc/*.txt %{_includedir}/ppl.hh %{_bindir}/ppl_lcdd %{_libdir}/libppl.so.* %{_libdir}/libppl.so %{_libdir}/libppl.a %{_libdir}/libppl.la %files c %defattr(-,root,root) %{_includedir}/ppl_c.h %{_libdir}/libppl_c.a %{_libdir}/libppl_c.la %{_libdir}/libppl_c.so* %files gprolog %defattr(-,root,root) %{_bindir}/ppl_gprolog %{_libdir}/ppl/ppl_gprolog.pl %{_libdir}/ppl/libppl_gprolog.a %{_libdir}/ppl/libppl_gprolog.la %{_libdir}/ppl/libppl_gprolog.so %files sicstus %defattr(-,root,root) # Uncomment the following line if you want to create an RPM containing # a version of SICStus statically linked with the PPL. #%{_bindir}/ppl_sicstus %{_libdir}/ppl/ppl_sicstus.s.o %{_libdir}/ppl/ppl_sicstus.so %{_libdir}/ppl/ppl_sicstus.pl %files swi %defattr(-,root,root) %{_bindir}/ppl_pl %{_libdir}/ppl/libppl_swiprolog.a %{_libdir}/ppl/libppl_swiprolog.la %{_libdir}/ppl/libppl_swiprolog.so %files yap %defattr(-,root,root) %{_libdir}/ppl/ppl_yap.a %{_libdir}/ppl/ppl_yap.la %{_libdir}/ppl/ppl_yap.pl %{_libdir}/ppl/ppl_yap.so %files pwl %defattr(-,root,root) %doc Watchdog/README %{_includedir}/pwl.hh %{_libdir}/libpwl.so.* %{_libdir}/libpwl.so %{_libdir}/libpwl.a %{_libdir}/libpwl.la %post /sbin/ldconfig %postun /sbin/ldconfig %post c /sbin/ldconfig %postun c /sbin/ldconfig %clean rm -rf $RPM_BUILD_ROOT