From c464528993683c3ab90f3053590f36dc6ae283ca Mon Sep 17 00:00:00 2001 From: Roberto Bagnara Date: Jul 04 2007 19:38:08 +0000 Subject: Initial checkin. --- diff --git a/.cvsignore b/.cvsignore index e69de29..2e0d4d4 100644 --- a/.cvsignore +++ b/.cvsignore @@ -0,0 +1 @@ +ppl-0.9.tar.gz diff --git a/ppl-0.9-configure.patch b/ppl-0.9-configure.patch new file mode 100644 index 0000000..1c446a5 --- /dev/null +++ b/ppl-0.9-configure.patch @@ -0,0 +1,28 @@ +diff -ur ppl-0.9/configure ppl-0.9-patched/configure +--- ppl-0.9/configure 2006-03-12 09:11:32.000000000 +0100 ++++ ppl-0.9-patched/configure 2007-06-07 15:19:05.000000000 +0200 +@@ -2389,8 +2389,8 @@ + fi + + +-CFLAGS="$COMP_FLAGS $OPT_FLAGS" +-CXXFLAGS="$COMP_FLAGS $OPT_FLAGS" ++CFLAGS="$COMP_FLAGS $OPT_FLAGS $CFLAGS" ++CXXFLAGS="$COMP_FLAGS $OPT_FLAGS $CXXFLAGS" + + enableval=mpz + echo "$as_me:$LINENO: checking the type of integral values to use as coefficients" >&5 +diff -ur ppl-0.9/Watchdog/configure ppl-0.9-patched/Watchdog/configure +--- ppl-0.9/Watchdog/configure 2006-03-12 09:11:24.000000000 +0100 ++++ ppl-0.9-patched/Watchdog/configure 2007-06-07 16:07:50.000000000 +0200 +@@ -5112,8 +5112,8 @@ + ;; + esac + +-CFLAGS="$COMP_FLAGS $OPT_FLAGS" +-CXXFLAGS="$COMP_FLAGS $OPT_FLAGS" ++CFLAGS="$COMP_FLAGS $OPT_FLAGS $CFLAGS" ++CXXFLAGS="$COMP_FLAGS $OPT_FLAGS $CXXFLAGS" + + # Allow additions to C and C++ compilation flags + diff --git a/ppl-0.9-docfiles.patch b/ppl-0.9-docfiles.patch new file mode 100644 index 0000000..2ae6883 --- /dev/null +++ b/ppl-0.9-docfiles.patch @@ -0,0 +1,248 @@ +*** ppl-0.9/interfaces/Prolog/GNU/README.gprolog 1970-01-01 01:00:00.000000000 +0100 +--- ppl-0.9-patched/interfaces/Prolog/GNU/README.gprolog 2007-02-18 11:37:53.000000000 +0100 +*************** +*** 0 **** +--- 1,36 ---- ++ The GNU Prolog interface to the PPL is available both as a ``PPL ++ enhanced'' GNU Prolog interpreter and as a library that can be linked ++ to GNU Prolog programs. Only GNU Prolog version 1.2.19 and later ++ versions are supported. ++ ++ So that it can be used with the GNU Prolog PPL interface (and, for ++ that matter, with any foreign code), the GNU Prolog installation must ++ be configured with the `--disable-regs' option. ++ ++ ++ The `ppl_gprolog' Executable ++ ---------------------------- ++ ++ The `ppl_gprolog' executable is simply the GNU Prolog interpreter with ++ the Parma Polyhedra Library linked in. The only thing you should do ++ to use the library is to call `ppl_initialize/0' before any other PPL ++ predicate and to call `ppl_finalize/0' when you are done with the ++ library. ++ ++ ++ Linking the Library To GNU Prolog Programs ++ ------------------------------------------ ++ ++ In order to allow linking GNU Prolog programs to the PPL, the ++ following files are installed in the directory `/lib/ppl', ++ where is the root of your installation (`/usr' or ++ `/usr/local' in most cases): `ppl_gprolog.pl' contains the required ++ foreign declarations; `libppl_gprolog.*' contain the executable code ++ for the GNU Prolog interface in various formats (static library, ++ shared library, libtool library). If your GNU Prolog program is ++ constituted by, say, `source1.pl' and `source2.pl' and you want to ++ create the executable `myprog', your compilation command may look like ++ ++ gplc -o myprog /lib/ppl/ppl_gprolog.pl source1.pl source2.pl \ ++ -L '-L/lib/ppl -lppl_gprolog -L/lib \ ++ -lppl -lgmpxx -lgmp -lstdc++' +*** ppl-0.9/interfaces/Prolog/SWI/README.swiprolog 1970-01-01 01:00:00.000000000 +0100 +--- ppl-0.9-patched/interfaces/Prolog/SWI/README.swiprolog 2007-02-18 11:38:09.000000000 +0100 +*************** +*** 0 **** +--- 1,33 ---- ++ The SWI-Prolog interface to the PPL is available both as a statically ++ linked module or as a dynamically linked one. Only SWI-Prolog version ++ 5.6.0 and later versions are supported. ++ ++ ++ The `ppl_pl' Executable ++ ----------------------- ++ ++ The `ppl_pl' executable is simply the SWI-Prolog shell with the Parma ++ Polyhedra Library statically linked: from within `ppl_pl' all the ++ services of the library are available without further action. ++ ++ ++ Loading the SWI-Prolog Interface Dynamically ++ -------------------------------------------- ++ ++ In order to dynamically load the library from SWI-Prolog you should ++ simply load `/lib/ppl/ppl_swiprolog.pl', where is the ++ root of your installation (`/usr' or `/usr/local' in most cases). ++ This will invoke `ppl_initialize/0' and `ppl_finalize/0' ++ automatically. Alternatively, you can load the library directly with ++ ++ :- load_foreign_library('/lib/ppl/libppl_swiprolog'). ++ ++ This will call `ppl_initialize/0' automatically. Analogously, ++ ++ :- unload_foreign_library('/lib/ppl/libppl_swiprolog'). ++ ++ will, as part of the unload process, invoke `ppl_finalize/0'. ++ ++ Notice that, for dynamic linking to work, you should have configured ++ the library with the `--enable-shared' option (on most platforms this ++ is the default). +*** ppl-0.9/interfaces/Prolog/YAP/README.yap 1970-01-01 01:00:00.000000000 +0100 +--- ppl-0.9-patched/interfaces/Prolog/YAP/README.yap 2007-02-18 11:38:21.000000000 +0100 +*************** +*** 0 **** +--- 1,11 ---- ++ The YAP Prolog interface to the PPL is available as a dynamically ++ linked module. Only YAP version 5.1.1 and following are supported. ++ ++ In order to dynamically load the library from YAP you should simply ++ load `/lib/ppl/ppl_yap.pl', where is the root of your ++ installation (`/usr' or `/usr/local' in most cases). This will invoke ++ `ppl_initialize/0' automatically; it is the programmer's ++ responsibility to call `ppl_finalize/0' when the PPL library is no ++ longer needed. Notice that, for dynamic linking to work, you should ++ have configured the library with the `--enable-shared' option (on most ++ platforms this is the default). +*** ppl-0.9/Watchdog/README.doc 1970-01-01 01:00:00.000000000 +0100 +--- ppl-0.9-patched/Watchdog/README.doc 2007-02-18 11:37:34.000000000 +0100 +*************** +*** 0 **** +--- 1,5 ---- ++ Use the Source, Luke! ++ ++ Seriously, for this release of the Parma Watchdog Library, ++ documentation is only available in the sources, in Doxygen format. ++ Proper manuals will be included in future releases. +diff -ur ppl-0.9/doc/Makefile.in ppl-0.9-patched/doc/Makefile.in +--- ppl-0.9/doc/Makefile.in 2006-03-12 09:11:41.000000000 +0100 ++++ ppl-0.9-patched/doc/Makefile.in 2007-06-12 20:41:45.000000000 +0200 +@@ -710,7 +710,7 @@ + for file in $(srcdir)/*.txt $(srcdir)/README.doc; do \ + $(INSTALL_DATA) $$file $(DESTDIR)$(txtdir)/`basename $$file`; \ + done +- for file in BUGS COPYING CREDITS ChangeLog NEWS README README.configure ; do \ ++ for file in BUGS COPYING CREDITS ChangeLog NEWS README README.configure TODO ; do \ + $(INSTALL_DATA) $(srcdir)/../$$file $(DESTDIR)$(txtdir)/$$file; \ + done + +@@ -719,7 +719,7 @@ + + uninstall-txt: + rm -f $(DESTDIR)$(txtdir)/*.txt $(DESTDIR)$(txtdir)/README.doc +- for file in BUGS COPYING CREDITS ChangeLog NEWS README README.configure ; do \ ++ for file in BUGS COPYING CREDITS ChangeLog NEWS README README.configure TODO ; do \ + rm -f $(DESTDIR)$(txtdir)/$$file; \ + done + +diff -ur ppl-0.9/doc/definitions.dox ppl-0.9-patched/doc/definitions.dox +--- ppl-0.9/doc/definitions.dox 2006-02-12 10:13:39.000000000 +0100 ++++ ppl-0.9-patched/doc/definitions.dox 2007-07-02 14:22:03.000000000 +0200 +@@ -2286,7 +2286,7 @@ + \anchor BHRZ03b + R. Bagnara, P. M. Hill, E. Ricci, and E. Zaffanella. + Precise widening operators for convex polyhedra. +- Quaderno 312, Dipartimento di Matematica, Universit� di Parma, ++ Quaderno 312, Dipartimento di Matematica, Università di Parma, + Italy, 2003. + Available at http://www.cs.unipr.it/Publications/. + +@@ -2299,7 +2299,7 @@ + R. Bagnara, P. M. Hill, and E. Zaffanella. + A new encoding and implementation of not necessarily closed convex + polyhedra. +- Quaderno 305, Dipartimento di Matematica, Universit� di Parma, ++ Quaderno 305, Dipartimento di Matematica, Università di Parma, + Italy, 2002. + Available at http://www.cs.unipr.it/Publications/. + +@@ -2315,8 +2315,8 @@ + the 1st CoLogNet Workshop on Component-based Software Development and + Implementation Technology for Computational Logic Systems, pages 147-153, + Madrid, Spain, 2002. +- Published as TR Number CLIP4/02.0, Universidad Polit�cnica de +- Madrid, Facultad de Inform�tica. ++ Published as TR Number CLIP4/02.0, Universidad Politécnica de ++ Madrid, Facultad de Informática. + + + +@@ -2353,7 +2353,7 @@ + \anchor BHZ04 + R. Bagnara, P. M. Hill, and E. Zaffanella. + Widening operators for powerset domains. +- Quaderno 349, Dipartimento di Matematica, Universit� di Parma, ++ Quaderno 349, Dipartimento di Matematica, Università di Parma, + Italy, 2004. + Available at http://www.cs.unipr.it/Publications/. + +@@ -2365,7 +2365,7 @@ + \anchor BJT99 + F. Besson, T. P. Jensen, and J.-P. Talpin. + Polyhedral analysis for synchronous languages. +- In A. Cortesi and G. Fil�, editors, Static Analysis: ++ In A. Cortesi and G. Filé, editors, Static Analysis: + Proceedings of the 6th International Symposium, volume 1694 of Lecture + Notes in Computer Science, pages 51-68, Venice, Italy, 1999. + Springer-Verlag, Berlin. +@@ -2393,7 +2393,7 @@ + R. Bagnara, E. Ricci, E. Zaffanella, and P. M. Hill. + Possibly not closed convex polyhedra and the Parma Polyhedra + Library. +- Quaderno 286, Dipartimento di Matematica, Universit� di Parma, ++ Quaderno 286, Dipartimento di Matematica, Università di Parma, + Italy, 2002. + See also \ref BRZH02c "[BRZH02c]". Available at + http://www.cs.unipr.it/Publications/. +@@ -2541,7 +2541,7 @@ + E. Gawrilow and M. Joswig. + polymake: a framework for analyzing convex polytopes. + In G. Kalai and G. M. Ziegler, editors, Polytopes - +- Combinatorics and Computation, pages 43-74. Birkh�user, 2000. ++ Combinatorics and Computation, pages 43-74. Birkhäuser, 2000. + + + +@@ -2562,10 +2562,10 @@ +
+ \anchor Hal79 + N. Halbwachs. +- D�termination Automatique de Relations Lin�aires +- V�rifi�es par les Variables d'un Programme. +- Th�se de 3�me cycle d'informatique, +- Universit� scientifique et m�dicale de Grenoble, Grenoble, France, March ++ Détermination Automatique de Relations Linéaires ++ Vérifiées par les Variables d'un Programme. ++ Thèse de 3ème cycle d'informatique, ++ Université scientifique et médicale de Grenoble, Grenoble, France, March + 1979. + +
+@@ -2725,7 +2725,7 @@ + F. Masdupuy. + Array Indices Relational Semantic Analysis Using Rational Cosets + and Trapezoids. +- Th�se d'informatique, �cole Polytechnique, Palaiseau, France, ++ Thèse d'informatique, École Polytechnique, Palaiseau, France, + December 1993. + + +diff -ur ppl-0.9/NEWS ppl-0.9-patched/NEWS +--- ppl-0.9/NEWS 2006-03-05 18:31:24.000000000 +0100 ++++ ppl-0.9-patched/NEWS 2007-07-02 14:22:29.000000000 +0200 +@@ -1006,10 +1006,10 @@ + of the widenings introduced in + + N. Halbwachs. +- D�termination Automatique de Relations Lin�aires +- V�rifi�es par les Variables d'un Programme. +- Th�se de 3�me cicle d'informatique, +- Universit� scientifique et m�dicale de Grenoble, ++ Détermination Automatique de Relations Linéaires ++ Vérifiées par les Variables d'un Programme. ++ Thèse de 3ème cicle d'informatique, ++ Université scientifique et médicale de Grenoble, + Grenoble, France, March 1979. + + and described in +diff -ur ppl-0.9/TODO ppl-0.9-patched/TODO +--- ppl-0.9/TODO 2006-03-05 22:50:55.000000000 +0100 ++++ ppl-0.9-patched/TODO 2007-07-02 14:22:40.000000000 +0200 +@@ -37,7 +37,7 @@ + - Reimplement the ask-and-tell generic construction. + - Suppose we are only interested in integral solutions (as is the + case, e.g., in most termination analyses). Then cutting-plane methods +- (Gomory, Chv�tal, ...) allow to shrink polyhedra still not losing any ++ (Gomory, Chvátal, ...) allow to shrink polyhedra still not losing any + integral solution. + See http://www.cs.unipr.it/ppl/Documentation/bibliography#NemhauserW88 + diff --git a/ppl-0.9-makefiles.patch b/ppl-0.9-makefiles.patch new file mode 100644 index 0000000..80f5efb --- /dev/null +++ b/ppl-0.9-makefiles.patch @@ -0,0 +1,48 @@ +diff -ur ppl-0.9/interfaces/Prolog/GNU/Makefile.in ppl-0.9-patched/interfaces/Prolog/GNU/Makefile.in +--- ppl-0.9/interfaces/Prolog/GNU/Makefile.in 2006-03-12 09:11:43.000000000 +0100 ++++ ppl-0.9-patched/interfaces/Prolog/GNU/Makefile.in 2007-06-07 21:58:12.000000000 +0200 +@@ -700,7 +700,7 @@ + @BUILD_GNU_PROLOG_INTERFACE_TRUE@ppl_gprolog$(EXEEXT): libppl_gprolog.la ppl_gprolog.pl + @BUILD_GNU_PROLOG_INTERFACE_TRUE@ gplc --c-compiler $(CXX) -o $@ \ + @BUILD_GNU_PROLOG_INTERFACE_TRUE@ $(srcdir)/ppl_gprolog.pl $(LIBPPL_GPROLOG) \ +-@BUILD_GNU_PROLOG_INTERFACE_TRUE@ -L '$(AM_CXXFLAGS) $(CXXFLAGS) -L$(top_builddir)/src/.libs -lppl -L$(top_builddir)/Watchdog/src/.libs -lpwl -lgmpxx -lgmp' ++@BUILD_GNU_PROLOG_INTERFACE_TRUE@ -L '$(AM_CXXFLAGS) $(CXXFLAGS) -Wl,-rpath -Wl,$(pkglibdir) -L$(top_builddir)/src/.libs -lppl -L$(top_builddir)/Watchdog/src/.libs -lpwl -lgmpxx -lgmp' + + @BUILD_GNU_PROLOG_INTERFACE_TRUE@gp_clpq: libppl_gprolog.la ppl_gprolog.pl gp_clpq.pl ../tests/clpq.pl + @BUILD_GNU_PROLOG_INTERFACE_TRUE@ gplc --c-compiler $(CXX) -o $@ \ +diff -ur ppl-0.9/interfaces/C/Makefile.in ppl-0.9-patched/interfaces/C/Makefile.in +--- ppl-0.9/interfaces/C/Makefile.in 2006-03-12 09:11:41.000000000 +0100 ++++ ppl-0.9-patched/interfaces/C/Makefile.in 2007-06-08 19:25:19.000000000 +0200 +@@ -90,7 +90,8 @@ + am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(includedir)" + libLTLIBRARIES_INSTALL = $(INSTALL) + LTLIBRARIES = $(lib_LTLIBRARIES) +-libppl_c_la_LIBADD = ++@BUILD_C_INTERFACE_TRUE@libppl_c_la_DEPENDENCIES = \ ++@BUILD_C_INTERFACE_TRUE@ $(top_builddir)/src/libppl.la + am__libppl_c_la_SOURCES_DIST = ppl_c.cc + @BUILD_C_INTERFACE_TRUE@am_libppl_c_la_OBJECTS = ppl_c.lo + libppl_c_la_OBJECTS = $(am_libppl_c_la_OBJECTS) +@@ -342,6 +343,10 @@ + + @BUILD_C_INTERFACE_TRUE@lib_LTLIBRARIES = libppl_c.la + @BUILD_C_INTERFACE_TRUE@libppl_c_la_SOURCES = ppl_c.cc ++@BUILD_C_INTERFACE_TRUE@libppl_c_la_LIBADD = \ ++@BUILD_C_INTERFACE_TRUE@$(top_builddir)/src/libppl.la \ ++@BUILD_C_INTERFACE_TRUE@@extra_libraries@ ++ + @BUILD_C_INTERFACE_TRUE@libppl_c_la_LDFLAGS = \ + @BUILD_C_INTERFACE_TRUE@-version-info $(LIBPPL_C_LT_CURRENT):$(LIBPPL_C_LT_REVISION):$(LIBPPL_C_LT_AGE) + +diff -ur ppl-0.9/src/Makefile.in ppl-0.9-patched/src/Makefile.in +--- ppl-0.9/src/Makefile.in 2006-03-12 09:11:46.000000000 +0100 ++++ ppl-0.9-patched/src/Makefile.in 2007-06-08 19:21:17.000000000 +0200 +@@ -708,7 +708,7 @@ + swapping_sort.icc + + @NO_UNDEFINED_TRUE@NO_UNDEFINED_FLAG = -no-undefined +-@NO_UNDEFINED_TRUE@libppl_la_LIBADD = @extra_libraries@ ++libppl_la_LIBADD = @extra_libraries@ + libppl_la_LDFLAGS = \ + $(NO_UNDEFINED_FLAG) \ + -version-info $(LIBPPL_LT_CURRENT):$(LIBPPL_LT_REVISION):$(LIBPPL_LT_AGE) diff --git a/ppl.spec b/ppl.spec new file mode 100644 index 0000000..7d2b51c --- /dev/null +++ b/ppl.spec @@ -0,0 +1,430 @@ +Name: ppl +Version: 0.9 +Release: 10%{?dist} + +Summary: The Parma Polyhedra Library: a library of numerical abstractions +Group: Development/Libraries +License: GPL +URL: http://www.cs.unipr.it/ppl/ +Source: ftp://ftp.cs.unipr.it/pub/ppl/releases/%{version}/%{name}-%{version}.tar.gz +Patch0: ppl-0.9-docfiles.patch +Patch1: ppl-0.9-configure.patch +Patch2: ppl-0.9-makefiles.patch +#Icon: +#Requires: +BuildRequires: gmp-devel >= 4.1.3 +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root +#Prefix: /usr + +%description +The Parma Polyhedra Library (PPL) is a 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 comes with several user friendly interfaces, is fully dynamic +(available virtual memory is the only limitation to the dimension of +anything), written in accordance to all the applicable standards, +exception-safe, rather efficient, thoroughly documented, and free +software. This package provides all what is necessary to run +applications using the PPL through its C and C++ interfaces. + +%package devel +Summary: Development tools for the Parma Polyhedra Library C and C++ interfaces +Group: Development/Libraries +Requires: ppl = %{version}-%{release}, gmp-devel >= 4.1.3 +%description devel +The header files, Autoconf macro, documentation, and ppl-config tool +developing applications using the Parma Polyhedra Library through its +C and C++ interfaces. + +%package static +Summary: Static archives for the Parma Polyhedra Library C and C++ interfaces +Group: Development/Libraries +Requires: ppl-devel = %{version}-%{release} +%description static +The static archives for the Parma Polyhedra Library C and C++ interfaces. + +%package utils +Summary: Utilities using the Parma Polyhedra Library +Group: Development/Libraries +Requires: ppl = %{version}-%{release} +BuildRequires: glpk-devel >= 4.13 +%description utils +This package contains the (mixed integer) linear programming solver ppl_lpsol +and the program ppl_lcdd for vertex/facet enumeration of convex polyhedra. + +%package gprolog +Summary: The GNU Prolog interface of the Parma Polyhedra Library +Group: Development/Libraries +BuildRequires: gprolog >= 1.2.19 +Requires: ppl = %{version}-%{release}, ppl-pwl = %{version}-%{release}, gprolog >= 1.2.19 +%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 gprolog-static +Summary: The static archive for the GNU Prolog interface of the Parma Polyhedra Library +Group: Development/Libraries +Requires: ppl-gprolog = %{version}-%{release} +%description gprolog-static +This package contains the static archive for the GNU Prolog interface +of the Parma Polyhedra Library. + +%package swiprolog +Summary: The SWI-Prolog interface of the Parma Polyhedra Library +Group: Development/Libraries +BuildRequires: pl >= 5.6.0, readline-devel +Requires: ppl = %{version}-%{release}, ppl-pwl = %{version}-%{release}, pl >= 5.6.0, readline-devel +%description swiprolog +This package adds SWI-Prolog support to the Parma Polyhedra Library. +Install this package if you want to use the library in SWI Prolog programs. + +%package swiprolog-static +Summary: The static archive for the SWI-Prolog interface of the Parma Polyhedra Library +Group: Development/Libraries +BuildRequires: pl >= 5.6.0 +Requires: ppl-swiprolog = %{version}-%{release} +%description swiprolog-static +This package contains the static archive for the SWI-Prolog interface +of the Parma Polyhedra Library. + +%package yap +Summary: The YAP Prolog interface of the Parma Polyhedra Library +Group: Development/Libraries +BuildRequires: yap-devel >= 5.1.1 +Requires: ppl = %{version}-%{release}, ppl-pwl = %{version}-%{release}, yap >= 5.1.1 +%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 yap-static +Summary: The static archive for the YAP Prolog interface of the Parma Polyhedra Library +Group: Development/Libraries +BuildRequires: yap-devel >= 5.1.1 +Requires: ppl-yap = %{version}-%{release} +%description yap-static +This package contains the static archive for the YAP Prolog interface +of the Parma Polyhedra Library. + +%package docs +Summary: Documentation for the Parma Polyhedra Library +Group: Documentation +Requires: ppl = %{version}-%{release} +%description docs +This package contains all the documentations required by programmers +using the Parma Polyhedra Library (PPL). +Install this package if you want to program with the PPL. + +%package pwl +Summary: The Parma Watchdog Library: a C++ library for watchdog timers +Group: Development/Libraries +%description pwl +The Parma Watchdog Library (PWL) provides support for multiple, +concurrent watchdog timers on systems providing setitimer(2). This +package provides all what is necessary to run applications using the +PWL. The PWL is currently distributed with the Parma Polyhedra +Library, but is totally independent from it. + +%package pwl-devel +Summary: Development tools for the Parma Watchdog Library +Group: Development/Libraries +Requires: ppl-pwl = %{version}-%{release} +%description pwl-devel +The header files, documentation and static libraries for developing +applications using the Parma Watchdog Library. + +%package pwl-static +Summary: Static archive for the Parma Watchdog Library +Group: Development/Libraries +Requires: ppl-pwl-devel = %{version}-%{release} +%description pwl-static +This package contains the static archive for the Parma Watchdog Library. + + +%prep +%setup -q +%patch0 -p1 +%patch1 -p1 +%patch2 -p1 + +%build +%configure --enable-shared --disable-rpath CPPFLAGS="-I%{_includedir}/glpk -I%{_libdir}/gprolog-`gprolog --version 2>&1 | head -1 | sed -e "s/.* \([^ ]*\)$/\1/g"`/include -I%{_includedir}/Yap" +sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool +sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool +make %{?_smp_mflags} + +%install +rm -rf %{buildroot} +make DESTDIR=%{buildroot} INSTALL="%{__install} -p" install +rm -f %{buildroot}%{_libdir}/*.la %{buildroot}%{_libdir}/%{name}/*.la + +%files +%defattr(-,root,root,-) +%doc %{_datadir}/doc/%{name}/BUGS +%doc %{_datadir}/doc/%{name}/COPYING +%doc %{_datadir}/doc/%{name}/CREDITS +%doc %{_datadir}/doc/%{name}/ChangeLog +%doc %{_datadir}/doc/%{name}/NEWS +%doc %{_datadir}/doc/%{name}/README +%doc %{_datadir}/doc/%{name}/TODO +%doc %{_datadir}/doc/%{name}/gpl.* +%{_libdir}/libppl.so.* +%{_libdir}/libppl_c.so.* + +%dir %{_libdir}/%{name} +%dir %{_datadir}/doc/%{name} + +%files devel +%defattr(-,root,root,-) +%doc %{_datadir}/doc/%{name}/README.configure +%{_includedir}/ppl.hh +%{_includedir}/ppl_c.h +%{_libdir}/libppl.so +%{_libdir}/libppl_c.so +%{_bindir}/ppl-config +%{_mandir}/man1/ppl-config.1.gz +%{_datadir}/aclocal/ppl.m4 + +%files static +%defattr(-,root,root,-) +%{_libdir}/libppl.a +%{_libdir}/libppl_c.a + +%files utils +%defattr(-,root,root,-) +%{_bindir}/ppl_lcdd +%{_bindir}/ppl_lpsol +%{_mandir}/man1/ppl_lcdd.1.gz +%{_mandir}/man1/ppl_lpsol.1.gz + +%files gprolog +%defattr(-,root,root,-) +%doc interfaces/Prolog/GNU/README.gprolog +%{_bindir}/ppl_gprolog +%{_libdir}/%{name}/ppl_gprolog.pl +%{_libdir}/%{name}/libppl_gprolog.so + +%files gprolog-static +%defattr(-,root,root,-) +%{_libdir}/%{name}/libppl_gprolog.a + +%files swiprolog +%defattr(-,root,root,-) +%doc interfaces/Prolog/SWI/README.swiprolog +%{_bindir}/ppl_pl +%{_libdir}/%{name}/libppl_swiprolog.so +%{_libdir}/%{name}/ppl_swiprolog.pl + +%files swiprolog-static +%defattr(-,root,root,-) +%{_libdir}/%{name}/libppl_swiprolog.a + +%files yap +%defattr(-,root,root,-) +%doc interfaces/Prolog/YAP/README.yap +%{_libdir}/%{name}/ppl_yap.pl +%{_libdir}/%{name}/ppl_yap.so + +%files yap-static +%defattr(-,root,root,-) +%{_libdir}/%{name}/ppl_yap.a + +%files docs +%defattr(-,root,root,-) +%doc %{_datadir}/doc/%{name}/README.doc +%doc %{_datadir}/doc/%{name}/ppl-user-0.9-html/ +%doc %{_datadir}/doc/%{name}/fdl.* +%doc %{_datadir}/doc/%{name}/ppl-user-0.9.pdf +%doc %{_datadir}/doc/%{name}/ppl-user-0.9.ps.gz + +%files pwl +%defattr(-,root,root,-) +%doc Watchdog/BUGS Watchdog/COPYING Watchdog/CREDITS Watchdog/ChangeLog Watchdog/NEWS Watchdog/README +%{_libdir}/libpwl.so.* + +%files pwl-devel +%defattr(-,root,root,-) +%doc Watchdog/README.doc +%{_includedir}/pwl.hh +%{_libdir}/libpwl.so + +%files pwl-static +%defattr(-,root,root,-) +%{_libdir}/libpwl.a + +%post -p /sbin/ldconfig +%postun -p /sbin/ldconfig +%post pwl -p /sbin/ldconfig +%postun pwl -p /sbin/ldconfig + +%clean +rm -rf %{buildroot} + +%changelog +* Tue Jul 03 2007 Roberto Bagnara 0.9-10 +- Use `%%{buildroot}' consistently, instead of `$RPM_BUILD_ROOT'. + +* Mon Jul 02 2007 Roberto Bagnara 0.9-9 +- Patch NEWS, TODO and doc/definitions.dox so as to use the + UTF-8 encoding instead of ISO-8859. + +* Tue Jun 12 2007 Roberto Bagnara 0.9-8 +- Patch the `libtool' script after `%%configure' so as to fix + the rpath issue. +- Revised the description of the `devel' package. +- Include also the `TODO' file in the documentation of the main package. + +* Thu Jun 07 2007 Roberto Bagnara 0.9-7 +- `%%install' commands revised. + +* Thu Jun 07 2007 Roberto Bagnara 0.9-6 +- All the static archives are now in `*-static' packages. +- Packages `ppl-gprolog-devel', `ppl-swiprolog-devel' and `ppl-yap-devel' + renamed `ppl-gprolog', `ppl-swiprolog' and `ppl-yap', + respectively. +- As a workaround for a bug in the `pl' package (Bugzilla Bug 243084), + `ppl-swiprolog' is now dependent on `readline-devel'. +- Added `%%dir %%{_datadir}/doc/%%{name}'. +- The `ppl-user-0.9-html' documentation directory is now properly listed. +- Remove installed *.la files. +- Added a `ppl-0.9-configure.patch' to avoid overriding CFLAGS and CXXFLAGS. + +* Wed Jun 06 2007 Roberto Bagnara 0.9-5 +- Use `%%{_includedir}' and `%%{_libdir}' instead of `/usr/include' + and `/usr/lib', respectively. +- Use `%%{_datadir}/doc/%%{name}' instead of `/usr/share/doc/ppl'. +- Replaced `%%defattr(-,root,root)' with `%%defattr(-,root,root,-)'. + +* Fri Feb 23 2007 Roberto Bagnara 0.9-4 +- The user manual (in various formats) is now in the `docs' package. + +* Thu Feb 22 2007 Roberto Bagnara 0.9-3 +- Dependencies for YAP fixed. +- Make sure the header files of GNU Prolog and YAP are found. + +* Wed Feb 21 2007 Roberto Bagnara +- Added missing dependencies. + +* Sun Feb 18 2007 Roberto Bagnara +- `%%doc' tags corrected for the Prolog interfaces. +- Tabs used consistently instead of spaces. + +* Sat Feb 17 2007 Roberto Bagnara +- Make `swiprolog-devel' depend on `pl' (at leat 5.6); documentation added. +- The `yap' package has been renamed `yap-devel' and completed. +- The `gprolog' package has been renamed `gprolog-devel' and completed. +- The `ppl_lcdd' and `ppl_lpsol' programs are now in a new `utils' package. +- The `ppl-config' program is now in the `devel' package. +- Modified the configuration command so that the `glpk-devel' include files + are found. + +* Sun Feb 11 2007 Roberto Bagnara 0.9-2 +- The `%%_libdir/ppl' is no longer orphaned. +- Use `make %%{?_smp_mflags}' for building. +- The `swi' package has been renamed `swiprolog-devel'. + +* Sat Feb 10 2007 Roberto Bagnara +- Added the `%%changelog' section. +- `Release' set to 2. +- `Packager' and `Vendor' tags removed. +- `Summary' fields are no longer ended with a dot. +- The value of the `License' tag is now `GPL'. +- Removed unused definition of `builddir'. +- The `Name', `Version' and `Release' tags are now directly defined. +- Commented out the efinitions of the `Require' and `Prefix' tags. +- Set the `BuildRequires' tag to `gmp-devel'. +- Exploit the features of `%%setup', `%%configure', `%%install', + `%%post' and `%%postun'. +- Mixed use of spaces and tabs avoided. +- Do configure with the --disable-rpath option so as to avoid + hardcoding the path to search libraries. +- Do not include libtool archive files. +- Packages reorganized. + +* Mon Jan 16 2006 Roberto Bagnara 0.9-1 +- Install gzipped man pages. +- The `Copyright' tag is no longer supported: use `License' instead. + +* Wed Jan 11 2006 Roberto Bagnara +- Include `ppl-config' in `%%{_bindir}' and the man pages in + `%%{_mandir}/man1'. + +* Tue Jan 10 2006 Roberto Bagnara +- Require gcc-c++ to be at least 4.0.2. +- Distribute also `ppl_lpsol'. + +* Tue Mar 01 2005 Roberto Bagnara +- Wrong dependency fixed. + +* Mon Feb 28 2005 Roberto Bagnara +- URL for the source fixed. + +* Fri Dec 24 2004 Roberto Bagnara +- Sentence fixed. + +* Thu Dec 23 2004 Roberto Bagnara +- The file doc/README has been renamed README.doc so as not to conflict + with the library's main README file. +- Require gcc-c++ to be exactly version 3.4.1. +- `Summary' updated to reflect the fact that the library now provides + numerical abstractions other than convex polyhedra. + +* Wed Aug 18 2004 Roberto Bagnara +- Distribute more documentation. + +* Mon Aug 16 2004 Roberto Bagnara +- Added the `ppl_lcdd' program to the main package. +- Require gcc-c++ to be exactly version 3.4.1. +- We require gmp at least 4.1.3. + +* Wed Jul 30 2003 Roberto Bagnara +- Build an RPM package also for the PWL. +- The Prolog interfaces depend on the PWL. + +* Tue Mar 04 2003 Roberto Bagnara +- We require gmp at least 4.1.2. + +* Fri Oct 04 2002 Roberto Bagnara +- Require gcc-c++ 3.2 or later version. +- Require gmp 4.1 or later version. + +* Sun Jun 30 2002 Roberto Bagnara +- Mention not necessarily closed convex polyhedra in the main `%%description'. + +* Tue Jun 25 2002 Roberto Bagnara +- `%%files' section for gprolog package fixed. + +* Mon Jun 24 2002 Roberto Bagnara +- `%%files' section fixed for the yap package. +- The `%%files' sections of each package are now complete. + +* Wed Jun 12 2002 Roberto Bagnara +- Added file list for package gprolog. +- Updated file list for package swi. + +* Thu Jun 06 2002 Roberto Bagnara +- The `swi' package has now its `%%files' section. + +* Wed Jun 05 2002 Roberto Bagnara +- We will build several RPM packages out of our source tree. + +* Mon Mar 04 2002 Roberto Bagnara +- Require gcc-c++ 3.0.4 or later version. +- Require gmp 4.0.1 or later version. + +* Sun Jan 27 2002 Roberto Bagnara +- The move to libtool is complete: we can now build and distribute + (with, e.g., RPM) static and dynamic versions of the library. + +* Tue Oct 16 2001 Roberto Bagnara +- Changed `Summary'. +- Changed `Packager' in view of PGP signatures. +- Changed `Group' to `Development/Libraries'. +- Require gcc-c++ 2.96-85 or later version. + +* Mon Oct 15 2001 Roberto Bagnara +- Now we build a relocatable package. + +* Mon Oct 15 2001 Roberto Bagnara +- A first cut at a working RPM spec file. diff --git a/sources b/sources index e69de29..db92250 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +4096c2927b36fbf7c5329a53b035bc33 ppl-0.9.tar.gz