--- core++-1.7.orig/debian/watch +++ core++-1.7/debian/watch @@ -0,0 +1,2 @@ +version=3 +http://cs.nyu.edu/exact/core/download/core_v([\d\.]+)/core_v(.*)_std.tgz --- core++-1.7.orig/debian/compat +++ core++-1.7/debian/compat @@ -0,0 +1 @@ +5 --- core++-1.7.orig/debian/copyright +++ core++-1.7/debian/copyright @@ -0,0 +1,128 @@ +This package was debianized by Joachim Reichel on +Thu, 18 Mar 2004 19:11:31 +0100. + +It was downloaded from http://www.cs.nyu.edu/exact/core/. + +The Debian packaging is (c) 2004, 2005, 2006 Joachim Reichel + and is licensed under the BSD license, +which can be found in /usr/share/common-licenses/BSD. + +The package is not in main, but in non-free since parts of it are licensed +under the QPL. This license is not DFSG-free, but it permits to autobuild +the package and to redistribute it in the non-free archive. + +Upstream Authors: Chee Yap (yap@cs.nyu.edu) + Sylvain Pion (Sylvain.Pion@mpi-sb.mpg.de) + Zilin Du (zilin@cs.nyu.edu) + Vikram Sharma (sharma@cs.nyu.edu) + +Copyright: + +The Core Library is licensed under the terms of the Q Public License +version 1.0. The text of the license can be found below. + + + + THE Q PUBLIC LICENSE + version 1.0 + + Copyright (C) 1999-2000 Troll Tech AS, Norway. + Everyone is permitted to copy and + distribute this license document. + +The intent of this license is to establish freedom to share and change the +software regulated by this license under the open source model. + +This license applies to any software containing a notice placed by the +copyright holder saying that it may be distributed under the terms of +the Q Public License version 1.0. Such software is herein referred to as +the Software. This license covers modification and distribution of the +Software, use of third-party application programs based on the Software, +and development of free software which uses the Software. + + Granted Rights + +1. You are granted the non-exclusive rights set forth in this license + provided you agree to and comply with any and all conditions in this + license. Whole or partial distribution of the Software, or software + items that link with the Software, in any form signifies acceptance of + this license. + +2. You may copy and distribute the Software in unmodified form provided + that the entire package, including - but not restricted to - copyright, + trademark notices and disclaimers, as released by the initial developer + of the Software, is distributed. + +3. You may make modifications to the Software and distribute your + modifications, in a form that is separate from the Software, such as + patches. The following restrictions apply to modifications: + + a. Modifications must not alter or remove any copyright notices in + the Software. + + b. When modifications to the Software are released under this + license, a non-exclusive royalty-free right is granted to the + initial developer of the Software to distribute your modification + in future versions of the Software provided such versions remain + available under these terms in addition to any other license(s) of + the initial developer. + +4. You may distribute machine-executable forms of the Software or + machine-executable forms of modified versions of the Software, provided + that you meet these restrictions: + + a. You must include this license document in the distribution. + + b. You must ensure that all recipients of the machine-executable forms + are also able to receive the complete machine-readable source code + to the distributed Software, including all modifications, without + any charge beyond the costs of data transfer, and place prominent + notices in the distribution explaining this. + + c. You must ensure that all modifications included in the + machine-executable forms are available under the terms of this + license. + +5. You may use the original or modified versions of the Software to + compile, link and run application programs legally developed by you + or by others. + +6. You may develop application programs, reusable components and other + software items that link with the original or modified versions of the + Software. These items, when distributed, are subject to the following + requirements: + + a. You must ensure that all recipients of machine-executable forms of + these items are also able to receive and use the complete + machine-readable source code to the items without any charge + beyond the costs of data transfer. + + b. You must explicitly license all recipients of your items to use + and re-distribute original and modified versions of the items in + both machine-executable and source code forms. The recipients must + be able to do so without any charges whatsoever, and they must be + able to re-distribute to anyone they choose. + + + c. If the items are not available to the general public, and the + initial developer of the Software requests a copy of the items, + then you must supply one. + + Limitations of Liability + +In no event shall the initial developers or copyright holders be liable +for any damages whatsoever, including - but not restricted to - lost +revenue or profits or other direct, indirect, special, incidental or +consequential damages, even if they have been advised of the possibility +of such damages, except to the extent invariable law, if any, provides +otherwise. + + No Warranty + +The Software and this license document are provided AS IS with NO WARRANTY +OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS +FOR A PARTICULAR PURPOSE. + Choice of Law + +This license is governed by the Laws of Norway. Disputes shall be settled +by Oslo City Court. --- core++-1.7.orig/debian/libcore++-dev.install +++ core++-1.7/debian/libcore++-dev.install @@ -0,0 +1,6 @@ +usr/include/* usr/include +usr/lib/lib*.a usr/lib +usr/lib/lib*.so usr/lib +usr/share/doc/core/ANNOUNCEMENT usr/share/doc/libcore++1c2 +usr/share/doc/core/FAQs usr/share/doc/libcore++1c2 +usr/share/doc/core/README usr/share/doc/libcore++1c2 --- core++-1.7.orig/debian/control +++ core++-1.7/debian/control @@ -0,0 +1,46 @@ +Source: core++ +Section: non-free/math +Priority: optional +Maintainer: Joachim Reichel +Build-Depends: debhelper (>= 5), dpatch, libgmp-dev, texlive-latex-base, texlive-latex-base, gawk | awk, ghostscript +Standards-Version: 3.8.0 +Homepage: http://www.cs.nyu.edu/exact/core_pages/intro.html +XS-Autobuild: yes + +Package: libcore++1c2 +Section: non-free/libs +Architecture: any +Depends: ${shlibs:Depends} +Conflicts: libcore++1 +Replaces: libcore++1 +Description: C/C++ library for robust computation + The Core Library is a collection of C/C++ classes for exact computation + with real algebraic numbers. It embodies a precision-driven approach and is + useful for robust numerical (especially geometric) algorithms. + +Package: libcore++-dev +Section: non-free/libdevel +Architecture: any +Depends: libcore++1c2 (= ${binary:Version}), libgmp-dev +Description: C/C++ library for robust computation (development files) + The Core Library is a collection of C/C++ classes for exact computation + with real algebraic numbers. It embodies a precision-driven approach and is + useful for robust numerical (especially geometric) algorithms. + +Package: libcore++-doc +Section: non-free/doc +Architecture: all +Depends: libcore++1c2 (>= ${binary:Version}) +Description: C/C++ library for robust computation (documentation) + The Core Library is a collection of C/C++ classes for exact computation + with real algebraic numbers. It embodies a precision-driven approach and is + useful for robust numerical (especially geometric) algorithms. + +Package: libcore++-demo +Section: non-free/devel +Architecture: all +Depends: libcore++-dev (>= ${binary:Version}), libcore++1c2 (>= ${binary:Version}) +Description: C/C++ library for robust computation (demos) + The Core Library is a collection of C/C++ classes for exact computation + with real algebraic numbers. It embodies a precision-driven approach and is + useful for robust numerical (especially geometric) algorithms. --- core++-1.7.orig/debian/libcore++-demo.install +++ core++-1.7/debian/libcore++-demo.install @@ -0,0 +1 @@ +usr/share/doc/core/examples* usr/share/doc/libcore++1c2 --- core++-1.7.orig/debian/changelog +++ core++-1.7/debian/changelog @@ -0,0 +1,99 @@ +core++ (1.7-11.1) unstable; urgency=low + + * NMU. Change dependencies libgmp3-dev --> libgmp-dev. + + -- Steve M. Robbins Wed, 16 Mar 2011 21:16:59 -0500 + +core++ (1.7-11) unstable; urgency=low + + * Add patch g++-4.3-compatibility.dpatch. + * debian/control: Adjust dependencies after TeX and Ghostscript transitions. + * debian/rules: Remove workaround for #428876 and #435229 (Closes: #488113). + * Update Standards-Version to 3.8.0 (explain in debian/copyright why package + is in non-free). + + -- Joachim Reichel Mon, 30 Jun 2008 19:14:51 +0200 + +core++ (1.7-10) unstable; urgency=low + + * Add patch bugfix-size-type.dpatch. + * Update patch make-library.dpatch: link extension libraries with + libcore++.so. + * debian/rules: Fix workaround for #428876 and #435229, extend to hppa and + mips. + + -- Joachim Reichel Wed, 19 Mar 2008 18:18:19 +0100 + +core++ (1.7-9) unstable; urgency=low + + * debian/rules: Add workaround for #428876 and #435229. + * debian/control: Add Homepage: field. + * Update Standards-Version to 3.7.3 (no changes needed). + + -- Joachim Reichel Tue, 05 Feb 2008 19:19:42 +0100 + +core++ (1.7-8) unstable; urgency=low + + * debian/rules: Remove bashisms (thanks to Barry deFreese). + * Add watch file. + + -- Joachim Reichel Mon, 16 Jul 2007 17:25:38 +0200 + +core++ (1.7-7) unstable; urgency=low + + * debian/control: Use Build-Depends instead of Build-Depends-Indep + to work around non-policy-conforming autobuilders. + * debian/control: Add tag XS-Autobuild. + * debian/copyright: Add note about autobuilding. + * debian/control: Make package binNMU-safe. + * debian/control: Add texlive alternatives to Build-Depends. + + -- Joachim Reichel Mon, 18 Dec 2006 18:24:27 +0100 + +core++ (1.7-6) unstable; urgency=low + + * Add patch g++-4.1-compatibility.dpatch. + * Update Standards-Version to 3.7.2 (no changes needed). + * debian/compat: Use debhelper compatibility level 5. + * debian/rules: Adjust dependency on debhelper accordingly. + + -- Joachim Reichel Mon, 19 Jun 2006 20:51:32 +0200 + +core++ (1.7-5) unstable; urgency=low + + * patch bugfix-avoid-internal-gmp-functions added + (do not use __gmp_free_func). + * patch makefile-output.dpatch updated + (whitespace changes for compatibility with newer make versions). + + -- Joachim Reichel Tue, 18 Apr 2006 00:21:11 +0200 + +core++ (1.7-4) unstable; urgency=low + + * patch bugfix-operatorplusplus.dpatch added. + + -- Joachim Reichel Wed, 12 Oct 2005 18:17:55 +0200 + +core++ (1.7-3) unstable; urgency=low + + * patch bugfix-filter.dpatch added. + + -- Joachim Reichel Sat, 27 Aug 2005 12:39:05 +0200 + +core++ (1.7-2) unstable; urgency=low + + * transition to g++-4.0. + - libcore++1 renamed to libcore++1c2, + Conflicts: libcore++1 and Replaces: libcore++1c2 added. + - debian/patches/g++-4.0-compatibility.dpatch added. + * debian/libcore++1c2.shlibs added. + * Updated Standards-Version to 3.6.2. + + -- Joachim Reichel Fri, 15 Jul 2005 00:38:55 +0200 + +core++ (1.7-1) unstable; urgency=low + + * New upstream release. + * First upload to Debian archive. (Closes: #274923) + + -- Joachim Reichel Thu, 25 Nov 2004 08:28:20 +0100 --- core++-1.7.orig/debian/libcore++1c2.shlibs +++ core++-1.7/debian/libcore++1c2.shlibs @@ -0,0 +1,4 @@ +libcore++ 1 libcore++1c2 +libcorex++_level1 1 libcore++1c2 +libcorex++_level2 1 libcore++1c2 +libcorex++_level3 1 libcore++1c2 --- core++-1.7.orig/debian/libcore++-doc.install +++ core++-1.7/debian/libcore++-doc.install @@ -0,0 +1,4 @@ +usr/share/doc/core/ANNOUNCEMENT_* usr/share/doc/libcore++1c2 +usr/share/doc/core/README.doc usr/share/doc/libcore++1c2 +usr/share/doc/core/papers usr/share/doc/libcore++1c2 +usr/share/doc/core/*.pdf usr/share/doc/libcore++1c2 --- core++-1.7.orig/debian/libcore++1c2.install +++ core++-1.7/debian/libcore++1c2.install @@ -0,0 +1 @@ +usr/lib/lib*.so.* usr/lib --- core++-1.7.orig/debian/rules +++ core++-1.7/debian/rules @@ -0,0 +1,153 @@ +#!/usr/bin/make -f +# Sample debian/rules that uses debhelper. +# GNU copyright 1997 to 1999 by Joey Hess. + +# Uncomment this to turn on verbose mode. +# export DH_VERBOSE=1 + +ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS))) + CFLAGS += -g +endif +ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) + INSTALL_PROGRAM += -s +endif + +# shared library version +SOVERSION=1.0.0 +SOMAJOR=1 + +configure: configure-stamp +configure-stamp: patch + dh_testdir + # Add here commands to configure the package. + touch configure-stamp + +build-arch: configure-stamp build-arch-stamp +build-arch-stamp: + dh_testdir + # Add here commands to compile the package. + $(MAKE) CC=gcc CXX=g++ VAR= LINKAGE=shared GMP_PREFIX=/usr VERSION=$(SOVERSION) MAJOR=$(SOMAJOR) corelib corex + # remove static libs and object files and rebuild + $(MAKE) CC=gcc CXX=g++ VAR= LINKAGE=static GMP_PREFIX=/usr VERSION=$(SOVERSION) MAJOR=$(SOMAJOR) veryclean + $(MAKE) CC=gcc CXX=g++ VAR= LINKAGE=static GMP_PREFIX=/usr VERSION=$(SOVERSION) MAJOR=$(SOMAJOR) corelib corex +ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE)) + # run testsuite + # copy testsuite, since 'make veryclean' does not remove all stuff + cp -a progs progs.check + cd progs.check; \ + LD_LIBRARY_PATH=`pwd`/../lib:$LD_LIBRARY_PATH; \ + export LD_LIBRARAY_PATH; \ + $(MAKE) CC=gcc CXX=g++ test moretest 2>&1 | tee log + grep -i error progs.check/log || true + rm -r progs.check +endif + touch build-arch-stamp + +build-indep: configure-stamp build-indep-stamp +build-indep-stamp: + dh_testdir + # Add here commands to compile the package. + cd doc; $(MAKE) ps pdf history + touch build-indep-stamp + +build: build-arch build-indep + +clean: clean-patched unpatch +clean-patched: patch + dh_testdir + dh_testroot + rm -f build-indep-stamp build-arch-stamp configure-stamp + # Add here commands to clean up after the build process. + $(MAKE) CC=gcc CXX=g++ VAR= LINKAGE=shared GMP_PREFIX=/usr VERSION=$(SOVERSION) MAJOR=$(SOMAJOR) veryclean + cd doc; $(MAKE) clean + if test -d progs.check; then rm -r progs.check; fi + if test -d examples; then rm -r examples; fi + dh_clean + +install: build + dh_testdir + dh_testroot + dh_clean -k + dh_installdirs + + # Add here commands to install the package into debian/tmp + mkdir -p debian/tmp/usr/include + mkdir -p debian/tmp/usr/lib + mkdir -p debian/tmp/usr/share/doc/core/tutorial + cp -a inc/CORE inc/CORE.h debian/tmp/usr/include + + cp -a lib/lib* debian/tmp/usr/lib + cd debian/tmp/usr/lib; \ + for LIB in libcore++ libcorex++_level1 \ + libcorex++_level2 libcorex++_level3; do \ + ln -s $$LIB.so.$(SOVERSION) $$LIB.so.$(SOMAJOR); \ + ln -s $$LIB.so.$(SOVERSION) $$LIB.so; \ + done + + cp -a doc/*.pdf debian/tmp/usr/share/doc/core + + cp -a progs examples + echo 'CXXFLAGS=-O2 -Wall -DNDEBUG' > examples/Make.options + echo 'CORE_INC=' >> examples/Make.options + echo 'CORE_LIB=-lcore++ -lgmp -lm' >> examples/Make.options + tar chf - --exclude examples/convert.sh examples | gzip --best >debian/tmp/usr/share/doc/core/examples.tar.gz + rm -r examples + + cp -a ANNOUNCEMENT debian/tmp/usr/share/doc/core + cp -a FAQs debian/tmp/usr/share/doc/core + cp -a README debian/tmp/usr/share/doc/core + cp -a doc/ANNOUNCEMENT_* debian/tmp/usr/share/doc/core + cp -a doc/papers debian/tmp/usr/share/doc/core + cp -a doc/README debian/tmp/usr/share/doc/core/README.doc + + dh_install --sourcedir=debian/tmp --fail-missing + + mkdir -p debian/libcore++-dev/usr/share/doc + mkdir -p debian/libcore++-doc/usr/share/doc + mkdir -p debian/libcore++-demo/usr/share/doc + ln -s libcore++1c2 debian/libcore++-dev/usr/share/doc/libcore++-dev + ln -s libcore++1c2 debian/libcore++-doc/usr/share/doc/libcore++-doc + ln -s libcore++1c2 debian/libcore++-demo/usr/share/doc/libcore++-demo + +# Build architecture-independent files here. +binary-indep: build install + dh_testdir -i + dh_testroot -i + dh_link -i + dh_compress -i -X\.tex -X\.bib + dh_fixperms -i + dh_installdeb -i + dh_gencontrol -i + dh_md5sums -i + dh_builddeb -i + +# Build architecture-dependent files here. +binary-arch: build install + install -D -m644 debian/libcore++1c2.shlibs debian/libcore++1c2/DEBIAN/shlibs + dh_testdir -a + dh_testroot -a + dh_installdocs -plibcore++1c2 debian/copyright + dh_installchangelogs -plibcore++1c2 + dh_link -a + dh_strip -a + dh_compress -a -X\.tex -X\.bib + dh_fixperms -a + dh_makeshlibs -a + dh_installdeb -a + dh_shlibdeps -a -ldebian/libcore++1c2/usr/lib + dh_gencontrol -a + dh_md5sums -a + dh_builddeb -a + +binary: binary-indep binary-arch + +patch: patch-stamp +patch-stamp: + dpatch apply-all + touch patch-stamp + +unpatch: + dpatch deapply-all + rm -fr patch-stamp debian/patched + +.PHONY: build clean binary-indep binary-arch binary install configure patch unpatch --- core++-1.7.orig/debian/patches/bugfix-avoid-internal-gmp-functions.dpatch +++ core++-1.7/debian/patches/bugfix-avoid-internal-gmp-functions.dpatch @@ -0,0 +1,62 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## bugfix-avoid-internal-gmp-functions.dpatch by Joachim Reichel +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Avoid calling internal GMP functions like __gmp_free_func. + +@DPATCH@ +diff -urNad core++-1.7~/inc/CORE/BigInt.h core++-1.7/inc/CORE/BigInt.h +--- core++-1.7~/inc/CORE/BigInt.h 2006-04-18 00:05:42.000000000 +0200 ++++ core++-1.7/inc/CORE/BigInt.h 2006-04-18 00:05:57.000000000 +0200 +@@ -40,18 +40,6 @@ + + CORE_BEGIN_NAMESPACE + +-/**************** Auxiliary classes ****************/ +-/* this is the same as gmp_allocated_string in gmp-impl.h */ +-struct _alloc_cstr { +- char *str; +- _alloc_cstr(char *s) { +- str = s; +- } +- ~_alloc_cstr() { +- __gmp_free_func(str, strlen(str)+1); +- } +-}; +- + class BigIntRep : public RCRepImpl { + public: + BigIntRep() { +@@ -282,8 +270,12 @@ + } + /// convert to std::string + std::string get_str(int base = 10) const { +- _alloc_cstr t(mpz_get_str(0, base, get_mp())); +- return std::string(t.str); ++ int n = mpz_sizeinbase (get_mp(), base) + 2; ++ char *buffer = new char[n]; ++ mpz_get_str(buffer, base, get_mp()); ++ std::string result(buffer); ++ delete [] buffer; ++ return result; + } + //@} + +diff -urNad core++-1.7~/inc/CORE/BigRat.h core++-1.7/inc/CORE/BigRat.h +--- core++-1.7~/inc/CORE/BigRat.h 2006-04-18 00:05:42.000000000 +0200 ++++ core++-1.7/inc/CORE/BigRat.h 2006-04-18 00:05:43.000000000 +0200 +@@ -307,8 +307,12 @@ + } + /// convert to std::string + std::string get_str(int base = 10) const { +- _alloc_cstr t(mpq_get_str(0, base, get_mp())); +- return std::string(t.str); ++ int n = mpz_sizeinbase(mpq_numref(get_mp()), base) + mpz_sizeinbase(mpq_denref(get_mp()), base) + 3; ++ char *buffer = new char[n]; ++ mpq_get_str(buffer, base, get_mp()); ++ std::string result(buffer); ++ delete [] buffer; ++ return result; + } + //@} + --- core++-1.7.orig/debian/patches/documentation-paths.dpatch +++ core++-1.7/debian/patches/documentation-paths.dpatch @@ -0,0 +1,205 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## documentation-paths.dpatch by Joachim Reichel +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: update paths in demos and documentation + +@DPATCH@ +diff -urNad core++-1.7/progs/Makefile core++-1.7/progs/Makefile +--- core++-1.7/progs/Makefile Tue Nov 16 22:05:54 2004 ++++ core++-1.7/progs/Makefile Tue Nov 16 22:05:56 2004 +@@ -1,4 +1,4 @@ +-# Makefile for all examples in ${CORE}/progs ++# Makefile for all examples in /usr/share/doc/libcore++-demo/examples + ############################################################ + + ############################################################ +diff -urNad core++-1.7/progs/README core++-1.7/progs/README +--- core++-1.7/progs/README Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/README Tue Nov 16 22:05:56 2004 +@@ -1,14 +1,14 @@ + ************************************************************ +-file: README for $(CORE_PATH)/progs ++file: README for /usr/share/doc/libcore++-demo/examples + $Id: README,v 1.11 2004/10/04 16:58:03 exact Exp $ + ************************************************************ + +-Files in this subdirectory, $(CORE_PATH)/progs: ++Files in this subdirectory, /usr/share/doc/libcore++-demo/examples: + README -- this file + Makefile -- to make all examples + Make.sh -- shell script called by Makefile + +-Subdirectories in $(CORE_PATH)/progs contain sample ++Subdirectories in /usr/share/doc/libcore++-demo/examples contain sample + programs that use the Core library, testing and + illustrating usage and features of our library. + If you want to compile and build your own CORE programs, +diff -urNad core++-1.7/progs/bareiss/README core++-1.7/progs/bareiss/README +--- core++-1.7/progs/bareiss/README Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/bareiss/README Tue Nov 16 22:05:56 2004 +@@ -2,7 +2,7 @@ + + Implementation of the Bareiss algorithm for computing determinants + of matrices. This version performs pivoting +-(compare Gaussian.cc in ${CORE}/progs/gaussian). ++(compare Gaussian.cc in /usr/share/doc/libcore++-demo/examples/gaussian). + + The input matrices are hard-coded. + +diff -urNad core++-1.7/progs/bareiss/bareiss.cpp core++-1.7/progs/bareiss/bareiss.cpp +--- core++-1.7/progs/bareiss/bareiss.cpp Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/bareiss/bareiss.cpp Tue Nov 16 22:05:56 2004 +@@ -4,7 +4,7 @@ + Purpose: Implementation of the Bareiss algorithm for + computing determinants of matrices. + This version performs pivoting +- (cf. Gaussian.cc in ${CORE}/progs/gaussian) ++ (cf. Gaussian.cc in /usr/share/doc/libcore++-demo/examples/gaussian) + The book "Fundamental Problems of Algorithmic Algebra", + by C.Yap (Oxford U.Press, 2000) treats this algorithm. + +diff -urNad core++-1.7/progs/compare/README core++-1.7/progs/compare/README +--- core++-1.7/progs/compare/README Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/compare/README Tue Nov 16 22:05:56 2004 +@@ -125,7 +125,7 @@ + + + 3) For further notes on this topic, see also the +- subdirectory ${CORE}/progs/sumOfSqrts. ++ subdirectory /usr/share/doc/libcore++-demo/examples/sumOfSqrts. + + ================================================================== + POSTSCRIPT (July, 2000): +diff -urNad core++-1.7/progs/fileIO/README core++-1.7/progs/fileIO/README +--- core++-1.7/progs/fileIO/README Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/fileIO/README Tue Nov 16 22:05:56 2004 +@@ -14,7 +14,7 @@ + fileIO.cpp -- testing file I/O facilities for BigInt + -- the analogous I/O facilities for BigFloat + can be found in the files log2.cpp and +- pi.cpp under COREPATH/progs/hypergeom/const. ++ pi.cpp under /usr/share/doc/libcore++-demo/examples/hypergeom/const. + stringIO.cpp -- testing string I/O facilities + IOspeed.cpp -- shows that storing and reading in hex or binary is + much faster than in base 10. +diff -urNad core++-1.7/progs/generic/README core++-1.7/progs/generic/README +--- core++-1.7/progs/generic/README Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/generic/README Tue Nov 16 22:05:56 2004 +@@ -6,7 +6,7 @@ + This directory contains generic instructions for compiling and + building user's own CORE programs. The most important file here + is the Makefile program. It assumes that your program is found in +- some directory under $(CORE_PATH)/progs/. ++ some directory under /usr/share/doc/libcore++-demo/examples/. + + The sample program (sample.cpp) is intended to be run at any CORE + Accuracy level (1, 2, 3, 4). Try it and see! +diff -urNad core++-1.7/progs/heron/heron.m core++-1.7/progs/heron/heron.m +--- core++-1.7/progs/heron/heron.m Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/heron/heron.m Tue Nov 16 22:05:56 2004 +@@ -1,7 +1,7 @@ + # file: heron + # To test heron's formula and compare results + # with table published by Kahan +-# (see also ${CORE}/progs/heron) ++# (see also /usr/share/doc/libcore++-demo/examples/heron) + # $Id: heron.m,v 1.1.1.1 2002/02/28 07:55:45 exact Exp $ + + # REMARKS: with Digits = 13, +diff -urNad core++-1.7/progs/hypergeom/README core++-1.7/progs/hypergeom/README +--- core++-1.7/progs/hypergeom/README Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/hypergeom/README Tue Nov 16 22:05:56 2004 +@@ -1,4 +1,4 @@ +-file: README CORE/progs/hyperGeom ++file: README /usr/share/doc/libcore++-demo/examples/hyperGeom + Since Core Library Version 1.4 + + $Id: README,v 1.9 2004/10/04 16:58:34 exact Exp $ +diff -urNad core++-1.7/progs/hypergeom/const/README core++-1.7/progs/hypergeom/const/README +--- core++-1.7/progs/hypergeom/const/README Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/hypergeom/const/README Tue Nov 16 22:05:56 2004 +@@ -1,4 +1,4 @@ +-file: README CORE/progs/hyperGeom/const ++file: README /usr/share/doc/libcore++-demo/examples/hyperGeom/const + Since Core Library Version 1.4 + + $Id: README,v 1.4 2004/10/04 16:58:36 exact Exp $ +diff -urNad core++-1.7/progs/hypergeom/timing/README core++-1.7/progs/hypergeom/timing/README +--- core++-1.7/progs/hypergeom/timing/README Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/hypergeom/timing/README Tue Nov 16 22:05:56 2004 +@@ -1,4 +1,4 @@ +-file: README CORE/progs/hyperGeom/timing ++file: README /usr/share/doc/libcore++-demo/examples/hyperGeom/timing + Since Core Library Version 1.4 + + $Id: README,v 1.3 2004/10/04 16:58:39 exact Exp $ +diff -urNad core++-1.7/progs/kahan/README core++-1.7/progs/kahan/README +--- core++-1.7/progs/kahan/README Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/kahan/README Tue Nov 16 22:05:56 2004 +@@ -47,4 +47,4 @@ + Kahan remarked that our system had to do "theorem proving" to + accomplish this feat. In a sense, this is right! Our system has + some inherent ability to prove theorems. See our ruler-and-compass +-geometric theorem prover under ${CORE}/progs/prover/. ++geometric theorem prover under /usr/share/doc/libcore++-demo/examples/prover/. +diff -urNad core++-1.7/progs/pi/README core++-1.7/progs/pi/README +--- core++-1.7/progs/pi/README Fri Nov 12 22:59:18 2004 ++++ core++-1.7/progs/pi/README Tue Nov 16 22:06:30 2004 +@@ -28,7 +28,7 @@ + + Files in this directory: + README -- This file +- Makefile -- Assumes the current directory is $(CORE)/progs/pi ++ Makefile -- Assumes the current directory is /usr/share/doc/libcore++-demo/examples/pi + pi.cpp -- Computes Pi using Machin's formula. + newPi.cpp -- Computes Pi using various algorithms + (improved Brent's or improved Machin's) +diff -urNad core++-1.7/progs/testFilter/README core++-1.7/progs/testFilter/README +--- core++-1.7/progs/testFilter/README Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/testFilter/README Tue Nov 16 22:05:56 2004 +@@ -5,7 +5,7 @@ + Various sample programs that test the effectiveness + of the BFS filter we implemented. + +-We took other test programs in under ${CORE_PATH}/progs ++We took other test programs in under /usr/share/doc/libcore++-demo/examples + such as "gaussian" and "chull". + + testFilter.cc -- testing the correctness of filter +diff -urNad core++-1.7/progs/testFilter/testFilter.cpp core++-1.7/progs/testFilter/testFilter.cpp +--- core++-1.7/progs/testFilter/testFilter.cpp Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/testFilter/testFilter.cpp Tue Nov 16 22:05:56 2004 +@@ -5,7 +5,7 @@ + to test the effectiveness of our implementation + of the BFS filter. + +- Please see the README file in $(CORE_PATH)/progs/gaussian ++ Please see the README file in /usr/share/doc/libcore++-demo/examples/gaussian + for details about the original program. + + Usage: +diff -urNad core++-1.7/progs/testFilter/timeFilter.cpp core++-1.7/progs/testFilter/timeFilter.cpp +--- core++-1.7/progs/testFilter/timeFilter.cpp Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/testFilter/timeFilter.cpp Tue Nov 16 22:05:56 2004 +@@ -5,7 +5,7 @@ + to test the effectiveness of our implementation + of the BFS filter. + +- Please see the README file in $(CORE_PATH)/progs/gaussian ++ Please see the README file in /usr/share/doc/libcore++-demo/examples/gaussian + for details about the original program. + + Usage: +diff -urNad core++-1.7/progs/testFilter/timeFilter1.cpp core++-1.7/progs/testFilter/timeFilter1.cpp +--- core++-1.7/progs/testFilter/timeFilter1.cpp Tue Nov 16 22:05:53 2004 ++++ core++-1.7/progs/testFilter/timeFilter1.cpp Tue Nov 16 22:05:56 2004 +@@ -5,7 +5,7 @@ + to test the effectiveness of our implementation + of the BFS filter. + +- Please see the README file in $(CORE_PATH)/progs/gaussian ++ Please see the README file in /usr/share/doc/libcore++-demo/examples/gaussian + for details about the original program. + + Usage: --- core++-1.7.orig/debian/patches/bugfix-filter.dpatch +++ core++-1.7/debian/patches/bugfix-filter.dpatch @@ -0,0 +1,44 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## bugfix-filter.dpatch by Joachim Reichel +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: The patch fixes a problem exposed by the following piece of code: +## DP: +## DP: #include "CORE/Expr.h" +## DP: +## DP: int main (int argc, char* argv[]) +## DP: { +## DP: CORE::BigRat large ("22056730828276574458547175013883216467476872755086964295193460720021853755465629072269258954121163731475631714119099840347497961090538262328734056966733720709815412125069165956247150829255095890113693179945329398691563060211289184266247766729226258574306693936046940295499433823219204319239906902222024366393841401155626607535624231276347490007095991669259288994417285636787983003769503223726502372783693309954766065876799926762287172711748917912232935178660587316551968245210589455313071167076401493075299837356515655888411082309335826494442934347285376887664307211239365443306044183662876478985244212735844924974989150199069307003280200060111499569786382285977364825392318326851159432635346367151290291631531554913751724893460469069547208946955224265325392885399798126657208221180788778400324907150233302791588009276803009797028184220618992783121977857908976266677561242802415919690200544114295109720535221099297209448522061332432197124484207428635197981586216597681588717101511557253786343834032638045890884717389911401000590189782799474466040733722126091652892707223954277743304836036311008667705531056276150658576893318688109218369131172944113814569041058017252601228351626529536894545671431774164326784454508884394355149284154441884153238020072100248384069127883977817374317881721365157547731991130497340067027095158450768002152789673852171185697375893915055282375021710680972671037261939809348959898244034519810739833260745241274632367144064250505129889920830125711206378536009811130822431321822223006689430061821350208089344103560621893694553717767618669117454686718040075832411848289616082068565327605459820927971564224635272839395488625653689443250779901268746633776694188674413434194729654493929833283912621040736895959147326292521899914111877902178492154547202941117349222179613641054322697542774178737769632217397181032969294874757392502243456256079712050558596812288058246727669016499639023706941884747862412582052641835266418284885728964319815812258779086499090061763081207521408713543051054202030839930630401951233176791299227117356324258433064969253290770713624926626235861939377682590602658977681375515775284293988813502174038878847682159558119588666364539632642349084495252373743605298522860136713999547072522111189366203938081292843"); +## DP: CORE::Expr expr (CORE::BigRat(1) / large); +## DP: double lb, ub; +## DP: expr.doubleInterval (lb, ub); +## DP: assert (lb == 0); +## DP: assert (ub > 0); +## DP: return 0; +## DP: } + +@DPATCH@ +diff -urNad core++-1.7.orig/inc/CORE/Filter.h core++-1.7/inc/CORE/Filter.h +--- core++-1.7.orig/inc/CORE/Filter.h 2005-08-27 12:32:14.156723880 +0200 ++++ core++-1.7/inc/CORE/Filter.h 2005-08-27 12:32:41.016640552 +0200 +@@ -80,7 +80,10 @@ + if (value != CORE_REAL_ZERO) { + ind = 1; + fpVal = value.doubleValue(); +- maxAbs = core_abs(fpVal); // NaN are propagated correctly by core_abs. ++ if (value.MSB() <= -1075) ++ maxAbs = 1; ++ else ++ maxAbs = core_abs(fpVal); // NaN are propagated correctly by core_abs. + } + } + //@} +@@ -91,7 +94,7 @@ + double getValue() const { + return fpVal; + } +- /// check whether filtered value is OK ++ /// check whether the sign (!) of the filtered value is OK + bool isOK() const { + return (fpFilterFlag && // To disable filter + finite(fpVal) && // Test for infinite and NaNs --- core++-1.7.orig/debian/patches/00list +++ core++-1.7/debian/patches/00list @@ -0,0 +1,12 @@ +bugfix-filter.dpatch +bugfix-operatorplusplus.dpatch +bugfix-avoid-internal-gmp-functions.dpatch +bugfix-size-type.dpatch +makefile-library.dpatch +makefile-misc.dpatch +makefile-output.dpatch +documentation-paths.dpatch +documentation-readme.dpatch +g++-4.0-compatibility.dpatch +g++-4.1-compatibility.dpatch +g++-4.3-compatibility.dpatch --- core++-1.7.orig/debian/patches/documentation-readme.dpatch +++ core++-1.7/debian/patches/documentation-readme.dpatch @@ -0,0 +1,34 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## documentation-readme.dpatch by Joachim Reichel +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: fix README w.r.t. the /usr/share/doc/libcore++-demo directory layout + +@DPATCH@ +diff -urNad core++-1.7/doc/README core++-1.7/doc/README +--- core++-1.7/doc/README Thu Aug 12 23:16:29 2004 ++++ core++-1.7/doc/README Tue Aug 24 22:24:48 2004 +@@ -1,16 +1,19 @@ + README File for doc directory + + files: +- -- README: this file ++ -- README.doc: this file + -- ANNOUNCEMENTS_*: announcements for various releases of CORE ++ -- bigNumFormat.txt: description of a bigNumber file format used by CORE ++ -- stackOverflow.txt: hints on how to solve stack overflow problems ++ -- history.tex: History of library development ++ ++In "tutorial" subdirectory: ++ + -- Makefile: to produce tutorial + -- tutorial.tex: latex source for CORE Library Tutorial + -- appendix.tex: appendix A: Core Class Reference +- -- history.tex: History of library development + -- tutoriala4.tex: automatically generated for a4 paper format + -- tutorial.bib: bibtex references +- -- bigNumFormat.txt: description of a bigNumber file format used by CORE +- -- stackOverflow.txt: hints on how to solve stack overflow problems + + In "papers" subdirectory: + --- core++-1.7.orig/debian/patches/g++-4.3-compatibility.dpatch +++ core++-1.7/debian/patches/g++-4.3-compatibility.dpatch @@ -0,0 +1,99 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## g++-4.3-compatibility.dpatch by Joachim Reichel +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: some fixes required for compatibility with g++ 4.3 + +@DPATCH@ +diff -urNad core++-1.7~/ext/geom3d/triangle3d.cpp core++-1.7/ext/geom3d/triangle3d.cpp +--- core++-1.7~/ext/geom3d/triangle3d.cpp 2008-06-27 12:09:58.000000000 +0200 ++++ core++-1.7/ext/geom3d/triangle3d.cpp 2008-06-27 12:09:59.000000000 +0200 +@@ -43,16 +43,10 @@ + s1 = orientation3d( viewpoint, p, p0, p1); + s2 = orientation3d( viewpoint, p, p1, p2); + s3 = orientation3d( viewpoint, p, p2, p0); +- +- if( s1==s2==s3 ) +- //p is inside +- return true; +- else +-if( s1*s2*s3==0 ) +-//p is on edge +- return true; +- else +- return false; ++ ++ if( s1*s2*s3 == 0 ) ++ return true; ++ return (s1>0) && (s2>0) && (s3>0); + } + + bool Triangle3d::isOnEdge( const Point3d& p ) const { +@@ -69,12 +63,7 @@ + s1 = orientation3d( viewpoint, p, p0, p1); + s2 = orientation3d( viewpoint, p, p1, p2); + s3 = orientation3d( viewpoint, p, p2, p0); +- +- if( s1==s2==s3 ) +- //is inside +- return true; +- else +- return false; ++ return (s1>0) && (s2>0) && (s3>0); + } + + Polygon3d* Triangle3d::toPolygon() const { +@@ -113,14 +102,10 @@ + int s1 = orientation3d( pStart, pStop, p0, p1); + int s2 = orientation3d( pStart, pStop, p1, p2); + int s3 = orientation3d( pStart, pStop, p2, p0); +- ++ + if( s1*s2*s3 == 0 ) + return true; +- if( s1==s2==s3 ) +- //intersects inside +- return true; +- else +- return false; ++ return (s1>0) && (s2>0) && (s3>0); + } + } + +@@ -144,11 +129,7 @@ + + if( s1*s2*s3 == 0 ) + return true; +- if( s1==s2==s3 ) +- //intersects inside +- return true; +- else +- return false; ++ return (s1>0) && (s2>0) && (s3>0); + } + } + +diff -urNad core++-1.7~/progs/poly/tKameny4.cpp core++-1.7/progs/poly/tKameny4.cpp +--- core++-1.7~/progs/poly/tKameny4.cpp 2008-06-27 12:09:58.000000000 +0200 ++++ core++-1.7/progs/poly/tKameny4.cpp 2008-06-27 12:09:59.000000000 +0200 +@@ -79,7 +79,7 @@ + << "TEST : Kameny Polynomial of degree 14 (4 real roots)\n" << + "=============================================================" << endl; + +- char* s[] = {"4", "0", "0", "0", "-4000000000000000000000000", ++ const char* s[] = {"4", "0", "0", "0", "-4000000000000000000000000", + "0", "0", "4", + "1000000000000000000000000000000000000000000000000", + "0", "0","2000000000000000000000000","0", "0", "1"}; +diff -urNad core++-1.7~/progs/poly/tWilk20deriv.cpp core++-1.7/progs/poly/tWilk20deriv.cpp +--- core++-1.7~/progs/poly/tWilk20deriv.cpp 2008-06-27 12:09:58.000000000 +0200 ++++ core++-1.7/progs/poly/tWilk20deriv.cpp 2008-06-27 12:09:59.000000000 +0200 +@@ -72,7 +72,7 @@ + << "Isolating the roots of the derivative of the Wilkinson Polynomial of degree 20\n" << + "=============================================================" << endl; + +- char* s20[] = {"2432902008176640000", "-8752948036761600000", ++ const char* s20[] = {"2432902008176640000", "-8752948036761600000", + "13803759753640704000", "-12870931245150988800", + "8037811822645051776", "-3599979517947607200", + "1206647803780373360", "-311333643161390640", --- core++-1.7.orig/debian/patches/makefile-output.dpatch +++ core++-1.7/debian/patches/makefile-output.dpatch @@ -0,0 +1,285 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## makefile-output.dpatch by Joachim Reichel +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: do not suppress output of make (echo of commands executed) + +@DPATCH@ +diff -urNad core++-1.7/Makefile core++-1.7/Makefile +--- core++-1.7/Makefile Thu Nov 11 23:03:34 2004 ++++ core++-1.7/Makefile Thu Nov 11 23:03:35 2004 +@@ -51,27 +51,18 @@ + + # First Step: configure for gmp + first configure: +- @echo "Configure for GMP..." +- -gzip -cd ${gmp}.tar.gz | tar xvf - +- -cd ${gmp}; ./configure CC=${CC} ${GMP_ABI} --prefix=${GMP_PREFIX} 2>&1 \ ++ gzip -cd ${gmp}.tar.gz | tar xvf - ++ cd ${gmp}; ./configure CC=${CC} ${GMP_ABI} --prefix=${GMP_PREFIX} 2>&1 \ + | tee ${CORE_PATH}/tmp/DIAG_CONFIG +- @echo "See file tmp/DIAG_CONFIG for screen output" +- @echo "" + + # Second Step: build gmp libraries + second gmp: +- @echo "Build GMP Library..." +- -${MAKE} -C ${gmp} 2>&1 | tee ${CORE_PATH}/tmp/DIAG_GMP +- @echo "See file tmp/DIAG_GMP for screen output" +- @echo "" ++ ${MAKE} -C ${gmp} 2>&1 | tee ${CORE_PATH}/tmp/DIAG_GMP + + # Third Step: install gmp libraries and include files + third: +- @echo "Install GMP Library..." +- -${MAKE} -C ${gmp} install 2>&1 \ ++ ${MAKE} -C ${gmp} install 2>&1 \ + | tee ${CORE_PATH}/tmp/DIAG_GMPINSTALL +- @echo "See file tmp/DIAG_GMPINSTALL for screen output" +- @echo "" + + # Fourth Step: build Core Library, Extensions and Sample Programs + fourth: core +@@ -81,7 +72,7 @@ + ################################################################# + + testgmp: +- -${MAKE} -C ${CORE_PATH}/progs/generic testgmp \ ++ ${MAKE} -C ${CORE_PATH}/progs/generic testgmp \ + 2>&1 | tee ${CORE_PATH}/tmp/DIAG_TESTGMP + + +@@ -99,38 +90,23 @@ + + # Make Core Library + corelib: +- @echo "Build Core Library..." +- -${MAKE} -C src 2>&1 | tee ${CORE_PATH}/tmp/DIAG_CORELIB +- @echo "See file tmp/DIAG_CORELIB for screen output" +- @echo "" ++ ${MAKE} -C src 2>&1 | tee ${CORE_PATH}/tmp/DIAG_CORELIB + + # Make Core Extension Library + corex: +- @echo "Build Core Extension Library..." +- -${MAKE} -C ext 2>&1 | tee ${CORE_PATH}/tmp/DIAG_COREX +- @echo "See file tmp/DIAG_COREX for screen output" +- @echo "" ++ ${MAKE} -C ext 2>&1 | tee ${CORE_PATH}/tmp/DIAG_COREX + + # Make Sample Core Programs + demo: corelib corex +- @echo "Build Sample Programs..." +- -${MAKE} -C progs 2>&1 | tee ${CORE_PATH}/tmp/DIAG_BUILD_DEMO +- @echo "See file tmp/DIAG_BUILD_DEMO for screen output" +- @echo "" ++ ${MAKE} -C progs 2>&1 | tee ${CORE_PATH}/tmp/DIAG_BUILD_DEMO + + # Run Test on Sample Core Programs + fifth test: +- @echo "Testing Sample Programs..." +- -${MAKE} -C progs test 2>&1 | tee ${CORE_PATH}/tmp/DIAG_TEST_DEMO +- @echo "See file tmp/DIAG_TEST_DEMO for screen output" +- @echo "" ++ ${MAKE} -C progs test 2>&1 | tee ${CORE_PATH}/tmp/DIAG_TEST_DEMO + + # Basic Timing: just time all the tests + sixth time: +- @echo "Timing Sample Programs..." +- -time ${MAKE} test 2>&1 | tee ${CORE_PATH}/tmp/DIAG_TIME +- @echo "See file tmp/DIAG_TIME for screen output" +- @echo "" ++ time ${MAKE} test 2>&1 | tee ${CORE_PATH}/tmp/DIAG_TIME + + + # Run More Test on Sample Core Programs +@@ -213,7 +189,7 @@ + # recompile gmp. This is not cheap. + # + cleangmp: +- -@${MAKE} -C ${gmp} clean ++ -${MAKE} -C ${gmp} clean + + # veryclean: Remove executables as well as object files. + # This is done when you need to rebuild everything (e.g., you need +@@ -227,7 +203,7 @@ + @list='$(SUB_DIRS)'; for dir in $$list; do \ + if test -d "$$dir"; then ${MAKE} -C "$$dir" veryclean; fi; \ + done +- -@test -z "${CORE_PATH}/tmp/DIAG_*" || rm -f ${CORE_PATH}/tmp/DIAG_* ++ -test -z "${CORE_PATH}/tmp/DIAG_*" || rm -f ${CORE_PATH}/tmp/DIAG_* + + # superclean: clean everything + # +diff -urNad core++-1.7/ext/Makefile core++-1.7/ext/Makefile +--- core++-1.7/ext/Makefile Thu Nov 11 23:03:35 2004 ++++ core++-1.7/ext/Makefile Thu Nov 11 23:03:49 2004 +@@ -54,27 +54,27 @@ + # ============================================================= + + ${COREX_LIB_LEVEL3}: ${L3_OBJS} +- -@rm -rf $@ ++ -rm -rf $@ + $(AR) $@ $? + + ${COREX_SHARED_LIB_LEVEL3}: ${L3_OBJS} +- -@rm -rf $@ ++ -rm -rf $@ + $(CXX) $(CORE_LDFLAGS) -Wl,-soname,libcorex++$(VAR)_level3.so.${MAJOR} -o $@ $? -lcore++ -lgmp -lm -L${CORE_PATH}/lib + + ${COREX_LIB_LEVEL2}: ${L2_OBJS} +- -@rm -rf $@ ++ -rm -rf $@ + $(AR) $@ $? + + ${COREX_SHARED_LIB_LEVEL2}: ${L2_OBJS} +- -@rm -rf $@ ++ -rm -rf $@ + $(CXX) $(CORE_LDFLAGS) -Wl,-soname,libcorex++$(VAR)_level2.so.${MAJOR} -o $@ $? -lcore++ -lgmp -lm -L${CORE_PATH}/lib + + ${COREX_LIB_LEVEL1}: ${L1_OBJS} +- -@rm -rf $@ ++ -rm -rf $@ + $(AR) $@ $? + + ${COREX_SHARED_LIB_LEVEL1}: ${L1_OBJS} +- -@rm -rf $@ ++ -rm -rf $@ + $(CXX) $(CORE_LDFLAGS) -Wl,-soname,libcorex++$(VAR)_level1.so.${MAJOR} -o $@ $? -lcore++ -lgmp -lm -L${CORE_PATH}/lib + + %_level3.o: %.cpp +@@ -87,18 +87,18 @@ + ${CXX} $(CORE_CXXFLAGS) -D_REENTRANT -DCORE_LEVEL=1 $(INCLUDE) -c $< -o $@ + + clean: +- -@test -z "*.o" || rm -f *.o +- -${MAKE} -C geom2d clean +- -${MAKE} -C geom3d clean ++ -test -z "*.o" || rm -f *.o ++ ${MAKE} -C geom2d clean ++ ${MAKE} -C geom3d clean + + veryclean: clean +- -@test -z "$(COREX_LIB_LEVEL3)" || rm -rf "$(COREX_LIB_LEVEL3)" +- -@test -z "$(COREX_LIB_LEVEL2)" || rm -rf "$(COREX_LIB_LEVEL2)" +- -@test -z "$(COREX_LIB_LEVEL1)" || rm -rf "$(COREX_LIB_LEVEL1)" ++ -test -z "$(COREX_LIB_LEVEL3)" || rm -rf "$(COREX_LIB_LEVEL3)" ++ -test -z "$(COREX_LIB_LEVEL2)" || rm -rf "$(COREX_LIB_LEVEL2)" ++ -test -z "$(COREX_LIB_LEVEL1)" || rm -rf "$(COREX_LIB_LEVEL1)" + ifeq (${LINKAGE}, shared) +- -@test -z "$(COREX_SHARED_LIB_LEVEL1)"||rm -rf "$(COREX_SHARED_LIB_LEVEL1)" +- -@test -z "$(COREX_SHARED_LIB_LEVEL2)"||rm -rf "$(COREX_SHARED_LIB_LEVEL2)" +- -@test -z "$(COREX_SHARED_LIB_LEVEL3)"||rm -rf "$(COREX_SHARED_LIB_LEVEL3)" ++ -test -z "$(COREX_SHARED_LIB_LEVEL1)"||rm -rf "$(COREX_SHARED_LIB_LEVEL1)" ++ -test -z "$(COREX_SHARED_LIB_LEVEL2)"||rm -rf "$(COREX_SHARED_LIB_LEVEL2)" ++ -test -z "$(COREX_SHARED_LIB_LEVEL3)"||rm -rf "$(COREX_SHARED_LIB_LEVEL3)" + endif + -${MAKE} -C geom2d veryclean + -${MAKE} -C geom3d veryclean +diff -urNad core++-1.7/ext/geom2d/test/Makefile core++-1.7/ext/geom2d/test/Makefile +--- core++-1.7/ext/geom2d/test/Makefile Thu Nov 11 23:03:34 2004 ++++ core++-1.7/ext/geom2d/test/Makefile Thu Nov 11 23:03:35 2004 +@@ -54,7 +54,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -62,5 +62,5 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/ext/geom3d/test/Makefile core++-1.7/ext/geom3d/test/Makefile +--- core++-1.7/ext/geom3d/test/Makefile Thu Nov 11 23:03:34 2004 ++++ core++-1.7/ext/geom3d/test/Makefile Thu Nov 11 23:03:35 2004 +@@ -41,7 +41,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -49,5 +49,5 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/Makefile core++-1.7/progs/Makefile +--- core++-1.7/progs/Makefile Thu Nov 11 23:03:35 2004 ++++ core++-1.7/progs/Makefile Thu Nov 11 23:03:35 2004 +@@ -63,34 +63,34 @@ + + makebasic: + @for p in ${basicprogs}; do \ +- if test -d "$$p"; then echo $$p; ${MAKE} -C $$p; echo ""; fi; \ ++ if test -d "$$p"; then ${MAKE} -C $$p; fi; \ + done + + test testbasic: + @for p in ${basicprogs}; do \ +- if test -d "$$p"; then echo $$p; ${MAKE} -C $$p test; echo ""; fi; \ ++ if test -d "$$p"; then ${MAKE} -C $$p test; fi; \ + done + + ############################################################ + + makemoreprogs: + @for p in ${moreprogs}; do \ +- if test -d "$$p"; then echo $$p; ${MAKE} -C $$p; echo ""; fi; \ ++ if test -d "$$p"; then ${MAKE} -C $$p; fi; \ + done + + moretest: makemoreprogs + @for p in ${moreprogs}; do \ +- if test -d "$$p"; then echo $$p; ${MAKE} -C $$p moretest test; echo ""; fi; \ ++ if test -d "$$p"; then ${MAKE} -C $$p moretest test; fi; \ + done + @for p in ${basicprogs}; do \ +- if test -d "$$p"; then echo $$p; ${MAKE} -C $$p moretest; echo ""; fi; \ ++ if test -d "$$p"; then ${MAKE} -C $$p moretest; fi; \ + done + + ############################################################ + + makeall: makeprogs + @for p in ${extraprogs}; do \ +- if test -d "$$p"; then echo $$p; ${MAKE} -C $$p; echo ""; fi; \ ++ if test -d "$$p"; then ${MAKE} -C $$p; fi; \ + done + + +@@ -99,20 +99,20 @@ + ############################################################ + clean: cleanbasicprogs + @for p in ${moreprogs}; do \ +- if test -d "$$p"; then echo $$p; ${MAKE} -C $$p clean; echo ""; fi; \ ++ if test -d "$$p"; then ${MAKE} -C $$p clean; fi; \ + done + + cleanbasicprogs: + @for p in ${basicprogs}; do \ +- if test -d "$$p"; then echo $$p; ${MAKE} -C $$p clean; echo ""; fi; \ ++ if test -d "$$p"; then ${MAKE} -C $$p clean; fi; \ + done + + veryclean: verycleanbasicprogs + @for p in ${moreprogs}; do \ +- if test -d "$$p"; then echo $$p; ${MAKE} -C $$p veryclean; echo ""; fi\ ++ if test -d "$$p"; then ${MAKE} -C $$p veryclean; fi \ + done + + verycleanbasicprogs: + @for p in ${basicprogs}; do \ +- if test -d "$$p"; then echo $$p; ${MAKE} -C $$p veryclean; echo ""; fi\ ++ if test -d "$$p"; then ${MAKE} -C $$p veryclean; fi \ + done --- core++-1.7.orig/debian/patches/makefile-library.dpatch +++ core++-1.7/debian/patches/makefile-library.dpatch @@ -0,0 +1,102 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## makefile-library.dpatch by Joachim Reichel +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: - fix filename and soname for shared libaries +## DP: - link extension libraries with basic library + +@DPATCH@ +diff -urNad core++-1.7~/ext/Makefile core++-1.7/ext/Makefile +--- core++-1.7~/ext/Makefile 2008-02-18 22:14:08.000000000 +0100 ++++ core++-1.7/ext/Makefile 2008-02-18 22:16:08.000000000 +0100 +@@ -29,9 +29,9 @@ + COREX_LIB_LEVEL3=${CORE_PATH}/lib/libcorex++$(VAR)_level3.a + COREX_LIB_LEVEL2=${CORE_PATH}/lib/libcorex++$(VAR)_level2.a + COREX_LIB_LEVEL1=${CORE_PATH}/lib/libcorex++$(VAR)_level1.a +-COREX_SHARED_LIB_LEVEL3=${CORE_PATH}/lib/libcorex++$(VAR)_level3.so +-COREX_SHARED_LIB_LEVEL2=${CORE_PATH}/lib/libcorex++$(VAR)_level2.so +-COREX_SHARED_LIB_LEVEL1=${CORE_PATH}/lib/libcorex++$(VAR)_level1.so ++COREX_SHARED_LIB_LEVEL3=${CORE_PATH}/lib/libcorex++$(VAR)_level3.so.${VERSION} ++COREX_SHARED_LIB_LEVEL2=${CORE_PATH}/lib/libcorex++$(VAR)_level2.so.${VERSION} ++COREX_SHARED_LIB_LEVEL1=${CORE_PATH}/lib/libcorex++$(VAR)_level1.so.${VERSION} + + TARGET=${COREX_LIB_LEVEL3} ${COREX_LIB_LEVEL2} ${COREX_LIB_LEVEL1} + +@@ -59,7 +59,7 @@ + + ${COREX_SHARED_LIB_LEVEL3}: ${L3_OBJS} + -@rm -rf $@ +- $(CXX) $(CORE_LDFLAGS) -o $@ $? ++ $(CXX) $(CORE_LDFLAGS) -Wl,-soname,libcorex++$(VAR)_level3.so.${MAJOR} -o $@ $? -lcore++ -lgmp -lm -L${CORE_PATH}/lib + + ${COREX_LIB_LEVEL2}: ${L2_OBJS} + -@rm -rf $@ +@@ -67,7 +67,7 @@ + + ${COREX_SHARED_LIB_LEVEL2}: ${L2_OBJS} + -@rm -rf $@ +- $(CXX) $(CORE_LDFLAGS) -o $@ $? ++ $(CXX) $(CORE_LDFLAGS) -Wl,-soname,libcorex++$(VAR)_level2.so.${MAJOR} -o $@ $? -lcore++ -lgmp -lm -L${CORE_PATH}/lib + + ${COREX_LIB_LEVEL1}: ${L1_OBJS} + -@rm -rf $@ +@@ -75,16 +75,16 @@ + + ${COREX_SHARED_LIB_LEVEL1}: ${L1_OBJS} + -@rm -rf $@ +- $(CXX) $(CORE_LDFLAGS) -o $@ $? ++ $(CXX) $(CORE_LDFLAGS) -Wl,-soname,libcorex++$(VAR)_level1.so.${MAJOR} -o $@ $? -lcore++ -lgmp -lm -L${CORE_PATH}/lib + + %_level3.o: %.cpp +- ${CXX} $(CORE_CXXFLAGS) -DCORE_LEVEL=3 $(INCLUDE) -c $< -o $@ ++ ${CXX} $(CORE_CXXFLAGS) -D_REENTRANT -DCORE_LEVEL=3 $(INCLUDE) -c $< -o $@ + + %_level2.o: %.cpp +- ${CXX} $(CORE_CXXFLAGS) -DCORE_LEVEL=2 $(INCLUDE) -c $< -o $@ ++ ${CXX} $(CORE_CXXFLAGS) -D_REENTRANT -DCORE_LEVEL=2 $(INCLUDE) -c $< -o $@ + + %_level1.o: %.cpp +- ${CXX} $(CORE_CXXFLAGS) -DCORE_LEVEL=1 $(INCLUDE) -c $< -o $@ ++ ${CXX} $(CORE_CXXFLAGS) -D_REENTRANT -DCORE_LEVEL=1 $(INCLUDE) -c $< -o $@ + + clean: + -@test -z "*.o" || rm -f *.o +diff -urNad core++-1.7~/lib/Makefile core++-1.7/lib/Makefile +--- core++-1.7~/lib/Makefile 2008-02-18 22:14:08.000000000 +0100 ++++ core++-1.7/lib/Makefile 2008-02-18 22:14:09.000000000 +0100 +@@ -9,7 +9,7 @@ + CORE_PATH=.. + + clean: +- -@-test -z "*.a *.so" || rm -f *.a *.so ++ -@-test -z "*.a *.so*" || rm -f *.a *.so* + + veryclean: clean + +diff -urNad core++-1.7~/src/Makefile core++-1.7/src/Makefile +--- core++-1.7~/src/Makefile 2008-02-18 22:14:08.000000000 +0100 ++++ core++-1.7/src/Makefile 2008-02-18 22:14:09.000000000 +0100 +@@ -31,7 +31,7 @@ + + # The following library will be built: + CORE_LIB=$(CORE_PATH)/lib/libcore++${VAR}.a +-CORE_SHARED_LIB=$(CORE_PATH)/lib/libcore++${VAR}.so ++CORE_SHARED_LIB=$(CORE_PATH)/lib/libcore++${VAR}.so.${VERSION} + + TARGET=$(CORE_LIB) + +@@ -49,12 +49,12 @@ + $(AR) $@ $? + + ${CORE_SHARED_LIB}: $(EXPROBJS) +- $(CXX) $(CORE_LDFLAGS) -o $@ $^ ++ $(CXX) $(CORE_LDFLAGS) -Wl,-soname,libcore++${VAR}.so.${MAJOR} -o $@ $^ -lgmp -lm + + %${VAR}.o: %.cpp + # Aug 8, 2004 by Chee (TEMP CHANGE! FOR DEBUGGING) + # ${CXX} $(CORE_CXXFLAGS) -DCORE_SHOW_BOUNDS $(INCLUDE) -c $< -o $@ +- ${CXX} $(CORE_CXXFLAGS) $(INCLUDE) -c $< -o $@ ++ ${CXX} $(CORE_CXXFLAGS) -D_REENTRANT $(INCLUDE) -c $< -o $@ + + # ============================================================= + # HOUSE KEEPING ============================================== --- core++-1.7.orig/debian/patches/g++-4.0-compatibility.dpatch +++ core++-1.7/debian/patches/g++-4.0-compatibility.dpatch @@ -0,0 +1,58 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## g++-4.0-compatibility.dpatch by Joachim Reichel +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: some fixes required for compatibility with g++ 4.0 + +@DPATCH@ +diff -urNad core++-1.7.orig/inc/CORE/geombase.h core++-1.7/inc/CORE/geombase.h +--- core++-1.7.orig/inc/CORE/geombase.h ++++ core++-1.7/inc/CORE/geombase.h +@@ -31,6 +31,7 @@ + + class Exception { + public: ++ virtual ~Exception () { }; + virtual void print_message( char* msg ) { std::cerr << msg < & operator=( const BiPoly& P); + + // Self-addition +- BiPoly & BiPoly::operator+=( BiPoly& P); ++ BiPoly & operator+=( BiPoly& P); + + // Self-subtraction +- BiPoly & BiPoly::operator-=( BiPoly& P); ++ BiPoly & operator-=( BiPoly& P); + + // Self-multiplication +- BiPoly & BiPoly::operator*=( BiPoly& P); ++ BiPoly & operator*=( BiPoly& P); + + // Multiply by a polynomial in X + BiPoly & mulXpoly( Polynomial & p); +--- core++-1.7.orig/inc/CORE/poly/Sturm.h ++++ core++-1.7/inc/CORE/poly/Sturm.h +@@ -605,7 +605,7 @@ + r += p.getTrueDegree() * val.uMSB(); + r += core_max(extLong(0), -oldMSB); + +- bool validFlag; ++ bool validFlag = false; // suppress compiler warning + + BigFloat rVal = p.evalFilter(val, validFlag, r); + if (validFlag) --- core++-1.7.orig/debian/patches/makefile-misc.dpatch +++ core++-1.7/debian/patches/makefile-misc.dpatch @@ -0,0 +1,1031 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## makefile-misc.dpatch by Joachim Reichel +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: misc fixes for the build process + +@DPATCH@ +diff -urNad core++-1.7/Make.config core++-1.7~/Make.config +--- core++-1.7/Make.config Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/Make.config Thu Nov 25 00:05:54 2004 +@@ -217,7 +217,7 @@ + ifeq (${VAR}, Debug) + CXXFLAGS=-g -Wall + else +- CXXFLAGS=-O -Wall -DNDEBUG ++ CXXFLAGS=-O2 -Wall -DNDEBUG + endif + + ifeq (${VAR}, Opt) +diff -urNad core++-1.7/doc/Makefile core++-1.7~/doc/Makefile +--- core++-1.7/doc/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/doc/Makefile Thu Nov 25 00:05:54 2004 +@@ -15,14 +15,14 @@ + + + tut tutorial: appendix.tex appendix_b.tex tutorial.tex tutorial.bib +- latex tutorial ++ latex tutorial >/dev/null + dvips tutorial -o + ps2pdf tutorial.ps tutorial.pdf + + all: tutorial history + + his history: history.tex +- latex history ++ latex history >/dev/null + dvips history -o + ps2pdf history.ps history.pdf + +@@ -30,9 +30,9 @@ + dvips tutorial -o + + tutorial.dvi tutorial.aux: tutorial.tex tutorial.bib +- latex tutorial ++ latex tutorial >/dev/null + bibtex tutorial +- latex tutorial ++ latex tutorial >/dev/null + + tutoriala4.tex: tutorial.tex + nawk 'BEGIN{FS="]"; \ +@@ -61,13 +61,13 @@ + # to use only type 1 font. + ############################################################ + pdf: tutorial.tex tutoriala4.tex +- pdflatex tutorial +- pdflatex tutoriala4 ++ pdflatex tutorial >/dev/null ++ pdflatex tutoriala4 >/dev/null + + a4 tuta4 tutoriala4.dvi tutoriala4.aux: tutoriala4.tex tutorial.bib +- latex tutoriala4 ++ latex tutoriala4 >/dev/null + bibtex tutoriala4 +- latex tutoriala4 ++ latex tutoriala4 >/dev/null + + bib: tutorial.aux tutorial.bib + bibtex tutorial +@@ -77,6 +77,6 @@ + ANNOUNCEMENT* *.bib + + clean: +- -rm -f *.dvi *.log *.aux *.toc *.blg *pdf ++ -rm -f *.dvi *.log *.aux *.toc *.blg *.bbl *.ps *.pdf tutoriala4.* + + veryclean: clean +diff -urNad core++-1.7/ext/Makefile core++-1.7~/ext/Makefile +--- core++-1.7/ext/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/ext/Makefile Thu Nov 25 00:05:54 2004 +@@ -13,7 +13,7 @@ + # ============================================================= + + CORE_PATH=.. +-INCLUDE=-I${CORE_PATH}/inc -I${CORE_PATH}/gmp/include ++INCLUDE=-I${CORE_PATH}/inc + + MODULES := linearAlgebra geometry2d geometry3d + +@@ -95,9 +95,11 @@ + -@test -z "$(COREX_LIB_LEVEL3)" || rm -rf "$(COREX_LIB_LEVEL3)" + -@test -z "$(COREX_LIB_LEVEL2)" || rm -rf "$(COREX_LIB_LEVEL2)" + -@test -z "$(COREX_LIB_LEVEL1)" || rm -rf "$(COREX_LIB_LEVEL1)" ++ifeq (${LINKAGE}, shared) + -@test -z "$(COREX_SHARED_LIB_LEVEL1)"||rm -rf "$(COREX_SHARED_LIB_LEVEL1)" + -@test -z "$(COREX_SHARED_LIB_LEVEL2)"||rm -rf "$(COREX_SHARED_LIB_LEVEL2)" + -@test -z "$(COREX_SHARED_LIB_LEVEL3)"||rm -rf "$(COREX_SHARED_LIB_LEVEL3)" ++endif + -${MAKE} -C geom2d veryclean + -${MAKE} -C geom3d veryclean + +diff -urNad core++-1.7/ext/geom2d/Makefile core++-1.7~/ext/geom2d/Makefile +--- core++-1.7/ext/geom2d/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/ext/geom2d/Makefile Thu Nov 25 00:05:54 2004 +@@ -7,8 +7,8 @@ + # ============================================================= + + CORE_PATH=.. +-INCLUDE=-I${CORE_PATH}/inc -I${CORE_PATH}/gmp +-LIBPATH=-L${CORE_PATH}/lib -L${CORE_PATH}/gmp/.libs ++INCLUDE=-I${CORE_PATH}/inc ++LIBPATH=-L${CORE_PATH}/lib + + # ============================================================= + # FLAGS ======================================================= +diff -urNad core++-1.7/ext/geom3d/Makefile core++-1.7~/ext/geom3d/Makefile +--- core++-1.7/ext/geom3d/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/ext/geom3d/Makefile Thu Nov 25 00:05:54 2004 +@@ -7,8 +7,8 @@ + # ============================================================= + + CORE_PATH=.. +-INCLUDE=-I${CORE_PATH}/inc -I${CORE_PATH}/gmp +-LIBPATH=-L${CORE_PATH}/lib -L${CORE_PATH}/gmp/.libs ++INCLUDE=-I${CORE_PATH}/inc ++LIBPATH=-L${CORE_PATH}/lib + + # ============================================================= + # FLAGS ======================================================= +diff -urNad core++-1.7/lib/Makefile core++-1.7~/lib/Makefile +--- core++-1.7/lib/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/lib/Makefile Thu Nov 25 00:05:54 2004 +@@ -9,7 +9,10 @@ + CORE_PATH=.. + + clean: +- -@-test -z "*.a *.so*" || rm -f *.a *.so* ++ -test -z "*.a" || rm -f *.a ++ifeq (${LINKAGE}, shared) ++ -test -z "*.so*" || rm -f *.so* ++endif + + veryclean: clean + +diff -urNad core++-1.7/progs/Makefile core++-1.7~/progs/Makefile +--- core++-1.7/progs/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/Makefile Thu Nov 25 00:05:54 2004 +@@ -48,7 +48,7 @@ + ### The programs in extraprogs are not automatically testd on + ### any platforms. You will have to run it yourself: + +-extraprogs=cgal \ ++extraprogs= \ + determinant \ + continuedFrac \ + constants \ +diff -urNad core++-1.7/progs/bareiss/Makefile core++-1.7~/progs/bareiss/Makefile +--- core++-1.7/progs/bareiss/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/bareiss/Makefile Thu Nov 25 00:05:54 2004 +@@ -16,6 +16,9 @@ + test: $(TARGETS) + ./bareiss + ++moretest: ++# nothing to do ++ + bareiss: bareiss.o + + #================================================= +@@ -31,7 +34,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -39,5 +42,5 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/bezier/Makefile core++-1.7~/progs/bezier/Makefile +--- core++-1.7/progs/bezier/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/bezier/Makefile Thu Nov 25 00:05:54 2004 +@@ -17,7 +17,7 @@ + VAR= + + CORE_PATH=../.. +-include ${CORE_PATH}/progs/Make.options ++include ../Make.options + + #================================================= + # TARGET FILES +@@ -67,7 +67,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -76,7 +76,7 @@ + EXEPROGS=$(ALL:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + + #================================================= + # Housekeeping +diff -urNad core++-1.7/progs/chull/Makefile core++-1.7~/progs/chull/Makefile +--- core++-1.7/progs/chull/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/chull/Makefile Thu Nov 25 00:05:54 2004 +@@ -61,7 +61,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -69,5 +69,5 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/chullGraham/Makefile core++-1.7~/progs/chullGraham/Makefile +--- core++-1.7/progs/chullGraham/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/chullGraham/Makefile Thu Nov 25 00:05:54 2004 +@@ -63,13 +63,13 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORETARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/compare/Makefile core++-1.7~/progs/compare/Makefile +--- core++-1.7/progs/compare/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/compare/Makefile Thu Nov 25 00:05:54 2004 +@@ -19,6 +19,9 @@ + test: $(TARGETS) + ./compare 10 1 + ++moretest: ++# nothing to do ++ + testslow: $(TARGETS) + ./compare 1000 2 + +@@ -37,7 +40,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -45,5 +48,5 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/curves/Makefile core++-1.7~/progs/curves/Makefile +--- core++-1.7/progs/curves/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/curves/Makefile Thu Nov 25 00:05:54 2004 +@@ -17,7 +17,7 @@ + VAR= + + CORE_PATH=../.. +-include ${CORE_PATH}/progs/Make.options ++include ../Make.options + + #================================================= + # VARIABLES +@@ -132,7 +132,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -141,8 +141,8 @@ + EXEPROGS=$(ALL:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) +- -@rm -f tCurves${EXETYPE} ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -rm -f tCurves${EXETYPE} + + #================================================= + # Housekeeping +diff -urNad core++-1.7/progs/delaunay/Makefile core++-1.7~/progs/delaunay/Makefile +--- core++-1.7/progs/delaunay/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/delaunay/Makefile Thu Nov 25 00:05:54 2004 +@@ -45,13 +45,13 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORETARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/demos/Makefile core++-1.7~/progs/demos/Makefile +--- core++-1.7/progs/demos/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/demos/Makefile Thu Nov 25 00:05:54 2004 +@@ -71,7 +71,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -80,11 +80,11 @@ + + veryclean: clean + echo "EXEPROGS=" $(EXEPROGS) +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) +- -@rm -f simple1$(EXETYPE) simple3$(EXETYPE) simple$(EXETYPE) +- -@rm -f golden1$(EXETYPE) golden3$(EXETYPE) golden$(EXETYPE) +- -@rm -f scheinerman1$(EXETYPE) scheinerman3$(EXETYPE) scheinerman$(EXETYPE) +- -@rm -f pointOnPlane1$(EXETYPE) pointOnPlane3$(EXETYPE) pointOnPlane$(EXETYPE) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -rm -f simple1$(EXETYPE) simple3$(EXETYPE) simple$(EXETYPE) ++ -rm -f golden1$(EXETYPE) golden3$(EXETYPE) golden$(EXETYPE) ++ -rm -f scheinerman1$(EXETYPE) scheinerman3$(EXETYPE) scheinerman$(EXETYPE) ++ -rm -f pointOnPlane1$(EXETYPE) pointOnPlane3$(EXETYPE) pointOnPlane$(EXETYPE) + + save: + ci -l -m"Make save" Makefile *.cpp README +diff -urNad core++-1.7/progs/determinant/Makefile core++-1.7~/progs/determinant/Makefile +--- core++-1.7/progs/determinant/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/determinant/Makefile Thu Nov 25 00:05:54 2004 +@@ -83,7 +83,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -91,5 +91,5 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/fileIO/Makefile core++-1.7~/progs/fileIO/Makefile +--- core++-1.7/progs/fileIO/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/fileIO/Makefile Thu Nov 25 00:05:54 2004 +@@ -38,13 +38,13 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORETARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/fortune/pred/Makefile core++-1.7~/progs/fortune/pred/Makefile +--- core++-1.7/progs/fortune/pred/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/fortune/pred/Makefile Thu Nov 25 00:05:54 2004 +@@ -40,13 +40,13 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORETARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/fortune/pythagorean/Makefile core++-1.7~/progs/fortune/pythagorean/Makefile +--- core++-1.7/progs/fortune/pythagorean/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/fortune/pythagorean/Makefile Thu Nov 25 00:05:54 2004 +@@ -45,7 +45,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -53,5 +53,5 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/fortune/vor/Makefile core++-1.7~/progs/fortune/vor/Makefile +--- core++-1.7/progs/fortune/vor/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/fortune/vor/Makefile Thu Nov 25 00:05:54 2004 +@@ -61,7 +61,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -69,5 +69,5 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/gaussian/Makefile core++-1.7~/progs/gaussian/Makefile +--- core++-1.7/progs/gaussian/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/gaussian/Makefile Thu Nov 25 00:05:54 2004 +@@ -52,13 +52,13 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORETARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/generic/Makefile core++-1.7~/progs/generic/Makefile +--- core++-1.7/progs/generic/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/generic/Makefile Thu Nov 25 00:05:54 2004 +@@ -26,9 +26,12 @@ + test: $(TARGETS) + ./sample + ++moretest: ++# nothing to do ++ + testgmp: +- -@test -z "gmptest.o" || rm -f gmptest.o +- -@test -z "gmptest${EXETYPE}" || rm -f gmptest${EXETYPE} ++ -test -z "gmptest.o" || rm -f gmptest.o ++ -test -z "gmptest${EXETYPE}" || rm -f gmptest${EXETYPE} + $(CXX) $(CORE_INC) gmptest.cpp -L../../gmp/lib -lgmp -o gmptest + ./gmptest + +@@ -47,7 +50,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -55,5 +58,5 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) +- -@test -z "gmptest${EXETYPE}" || rm -f gmptest${EXETYPE} ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "gmptest${EXETYPE}" || rm -f gmptest${EXETYPE} +diff -urNad core++-1.7/progs/geom2d/Makefile core++-1.7~/progs/geom2d/Makefile +--- core++-1.7/progs/geom2d/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/geom2d/Makefile Thu Nov 25 00:05:54 2004 +@@ -70,7 +70,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -79,5 +79,5 @@ + + veryclean: clean + echo "EXEPROGS=" $(EXEPROGS) +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/geom3d/Makefile core++-1.7~/progs/geom3d/Makefile +--- core++-1.7/progs/geom3d/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/geom3d/Makefile Thu Nov 25 00:06:13 2004 +@@ -57,13 +57,13 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORE_TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/heron/Makefile core++-1.7~/progs/heron/Makefile +--- core++-1.7/progs/heron/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/heron/Makefile Thu Nov 25 00:05:54 2004 +@@ -16,6 +16,9 @@ + test: $(TARGETS) + ./heron + ++moretest: ++# nothing to do ++ + heron: heron.o + + #================================================= +@@ -31,7 +34,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -39,5 +42,5 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/hypergeom/Makefile core++-1.7~/progs/hypergeom/Makefile +--- core++-1.7/progs/hypergeom/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/hypergeom/Makefile Thu Nov 25 00:06:29 2004 +@@ -85,14 +85,14 @@ + #================================================= + + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + -${MAKE} -C const clean + -${MAKE} -C timing clean + +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORE_TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + -${MAKE} -C const veryclean + -${MAKE} -C timing veryclean + +diff -urNad core++-1.7/progs/hypergeom/const/Makefile core++-1.7~/progs/hypergeom/const/Makefile +--- core++-1.7/progs/hypergeom/const/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/hypergeom/const/Makefile Thu Nov 25 00:05:54 2004 +@@ -38,7 +38,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -46,7 +46,7 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + + rcs: + -@ci -l -m"make rcs" *.cpp *.h Makefile README +diff -urNad core++-1.7/progs/hypergeom/timing/Makefile core++-1.7~/progs/hypergeom/timing/Makefile +--- core++-1.7/progs/hypergeom/timing/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/hypergeom/timing/Makefile Thu Nov 25 00:05:54 2004 +@@ -60,7 +60,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -68,7 +68,7 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + + rcs: + -@ci -l -m"make rcs" *.cpp *.h Makefile README +diff -urNad core++-1.7/progs/ieee/Makefile core++-1.7~/progs/ieee/Makefile +--- core++-1.7/progs/ieee/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/ieee/Makefile Thu Nov 25 00:05:54 2004 +@@ -91,14 +91,14 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORETARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) +- -@test -z p$(EXETYPE) || rm -f p$(EXETYPE) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z p$(EXETYPE) || rm -f p$(EXETYPE) + +diff -urNad core++-1.7/progs/kahan/Makefile core++-1.7~/progs/kahan/Makefile +--- core++-1.7/progs/kahan/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/kahan/Makefile Thu Nov 25 00:05:54 2004 +@@ -16,6 +16,9 @@ + test: $(TARGETS) + ./kahan + ++moretest: ++# nothing to do ++ + kahan: kahan.o + + #================================================= +@@ -31,7 +34,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -39,5 +42,5 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/nestedSqrt/Makefile core++-1.7~/progs/nestedSqrt/Makefile +--- core++-1.7/progs/nestedSqrt/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/nestedSqrt/Makefile Thu Nov 25 00:06:40 2004 +@@ -42,13 +42,13 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORE_TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/orientation/Makefile core++-1.7~/progs/orientation/Makefile +--- core++-1.7/progs/orientation/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/orientation/Makefile Thu Nov 25 00:05:54 2004 +@@ -45,7 +45,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -53,4 +53,4 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) +diff -urNad core++-1.7/progs/pentagon/Makefile core++-1.7~/progs/pentagon/Makefile +--- core++-1.7/progs/pentagon/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/pentagon/Makefile Thu Nov 25 00:06:48 2004 +@@ -43,13 +43,13 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORE_TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/pi/Makefile core++-1.7~/progs/pi/Makefile +--- core++-1.7/progs/pi/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/pi/Makefile Thu Nov 25 00:05:54 2004 +@@ -72,13 +72,13 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORETARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/poly/Makefile core++-1.7~/progs/poly/Makefile +--- core++-1.7/progs/poly/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/poly/Makefile Thu Nov 25 00:05:54 2004 +@@ -17,7 +17,7 @@ + VAR= + + CORE_PATH=../.. +-include ${CORE_PATH}/progs/Make.options ++include ../Make.options + + #================================================= + # TARGET FILES +@@ -233,7 +233,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -242,13 +242,13 @@ + EXEPROGS=$(ALL:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) +- -@rm -f tSturm$(EXETYPE) tSturmExp$(EXETYPE) tSturmBF$(EXETYPE) \ ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -rm -f tSturm$(EXETYPE) tSturmExp$(EXETYPE) tSturmBF$(EXETYPE) \ + tSturmInt$(EXETYPE) tSturmLon$(EXETYPE) +- -@rm -f tNewton$(EXETYPE) tNewtonBF$(EXETYPE) +- -@rm -f tPoly$(EXETYPE) tPolyExp$(EXETYPE) \ ++ -rm -f tNewton$(EXETYPE) tNewtonBF$(EXETYPE) ++ -rm -f tPoly$(EXETYPE) tPolyExp$(EXETYPE) \ + tPolyInt$(EXETYPE) tPolyRat$(EXETYPE) tPolyBF$(EXETYPE) +- -@rm -f tt$(EXETYPE) tt1$(EXETYPE) tt2$(EXETYPE) ++ -rm -f tt$(EXETYPE) tt1$(EXETYPE) tt2$(EXETYPE) + + #================================================= + # Housekeeping +diff -urNad core++-1.7/progs/prover/Makefile core++-1.7~/progs/prover/Makefile +--- core++-1.7/progs/prover/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/prover/Makefile Thu Nov 25 00:06:56 2004 +@@ -65,13 +65,13 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORE_TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/radical/Makefile core++-1.7~/progs/radical/Makefile +--- core++-1.7/progs/radical/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/radical/Makefile Thu Nov 25 00:07:06 2004 +@@ -17,7 +17,7 @@ + VAR= + + CORE_PATH=../.. +-include ${CORE_PATH}/progs/Make.options ++include ../Make.options + + #================================================= + # TARGET FILES +@@ -93,14 +93,14 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-ALL=$(TARGETS) $(MORE_TARGETS) ++ALL=$(TARGETS) $(MORE_TARGETS) tRadicalRat tRadicalInt tRadicalExp tRadicalBF + EXEPROGS=$(ALL:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/sumOfSqrts/Makefile core++-1.7~/progs/sumOfSqrts/Makefile +--- core++-1.7/progs/sumOfSqrts/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/sumOfSqrts/Makefile Thu Nov 25 00:05:54 2004 +@@ -17,6 +17,9 @@ + test: $(TARGETS) + ./graham + ++moretest: ++# nothing to do ++ + smalltest: + ./orourke + ./smallsum +@@ -44,7 +47,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -52,5 +55,5 @@ + EXEPROGS=$(TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/testFilter/Makefile core++-1.7~/progs/testFilter/Makefile +--- core++-1.7/progs/testFilter/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/testFilter/Makefile Thu Nov 25 00:05:54 2004 +@@ -92,13 +92,13 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) createMatrices$(EXETYPE) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/testIO/Makefile core++-1.7~/progs/testIO/Makefile +--- core++-1.7/progs/testIO/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/testIO/Makefile Thu Nov 25 00:05:54 2004 +@@ -48,13 +48,13 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORETARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/testIdent/Makefile core++-1.7~/progs/testIdent/Makefile +--- core++-1.7/progs/testIdent/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/testIdent/Makefile Thu Nov 25 00:05:54 2004 +@@ -39,13 +39,13 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORETARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/tests/Makefile core++-1.7~/progs/tests/Makefile +--- core++-1.7/progs/tests/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/tests/Makefile Thu Nov 25 00:05:54 2004 +@@ -60,13 +60,13 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files + #================================================= +-EXEPROGS=$(TARGETS:=$(EXETYPE)) ++EXEPROGS=$(TARGETS:=$(EXETYPE)) $(MORETARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) + +diff -urNad core++-1.7/progs/tutorial/Makefile core++-1.7~/progs/tutorial/Makefile +--- core++-1.7/progs/tutorial/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/progs/tutorial/Makefile Thu Nov 25 00:05:54 2004 +@@ -30,6 +30,9 @@ + ./delaunay 7 + ./io + ++moretest: ++# nothing to do ++ + progs: $(MORE_TARGETS) + ./prog1 + ./prog2 +@@ -107,7 +110,7 @@ + # Clean object files + #================================================= + clean: +- -@test -z "*.o" || rm -f *.o ++ -test -z "*.o" || rm -f *.o + + #================================================= + # Remove executable files +@@ -116,6 +119,6 @@ + MORE_EXEPROGS=$(MORE_TARGETS:=$(EXETYPE)) + + veryclean: clean +- -@test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) +- -@test -z "$(MORE_EXEPROGS)" || rm -f $(MORE_EXEPROGS) ++ -test -z "$(EXEPROGS)" || rm -f $(EXEPROGS) ++ -test -z "$(MORE_EXEPROGS)" || rm -f $(MORE_EXEPROGS) + +diff -urNad core++-1.7/src/Makefile core++-1.7~/src/Makefile +--- core++-1.7/src/Makefile Thu Nov 25 00:05:53 2004 ++++ core++-1.7~/src/Makefile Thu Nov 25 00:05:54 2004 +@@ -7,7 +7,7 @@ + + CORE_PATH=.. + +-INCLUDE=-I${CORE_PATH}/inc -I${CORE_PATH}/gmp/include ++INCLUDE=-I${CORE_PATH}/inc + + # VAR indicates variants of the Core library + # E.g., if VAR=(empty) then we compile the release version. +@@ -64,8 +64,10 @@ + -@test -z "*${VAR}.o" || rm -rf *${VAR}.o + + veryclean: clean +- -@test -z "${CORE_LIB}" || rm -rf "${CORE_LIB}" +- -@test -z "${CORE_SHARED_LIB}" || rm -rf "${CORE_SHARED_LIB}" ++ -test -z "${CORE_LIB}" || rm -rf "${CORE_LIB}" ++ifeq (${LINKAGE}, shared) ++ -test -z "${CORE_SHARED_LIB}" || rm -rf "${CORE_SHARED_LIB}" ++endif + + REPLACE_STRING="s/1.6, June 2003/1.7, August 2004/;s/1995-2003/1995-2004/" + --- core++-1.7.orig/debian/patches/bugfix-operatorplusplus.dpatch +++ core++-1.7/debian/patches/bugfix-operatorplusplus.dpatch @@ -0,0 +1,48 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## bugfix-operatorplusplus.dpatch by Joachim Reichel +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: The patch fixes the functions Big{Int,Rat}::operator{++,--}. +## DP: The prefix versions work fine, but the postfix versions crash the program. + +@DPATCH@ +diff -urNad core++-1.7/inc/CORE/BigInt.h /tmp/dpep.MS39vc/core++-1.7/inc/CORE/BigInt.h +--- core++-1.7.orig/inc/CORE/BigInt.h 2005-09-13 18:42:47.029475231 +0200 ++++ core++-1.7/inc/CORE/BigInt.h 2005-09-13 18:35:40.861187736 +0200 +@@ -247,14 +247,12 @@ + } + BigInt operator++(int) { + BigInt r; +- *r.rep = *rep; +- (*this)++; ++ ++(*this); + return r; + } + BigInt operator--(int) { + BigInt r; +- *r.rep = *rep; +- (*this)--; ++ --(*this); + return r; + } + //@} +diff -urNad core++-1.7.orig/inc/CORE/BigRat.h core++-1.7/inc/CORE/BigRat.h +--- core++-1.7.orig/inc/CORE/BigRat.h 2005-09-13 18:42:47.029475231 +0200 ++++ core++-1.7/inc/CORE/BigRat.h 2005-09-13 18:35:40.868185886 +0200 +@@ -249,14 +249,12 @@ + } + BigRat operator++(int) { + BigRat r; +- *r.rep = *rep; +- (*this)++; ++ ++(*this); + return r; + } + BigRat operator--(int) { + BigRat r; +- *r.rep = *rep; +- (*this)--; ++ --(*this); + return r; + } + //@} --- core++-1.7.orig/debian/patches/g++-4.1-compatibility.dpatch +++ core++-1.7/debian/patches/g++-4.1-compatibility.dpatch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## g++-4.1-compatibility.dpatch by Joachim Reichel +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: some fixes required for compatibility with g++ 4.1 + +@DPATCH@ +diff -urNad core++-1.7~/inc/CORE/linearAlgebra.h core++-1.7/inc/CORE/linearAlgebra.h +--- core++-1.7~/inc/CORE/linearAlgebra.h 2006-06-19 20:25:54.000000000 +0200 ++++ core++-1.7/inc/CORE/linearAlgebra.h 2006-06-19 20:27:03.000000000 +0200 +@@ -152,5 +152,8 @@ + + }; //Matrix + ++double det(const double a, const double b, const double c, const double d); ++double det(const Vector u, const Vector & v); // u,v are 2d vectors ++ + #endif + --- core++-1.7.orig/debian/patches/bugfix-size-type.dpatch +++ core++-1.7/debian/patches/bugfix-size-type.dpatch @@ -0,0 +1,67 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## bugfix_size_type.dpatch by Joachim Reichel +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix warning "comparison is always true due to limited range of data type" + +@DPATCH@ +diff -urNad core++-1.7~/inc/CORE/poly/Curves.tcc core++-1.7/inc/CORE/poly/Curves.tcc +--- core++-1.7~/inc/CORE/poly/Curves.tcc 2004-11-05 22:41:42.000000000 +0100 ++++ core++-1.7/inc/CORE/poly/Curves.tcc 2008-02-18 21:47:42.000000000 +0100 +@@ -148,7 +148,7 @@ + void BiPoly::constructFromString(string & s, char myX, char myY){ + if((myX != 'x' || myX != 'X') && (myY != 'y' || myY != 'Y')){ + //Replace myX with 'x' and myY with 'y' in s. +- unsigned int loc = s.find(myX, 0); ++ string::size_type loc = s.find(myX, 0); + while(loc != string::npos){ + s.replace(loc,1,1,'x'); + loc = s.find(myX, loc+1); +@@ -353,7 +353,7 @@ + BiPoly BiPoly::getbipoly(string s){ + + //Remove white spaces from the string +- unsigned int cnt=s.find(' ',0); ++ string::size_type cnt=s.find(' ',0); + while(cnt != string::npos){ + s.erase(cnt, 1); + cnt = s.find(' ', cnt); +@@ -367,7 +367,7 @@ + //To handle the case when there is one '=' sign + //Suppose s is of the form s1 = s2. Then we assign s to + //s1 + (-1)(s2) and reset len +- unsigned int loc; ++ string::size_type loc; + if((loc=s.find('=',0)) != string::npos){ + s.replace(loc,1,1,'+'); + string s3 = "(-1)("; +diff -urNad core++-1.7~/inc/CORE/poly/Poly.tcc core++-1.7/inc/CORE/poly/Poly.tcc +--- core++-1.7~/inc/CORE/poly/Poly.tcc 2004-11-06 05:47:42.000000000 +0100 ++++ core++-1.7/inc/CORE/poly/Poly.tcc 2008-02-18 21:48:26.000000000 +0100 +@@ -144,7 +144,7 @@ + void Polynomial::constructFromString(string & s, char myX) { + if(myX != 'x' || myX != 'X'){ + //Replace myX with 'x'. +- unsigned int loc = s.find(myX, 0); ++ string::size_type loc = s.find(myX, 0); + while(loc != string::npos){ + s.replace(loc,1,1,'x'); + loc = s.find(myX, loc+1); +@@ -305,7 +305,7 @@ + Polynomial Polynomial::getpoly(string & s){ + + //Remove white spaces from the string +- unsigned int cnt=s.find(' ',0); ++ string::size_type cnt=s.find(' ',0); + while(cnt != string::npos){ + s.erase(cnt, 1); + cnt = s.find(' ', cnt); +@@ -319,7 +319,7 @@ + //To handle the case when there is one '=' sign + //Suppose s is of the form s1 = s2. Then we assign s to + //s1 + (-1)(s2) and reset len +- unsigned int loc; ++ string::size_type loc; + if((loc=s.find('=',0)) != string::npos){ + s.replace(loc,1,1,'+'); + string s3 = "(-1)(";