From 018be6cad86fad5c1f9ee8cdac82327f15536457 Mon Sep 17 00:00:00 2001 From: Roberto Bagnara Date: Nov 04 2008 13:11:56 +0000 Subject: Updated and extended for PPL 0.10. --- diff --git a/.cvsignore b/.cvsignore index 2e0d4d4..5b5baf9 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -ppl-0.9.tar.gz +ppl-0.10.tar.gz diff --git a/ppl-0.9-configure.patch b/ppl-0.9-configure.patch deleted file mode 100644 index 1c446a5..0000000 --- a/ppl-0.9-configure.patch +++ /dev/null @@ -1,28 +0,0 @@ -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-cstdlib.patch b/ppl-0.9-cstdlib.patch deleted file mode 100644 index 145a229..0000000 --- a/ppl-0.9-cstdlib.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -ur ppl-0.9/utils/timings.cc ppl-0.9-patched/utils/timings.cc ---- ppl-0.9/utils/timings.cc 2006-01-01 09:27:38.000000000 +0100 -+++ ppl-0.9-patched/utils/timings.cc 2008-02-13 19:15:10.000000000 +0100 -@@ -29,6 +29,7 @@ - #include - #include - #include -+#include - - #ifdef HAVE_SYS_TIME_H - # include diff --git a/ppl-0.9-docfiles.patch b/ppl-0.9-docfiles.patch deleted file mode 100644 index 2ae6883..0000000 --- a/ppl-0.9-docfiles.patch +++ /dev/null @@ -1,248 +0,0 @@ -*** 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 deleted file mode 100644 index 80f5efb..0000000 --- a/ppl-0.9-makefiles.patch +++ /dev/null @@ -1,48 +0,0 @@ -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-0.9-swiprolog.patch b/ppl-0.9-swiprolog.patch deleted file mode 100644 index e624771..0000000 --- a/ppl-0.9-swiprolog.patch +++ /dev/null @@ -1,42 +0,0 @@ -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 2008-09-08 15:38:34.000000000 +0200 -@@ -14929,7 +14929,7 @@ - swi_prolog_version=`$swi_prolog -dump-runtime-variables | grep PLVERSION= | sed 's/PLVERSION="\(.*\)";/\1/'` - - -- SWI_PROLOG_INCLUDE_OPTIONS="-I${swi_prolog_base}/include" -+ SWI_PROLOG_INCLUDE_OPTIONS="-I${swi_prolog_base}/include -I/usr/include/pl" - ac_save_CPPFLAGS="$CPPFLAGS" - CPPFLAGS="$CPPFLAGS $SWI_PROLOG_INCLUDE_OPTIONS" - ac_ext=cc -diff -ur ppl-0.9/interfaces/Prolog/SWI/Makefile.in ppl-0.9-patched/interfaces/Prolog/SWI/Makefile.in ---- ppl-0.9/interfaces/Prolog/SWI/Makefile.in 2006-03-12 09:11:44.000000000 +0100 -+++ ppl-0.9-patched/interfaces/Prolog/SWI/Makefile.in 2008-09-08 16:16:05.000000000 +0200 -@@ -728,7 +728,7 @@ - # Notice: we are linking statically until we understand whether - # and if libtool and plld can interoperate. - @BUILD_SWI_PROLOG_INTERFACE_TRUE@ppl_pl$(EXEEXT): ppl_swiprolog.o ppl_pl.o | libppl_swiprolog.la --@BUILD_SWI_PROLOG_INTERFACE_TRUE@ plld -cc $(CC) -c++ $(CXX) -ld $(CXX) \ -+@BUILD_SWI_PROLOG_INTERFACE_TRUE@ plld -v -cc $(CC) -c++ $(CXX) -ld $(CXX) \ - @BUILD_SWI_PROLOG_INTERFACE_TRUE@ -ld-options`echo '' $(AM_CXXFLAGS) $(CXXFLAGS) | tr " " ","` \ - @BUILD_SWI_PROLOG_INTERFACE_TRUE@ -o $@ $+ \ - @BUILD_SWI_PROLOG_INTERFACE_TRUE@ -L$(top_builddir)/src/.libs -lppl \ -@@ -736,7 +736,7 @@ - @BUILD_SWI_PROLOG_INTERFACE_TRUE@ @extra_libraries@ - - @BUILD_SWI_PROLOG_INTERFACE_TRUE@pl_clpq$(EXEEXT): ppl_swiprolog.o pl_clpq.o pl_clpq.pl ../tests/clpq.pl | libppl_swiprolog.la --@BUILD_SWI_PROLOG_INTERFACE_TRUE@ plld -cc $(CC) -c++ $(CXX) -ld $(CXX) \ -+@BUILD_SWI_PROLOG_INTERFACE_TRUE@ plld -v -cc $(CC) -c++ $(CXX) -ld $(CXX) \ - @BUILD_SWI_PROLOG_INTERFACE_TRUE@ -ld-options`echo '' $(AM_CXXFLAGS) $(CXXFLAGS) | tr " " ","` \ - @BUILD_SWI_PROLOG_INTERFACE_TRUE@ -o $@ $+ \ - @BUILD_SWI_PROLOG_INTERFACE_TRUE@ -L$(top_builddir)/src/.libs -lppl \ -@@ -744,7 +744,7 @@ - @BUILD_SWI_PROLOG_INTERFACE_TRUE@ @extra_libraries@ - - @BUILD_SWI_PROLOG_INTERFACE_TRUE@pl_clpq2$(EXEEXT): ppl_swiprolog.o pl_clpq.o pl_clpq.pl ../tests/clpq2.pl | libppl_swiprolog.la --@BUILD_SWI_PROLOG_INTERFACE_TRUE@ plld -cc $(CC) -c++ $(CXX) -ld $(CXX) \ -+@BUILD_SWI_PROLOG_INTERFACE_TRUE@ plld -v -cc $(CC) -c++ $(CXX) -ld $(CXX) \ - @BUILD_SWI_PROLOG_INTERFACE_TRUE@ -ld-options`echo '' $(AM_CXXFLAGS) $(CXXFLAGS) | tr " " ","` \ - @BUILD_SWI_PROLOG_INTERFACE_TRUE@ -o $@ $+ \ - @BUILD_SWI_PROLOG_INTERFACE_TRUE@ -L$(top_builddir)/src/.libs -lppl \ diff --git a/ppl.spec b/ppl.spec index 19bfed7..65d0ff1 100644 --- a/ppl.spec +++ b/ppl.spec @@ -1,27 +1,26 @@ -Name: ppl -Version: 0.9 -Release: 25%{?dist} - -Summary: The Parma Polyhedra Library: a library of numerical abstractions -Group: Development/Libraries -License: GPLv2+ -URL: http://www.cs.unipr.it/ppl/ -Source0: ftp://ftp.cs.unipr.it/pub/ppl/releases/%{version}/%{name}-%{version}.tar.gz -Source1: ppl.hh -Source2: ppl_c.h -Source3: pwl.hh -Patch0: ppl-0.9-docfiles.patch -Patch1: ppl-0.9-configure.patch -Patch2: ppl-0.9-makefiles.patch -Patch3: ppl-0.9-cstdlib.patch -Patch4: ppl-0.9-swiprolog.patch +#%define opt %(test -x %{_bindir}/ocamlopt && echo 1 || echo 0) + +Name: ppl +Version: 0.10 +Release: 1%{?dist} + +Summary: The Parma Polyhedra Library: a library of numerical abstractions +Group: Development/Libraries +License: GPLv3+ +URL: http://www.cs.unipr.it/ppl/ +Source0: ftp://ftp.cs.unipr.it/pub/ppl/releases/%{version}/%{name}-%{version}.tar.gz +Source1: ppl.hh +Source2: ppl_c.h +Source3: pwl.hh +#Patch0: none +#Patch1: none #Icon: #Requires: Requires(post): /sbin/ldconfig Requires(postun): /sbin/ldconfig -BuildRequires: gmp-devel >= 4.1.3 -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root -#Prefix: /usr +BuildRequires: gmp-devel >= 4.1.3 +BuildRoot: %(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) +#Prefix: /usr %description The Parma Polyhedra Library (PPL) is a library for the manipulation of @@ -37,38 +36,38 @@ 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 +Summary: Development tools for the Parma Polyhedra Library C and C++ interfaces +Group: Development/Libraries +Requires: %{name} = %{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. +The header files, Autoconf macro and minimal documentation for +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} +Summary: Static archives for the Parma Polyhedra Library C and C++ interfaces +Group: Development/Libraries +Requires: %{name}-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 +Summary: Utilities using the Parma Polyhedra Library +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} +BuildRequires: glpk-devel >= 4.13 %description utils -This package contains the (mixed integer) linear programming solver ppl_lpsol +This package contains the mixed integer linear programming solver ppl_lpsol and the program ppl_lcdd for vertex/facet enumeration of convex polyhedra. %ifnarch ppc64 %package gprolog # The `gprolog' package is not available on ppc64: # the GNU Prolog interface must thus be disabled for that architecture. -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 +Summary: The GNU Prolog interface of the Parma Polyhedra Library +Group: Development/Libraries +BuildRequires: gprolog >= 1.2.19 +Requires: %{name} = %{version}-%{release}, %{name}-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. @@ -76,62 +75,93 @@ Install this package if you want to use the library in GNU Prolog programs. %ifnarch ppc64 %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} +Summary: The static archive for the GNU Prolog interface of the Parma Polyhedra Library +Group: Development/Libraries +Requires: %{name}-gprolog = %{version}-%{release} %description gprolog-static This package contains the static archive for the GNU Prolog interface of the Parma Polyhedra Library. %endif %package swiprolog -Summary: The SWI-Prolog interface of the Parma Polyhedra Library -Group: Development/Libraries -BuildRequires: pl-devel >= 5.6.57-2 -Requires: ppl = %{version}-%{release}, ppl-pwl = %{version}-%{release}, pl >= 5.6.57-2 +Summary: The SWI-Prolog interface of the Parma Polyhedra Library +Group: Development/Libraries +BuildRequires: pl-devel >= 5.6.57-2 +Requires: %{name} = %{version}-%{release}, %{name}-pwl = %{version}-%{release}, pl >= 5.6.57-2 %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. +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-devel >= 5.6.57-2, pl-static >= 5.6.57-2 -Requires: ppl-swiprolog = %{version}-%{release} +Summary: The static archive for the SWI-Prolog interface of the Parma Polyhedra Library +Group: Development/Libraries +BuildRequires: pl-devel >= 5.6.57-2, pl-static >= 5.6.57-2 +Requires: %{name}-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 +Summary: The YAP Prolog interface of the Parma Polyhedra Library +Group: Development/Libraries +BuildRequires: yap-devel >= 5.1.1 +Requires: %{name} = %{version}-%{release}, %{name}-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 +#%package ocaml +#Summary: The OCaml interface of the Parma Polyhedra Library +#Group: Development/Libraries +#BuildRequires: ocaml >= 3.09 +#Requires: %{name} = %{version}-%{release} +#%description ocaml +#This package adds Objective Caml (OCaml) support to the Parma +#Polyhedra Library. Install this package if you want to use the +#library in OCaml programs. + +#%package ocaml-devel +#Summary: The OCaml interface of the Parma Polyhedra Library +#Group: Development/Libraries +#Requires: %{name}-ocaml = %{version}-%{release} +#%description ocaml-devel +#This package contains libraries and signature files for developing +#applications using the OCaml interface of the Parma Polyhedra Library. + +%package java +Summary: The Java interface of the Parma Polyhedra Library +Group: Development/Libraries +BuildRequires: java-devel >= 1:1.6.0 +BuildRequires: jpackage-utils +Requires: java-devel >= 1:1.6.0 +Requires: jpackage-utils +Requires: %{name} = %{version}-%{release} +%description java +This package adds Java support to the Parma Polyhedra Library. +Install this package if you want to use the library in Java programs. + +%package java-javadoc +Summary: Javadocs for %{name}-java +Group: Documentation +Requires: %{name}-java = %{version}-%{release} +Requires: jpackage-utils +%description java-javadoc +This package contains the API documentation for Java interface of the Parma Polyhedra Library. + %package docs -Summary: Documentation for the Parma Polyhedra Library -Group: Documentation -Requires: ppl = %{version}-%{release} +Summary: Documentation for the Parma Polyhedra Library +Group: Documentation +Requires: %{name} = %{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 +Summary: The Parma Watchdog Library: a C++ library for watchdog timers +Group: Development/Libraries Requires(post): /sbin/ldconfig Requires(postun): /sbin/ldconfig %description pwl @@ -142,28 +172,34 @@ 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} +Summary: Development tools for the Parma Watchdog Library +Group: Development/Libraries +Requires: %{name}-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} +Summary: Static archive for the Parma Watchdog Library +Group: Development/Libraries +Requires: %{name}-pwl-devel = %{version}-%{release} %description pwl-static This package contains the static archive for the Parma Watchdog Library. +%package pwl-docs +Summary: Documentation for the Parma Watchdog Library +Group: Documentation +Requires: %{name}-pwl = %{version}-%{release} +%description pwl-docs +This package contains all the documentations required by programmers +using the Parma Watchdog Library (PWL). +Install this package if you want to program with the PWL. + %prep %setup -q -%patch0 -p1 -%patch1 -p1 -%patch2 -p1 -%patch3 -p1 -%patch4 -p1 +#%patch0 -p1 +#%patch1 -p1 %build CPPFLAGS="-I%{_includedir}/glpk" @@ -171,9 +207,11 @@ CPPFLAGS="-I%{_includedir}/glpk" CPPFLAGS="$CPPFLAGS -I%{_libdir}/gprolog-`gprolog --version 2>&1 | head -1 | sed -e "s/.* \([^ ]*\)$/\1/g"`/include" %endif CPPFLAGS="$CPPFLAGS -I%{_includedir}/Yap" -%configure --enable-shared --disable-rpath CPPFLAGS="$CPPFLAGS" +%configure --enable-shared --disable-rpath --enable-interfaces="c++ c gnu_prolog swi_prolog yap_prolog java" CPPFLAGS="$CPPFLAGS" 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 +sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' Watchdog/libtool +sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' Watchdog/libtool make %{?_smp_mflags} %install @@ -204,6 +242,12 @@ install -m644 %{SOURCE2} %{buildroot}/%{_includedir}/ppl_c.h mv %{buildroot}/%{_includedir}/pwl.hh %{buildroot}/%{_includedir}/pwl-${normalized_arch}.hh install -m644 %{SOURCE3} %{buildroot}/%{_includedir}/pwl.hh +# Install the Javadocs for ppl-java. +mkdir -p %{buildroot}%{_javadocdir} +mv \ +%{buildroot}/%{_datadir}/doc/%{name}/ppl-user-java-interface-%{version}-html \ +%{buildroot}%{_javadocdir}/%{name}-java + %files %defattr(-,root,root,-) %doc %{_datadir}/doc/%{name}/BUGS @@ -212,24 +256,27 @@ install -m644 %{SOURCE3} %{buildroot}/%{_includedir}/pwl.hh %doc %{_datadir}/doc/%{name}/ChangeLog %doc %{_datadir}/doc/%{name}/NEWS %doc %{_datadir}/doc/%{name}/README +%doc %{_datadir}/doc/%{name}/README.configure %doc %{_datadir}/doc/%{name}/TODO %doc %{_datadir}/doc/%{name}/gpl.* %{_libdir}/libppl.so.* %{_libdir}/libppl_c.so.* +%{_bindir}/ppl-config +%{_mandir}/man1/ppl-config.1.gz %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 +%{_mandir}/man3/libppl.3.gz +%{_mandir}/man3/libppl_c.3.gz %{_datadir}/aclocal/ppl.m4 +%{_datadir}/aclocal/ppl_c.m4 %files static %defattr(-,root,root,-) @@ -275,26 +322,61 @@ install -m644 %{SOURCE3} %{buildroot}/%{_includedir}/pwl.hh %{_libdir}/%{name}/ppl_yap.pl %{_libdir}/%{name}/ppl_yap.so -%files yap-static +#%files ocaml +#%defattr(-,root,root,-) +#%doc interfaces/OCaml/README.ocaml +#%{_libdir}/%{name}/ppl_ocaml.cma +#%{_libdir}/%{name}/ppl_ocaml.cmi +#%{_libdir}/%{name}/ppl_ocaml_globals.cmi + +#%files ocaml-devel +#%defattr(-,root,root,-) +#%{_libdir}/%{name}/libppl_ocaml.a +#%{_libdir}/%{name}/ppl_ocaml.mli + +%files java +%defattr(-,root,root,-) +%doc interfaces/Java/README.java +%{_libdir}/%{name}/libppl_java.so +%{_libdir}/%{name}/ppl_java.jar + +%files java-javadoc %defattr(-,root,root,-) -%{_libdir}/%{name}/ppl_yap.a +%{_javadocdir}/%{name}-java %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 +%doc %{_datadir}/doc/%{name}/ppl-user-%{version}-html/ +%doc %{_datadir}/doc/%{name}/ppl-user-c-interface-%{version}-html/ +#%doc %{_datadir}/doc/%{name}/ppl-user-ocaml-interface-%{version}-html/ +%doc %{_datadir}/doc/%{name}/ppl-user-prolog-interface-%{version}-html/ +%doc %{_datadir}/doc/%{name}/ppl-user-%{version}.pdf +%doc %{_datadir}/doc/%{name}/ppl-user-c-interface-%{version}.pdf +%doc %{_datadir}/doc/%{name}/ppl-user-java-interface-%{version}.pdf +#%doc %{_datadir}/doc/%{name}/ppl-user-ocaml-interface-%{version}.pdf +%doc %{_datadir}/doc/%{name}/ppl-user-prolog-interface-%{version}.pdf +%doc %{_datadir}/doc/%{name}/ppl-user-%{version}.ps.gz +%doc %{_datadir}/doc/%{name}/ppl-user-c-interface-%{version}.ps.gz +%doc %{_datadir}/doc/%{name}/ppl-user-java-interface-%{version}.ps.gz +#%doc %{_datadir}/doc/%{name}/ppl-user-ocaml-interface-%{version}.ps.gz +%doc %{_datadir}/doc/%{name}/ppl-user-prolog-interface-%{version}.ps.gz %files pwl %defattr(-,root,root,-) -%doc Watchdog/BUGS Watchdog/COPYING Watchdog/CREDITS Watchdog/ChangeLog Watchdog/NEWS Watchdog/README +%doc %{_datadir}/doc/pwl/BUGS +%doc %{_datadir}/doc/pwl/COPYING +%doc %{_datadir}/doc/pwl/CREDITS +%doc %{_datadir}/doc/pwl/ChangeLog +%doc %{_datadir}/doc/pwl/NEWS +%doc %{_datadir}/doc/pwl/README +%doc %{_datadir}/doc/pwl/gpl.* %{_libdir}/libpwl.so.* %files pwl-devel %defattr(-,root,root,-) -%doc Watchdog/README.doc +%doc Watchdog/doc/README.doc %{_includedir}/pwl*.hh %{_libdir}/libpwl.so @@ -302,6 +384,14 @@ install -m644 %{SOURCE3} %{buildroot}/%{_includedir}/pwl.hh %defattr(-,root,root,-) %{_libdir}/libpwl.a +%files pwl-docs +%defattr(-,root,root,-) +%doc %{_datadir}/doc/pwl/README.doc +%doc %{_datadir}/doc/pwl/fdl.* +%doc %{_datadir}/doc/pwl/pwl-user-0.5-html/ +%doc %{_datadir}/doc/pwl/pwl-user-0.5.pdf +%doc %{_datadir}/doc/pwl/pwl-user-0.5.ps.gz + %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %post pwl -p /sbin/ldconfig @@ -311,6 +401,11 @@ install -m644 %{SOURCE3} %{buildroot}/%{_includedir}/pwl.hh rm -rf %{buildroot} %changelog +* Thu Nov 4 2008 Roberto Bagnara 0.10-1 +- Updated and extended for PPL 0.10. In particular, the `ppl-config' + program, being useful also for non-development activities, has been + brought back to the main package. + * Tue Sep 30 2008 Roberto Bagnara 0.9-25 - The `swiprolog' package now requires pl >= 5.6.57-2. diff --git a/sources b/sources index db92250..691b06a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -4096c2927b36fbf7c5329a53b035bc33 ppl-0.9.tar.gz +610a60c9bda8a36bd41f90b732f906b3 ppl-0.10.tar.gz