From 56cdb4b5569f3a83035d6a2e2be735d189cb59a9 Mon Sep 17 00:00:00 2001 From: Joachim Reichel Date: Sun, 25 Mar 2007 14:09:48 +0000 Subject: [PATCH] update Debian stuff for 3.3-I-277 --- Maintenance/deb/sid/debian/changelog | 4 +- Maintenance/deb/sid/debian/copyright | 4 +- .../sid/debian/patches/build-library.dpatch | 45 +++---- Maintenance/deb/sid/debian/rules | 10 +- Maintenance/deb/sid/debian/tests/makefile | 9 ++ .../deb/sid/debian/tests/rounding_modes.cpp | 113 ++++++++++++++++++ 6 files changed, 156 insertions(+), 29 deletions(-) create mode 100644 Maintenance/deb/sid/debian/tests/makefile create mode 100644 Maintenance/deb/sid/debian/tests/rounding_modes.cpp diff --git a/Maintenance/deb/sid/debian/changelog b/Maintenance/deb/sid/debian/changelog index da0777b9e43..e97d9803732 100644 --- a/Maintenance/deb/sid/debian/changelog +++ b/Maintenance/deb/sid/debian/changelog @@ -1,8 +1,8 @@ -cgal (3.2.99.270-1) unstable; urgency=low +cgal (3.3~I-277-1) unstable; urgency=low * New upstream release - -- Joachim Reichel Sat, 17 Mar 2007 21:15:14 +0100 + -- Joachim Reichel Sun, 25 Mar 2007 12:58:38 +0200 cgal (3.2.1-3) unstable; urgency=low diff --git a/Maintenance/deb/sid/debian/copyright b/Maintenance/deb/sid/debian/copyright index ca22dc2add5..8e6224db3b6 100644 --- a/Maintenance/deb/sid/debian/copyright +++ b/Maintenance/deb/sid/debian/copyright @@ -3,7 +3,7 @@ Thu, 29 Apr 2004 18:43:18 +0200. It was downloaded from http://www.cgal.org/download/index.html. -The Debian packaging is (c) 2004, 2005, 2006 Joachim Reichel +The Debian packaging is (c) 2004, 2005, 2006, 2007 Joachim Reichel and is licensed under the BSD license, which can be found in /usr/share/common-licenses/BSD. @@ -199,7 +199,7 @@ file to file. Copright statement for files under the FREE_USE license ======================================================= - Copyright (c) 1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006 + Copyright (c) 1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007 Utrecht University (The Netherlands), ETH Zurich (Switzerland), Freie Universitaet Berlin (Germany), INRIA Sophia-Antipolis (France), Martin-Luther-University Halle-Wittenberg diff --git a/Maintenance/deb/sid/debian/patches/build-library.dpatch b/Maintenance/deb/sid/debian/patches/build-library.dpatch index 95f86ea2fc2..3018c7763c5 100755 --- a/Maintenance/deb/sid/debian/patches/build-library.dpatch +++ b/Maintenance/deb/sid/debian/patches/build-library.dpatch @@ -6,9 +6,9 @@ @DPATCH@ diff -urNad cgal~/install_cgal cgal/install_cgal ---- cgal~/install_cgal 2007-03-18 00:40:51.000000000 +0100 -+++ cgal/install_cgal 2007-03-18 00:40:51.000000000 +0100 -@@ -927,7 +927,7 @@ +--- cgal~/install_cgal 2007-03-25 13:01:29.000000000 +0200 ++++ cgal/install_cgal 2007-03-25 13:01:53.000000000 +0200 +@@ -934,7 +934,7 @@ #### settings for sgi mipspro compiler on irix5 CGAL_SHARED_LIB_CXXFLAGS= CGAL_SHARED_LIB_LDFLAGS="-lm" @@ -17,7 +17,7 @@ diff -urNad cgal~/install_cgal cgal/install_cgal PRINT_STACKTRACE_PROGRAM="dbx" ;; *IRIX*6.*CC*7.3*) -@@ -936,14 +936,14 @@ +@@ -943,14 +943,14 @@ ADDITIONAL_LDFLAGS="-LANG:std" CGAL_STATIC_LIB_CREATE="\$(CGAL_CXX) -ar -o''" CGAL_SHARED_LIB_CXXFLAGS= @@ -34,7 +34,7 @@ diff -urNad cgal~/install_cgal cgal/install_cgal PRINT_STACKTRACE_PROGRAM="dbx" ;; *IRIX*g++*) -@@ -951,7 +951,7 @@ +@@ -958,7 +958,7 @@ ADDITIONAL_CXXFLAGS="-Wall" LONG_NAME_PROBLEM_LDFLAGS="-U -s" CGAL_SHARED_LIB_LDFLAGS="-lm" @@ -43,7 +43,7 @@ diff -urNad cgal~/install_cgal cgal/install_cgal CGAL_SHARED_LIB_SONAME="-Wl,-soname,\$(CGAL_SHARED_LIBNAME).\$(SOMAJOR)" CGAL_SHARED_LIBNAME_WITH_SOVERSION="\$(CGAL_SHARED_LIBNAME).\$(SOVERSION)" CGAL_SHARED_LIBNAME_WITH_SOMAJOR="\$(CGAL_SHARED_LIBNAME).\$(SOMAJOR)" -@@ -962,7 +962,7 @@ +@@ -969,7 +969,7 @@ CGAL_STATIC_LIB_CREATE="\$(CGAL_CXX) -xar -o ''" CGAL_SHARED_LIB_CXXFLAGS="-PIC" CGAL_SHARED_LIB_CREATE="\$(CGAL_CXX) -G" @@ -52,7 +52,7 @@ diff -urNad cgal~/install_cgal cgal/install_cgal PRINT_STACKTRACE_PROGRAM="dbx" CGAL_SHARED_LIB_SONAME="-Qoption ld -h\$(CGAL_SHARED_LIBNAME).\$(SOMAJOR)" CGAL_SHARED_LIBNAME_WITH_SOVERSION="\$(CGAL_SHARED_LIBNAME).\$(SOVERSION)" -@@ -974,7 +974,7 @@ +@@ -982,7 +982,7 @@ LONG_NAME_PROBLEM_CXXFLAGS="-g" LONG_NAME_PROBLEM_LDFLAGS="-z nodefs -s" CGAL_SHARED_LIB_CREATE="\$(CGAL_CXX) -G" @@ -61,22 +61,25 @@ diff -urNad cgal~/install_cgal cgal/install_cgal CGAL_SHARED_LIB_SONAME="-h \$(CGAL_SHARED_LIBNAME).\$(SOMAJOR)" CGAL_SHARED_LIBNAME_WITH_SOVERSION="\$(CGAL_SHARED_LIBNAME).\$(SOVERSION)" CGAL_SHARED_LIBNAME_WITH_SOMAJOR="\$(CGAL_SHARED_LIBNAME).\$(SOMAJOR)" -@@ -983,12 +983,12 @@ - #### settings for g++ on alpha-linux (special FPU handling) - #### LONG_NAME_PROBLEM is cured by disabling debugging - ADDITIONAL_CXXFLAGS="-Wall -mieee -mfp-rounding-mode=d" -- RUNTIME_LINKER_FLAG='-Wl,-R' -+# RUNTIME_LINKER_FLAG='-Wl,-R' - ;; +@@ -991,7 +991,7 @@ + #### settings for g++ on alpha-linux (special FPU handling) + #### LONG_NAME_PROBLEM is cured by disabling debugging + ADDITIONAL_CXXFLAGS="-Wall -mieee -mfp-rounding-mode=d" +- RUNTIME_LINKER_FLAG='-Wl,-R' ++# RUNTIME_LINKER_FLAG='-Wl,-R' + CGAL_SHARED_LIB_SONAME="-Wl,-soname,\$(CGAL_SHARED_LIBNAME).\$(SOMAJOR)" + CGAL_SHARED_LIBNAME_WITH_SOVERSION="\$(CGAL_SHARED_LIBNAME).\$(SOVERSION)" + CGAL_SHARED_LIBNAME_WITH_SOMAJOR="\$(CGAL_SHARED_LIBNAME).\$(SOMAJOR)" +@@ -999,7 +999,7 @@ *Linux*g++*) - #### settings for gcc on linux + #### settings for g++ on linux ADDITIONAL_CXXFLAGS="-Wall" - RUNTIME_LINKER_FLAG='-Wl,-R' +# RUNTIME_LINKER_FLAG='-Wl,-R' CGAL_SHARED_LIB_SONAME="-Wl,-soname,\$(CGAL_SHARED_LIBNAME).\$(SOMAJOR)" CGAL_SHARED_LIBNAME_WITH_SOVERSION="\$(CGAL_SHARED_LIBNAME).\$(SOVERSION)" CGAL_SHARED_LIBNAME_WITH_SOMAJOR="\$(CGAL_SHARED_LIBNAME).\$(SOMAJOR)" -@@ -998,7 +998,7 @@ +@@ -1009,7 +1009,7 @@ # -mp is required for correct enough floating point operations # necessary for interval arithmetic. ADDITIONAL_CXXFLAGS="-mp" @@ -84,8 +87,8 @@ diff -urNad cgal~/install_cgal cgal/install_cgal +# RUNTIME_LINKER_FLAG='-Wl,-R' PRINT_STACKTRACE_PROGRAM="idb" ;; - *CYGWIN*g++*) -@@ -1037,7 +1037,7 @@ + *Linux*sunCC*) +@@ -1060,7 +1060,7 @@ ;; *Linux*pgCC*|*Linux*pgcpp*) #### settings for Portland Group Compiler on linux @@ -94,7 +97,7 @@ diff -urNad cgal~/install_cgal cgal/install_cgal # PGCC has long name problems with "-g". DEBUG_OPT="" ;; -@@ -4294,7 +4294,7 @@ +@@ -4307,7 +4307,7 @@ _buildlog_marker="log for $1 $2 shown" ${_printf} "%s %s\n" "${MAKE}" "${MAKE_OPTION}" > "${COMPILE_LOGFILE}" @@ -104,8 +107,8 @@ diff -urNad cgal~/install_cgal cgal/install_cgal log_print "vvvvvvvvvvvv build ${_buildlog_marker} below vvvvvvvvvvvv" eval ${_cat} \"${COMPILE_LOGFILE}\" ${INSTALL_LOGFILE_REDIRECTION} diff -urNad cgal~/src/CGAL/common.mk cgal/src/CGAL/common.mk ---- cgal~/src/CGAL/common.mk 2007-03-18 00:40:51.000000000 +0100 -+++ cgal/src/CGAL/common.mk 2007-03-18 00:41:13.000000000 +0100 +--- cgal~/src/CGAL/common.mk 2007-03-25 13:01:29.000000000 +0200 ++++ cgal/src/CGAL/common.mk 2007-03-25 13:01:29.000000000 +0200 @@ -104,17 +104,19 @@ clean_temp_files:: diff --git a/Maintenance/deb/sid/debian/rules b/Maintenance/deb/sid/debian/rules index 645039a1f2c..0704b4381cd 100755 --- a/Maintenance/deb/sid/debian/rules +++ b/Maintenance/deb/sid/debian/rules @@ -19,11 +19,14 @@ build: build-stamp build-stamp: patch-stamp dh_testdir dh_clean -k - QTDIR=/usr/share/qt3 ./install_cgal -ni --CXX $(CXX) --prefix `pwd`/debian/tmp/usr \ - --without-autofind --with-ZLIB --with-BOOST --with-BOOSTPROGRAMOPTIONS \ - --with-GMP --with-GMPXX --with-MPFR --with-CGALCORE \ + QTDIR=/usr/share/qt3 ./install_cgal -ni --CXX $(CXX) --prefix $(CURDIR)/debian/tmp/usr \ + --without-autofind --with-ZLIB --with-BOOST --with-BOOST_PROGRAM_OPTIONS \ + --with-GMP --with-GMPXX --with-MPFR \ --with-X11 --with-OPENGL --with-QT3MT \ --with-BLASGCCATLAS --with-LAPACK + $(MAKE) -C $(CURDIR)/debian/tests rounding_modes + -$(CURDIR)/debian/tests/rounding_modes + $(MAKE) -C $(CURDIR)/debian/tests clean touch build-stamp clean: clean-patched unpatch @@ -56,7 +59,6 @@ install: build mkdir -p debian/tmp/usr/share/doc/cgal rm debian/tmp/usr/bin/cgal_make_macosx_app - rm debian/tmp/usr/include/CGAL/OpenNL/LICENSE.OPENNL cat make/makefile_* | sed -f debian/misc/adjust-default-makefile.sed >debian/tmp/usr/share/cgal/makefile diff --git a/Maintenance/deb/sid/debian/tests/makefile b/Maintenance/deb/sid/debian/tests/makefile new file mode 100644 index 00000000000..c5ff71161fd --- /dev/null +++ b/Maintenance/deb/sid/debian/tests/makefile @@ -0,0 +1,9 @@ +include ../tmp/usr/share/cgal/makefile + +rounding_modes: rounding_modes.o + $(CGAL_CXX) -o rounding_modes rounding_modes.o $(CGAL_LDFLAGS) $(CGAL_LIBPATH) + +.cpp.o: + $(CGAL_CXX) $(CGAL_CXXFLAGS) -c $< -o $@ +clean: + rm -f *.o rounding_modes diff --git a/Maintenance/deb/sid/debian/tests/rounding_modes.cpp b/Maintenance/deb/sid/debian/tests/rounding_modes.cpp new file mode 100644 index 00000000000..c9a054df778 --- /dev/null +++ b/Maintenance/deb/sid/debian/tests/rounding_modes.cpp @@ -0,0 +1,113 @@ +// This tests the rounding mode functions. + +#include +#include +#include + +typedef CGAL::Interval_nt_advanced NT_adv; +typedef CGAL::Interval_nt<> NT; + +void print_res (bool res) +{ std::cout << (res ? "ok" : "ERROR") << std::endl; } + +// The results of 1-epsilon and -1+epsilon are enough +// to detect exactly the current rounding mode. +// 1-MIN_DOUBLE +// +------+-------+ +// | 1 | 1-ulp | +// +--------+------+-------+ +// -1+MIN_DOUBLE | -1 | near | -inf | +// | -1+ulp | +inf | zero | +// +--------+------+-------+ + +// I use a global variable here to avoid constant propagation. +double IA_min_double; + +CGAL::FPU_CW_t +FPU_empiric_test() +{ + IA_min_double = CGAL_IA_MIN_DOUBLE; + double y = 1.0, z = -1.0; + double ye, ze; + ye = y - IA_min_double; + ze = z + IA_min_double; + if (y == ye && z == ze) return CGAL_FE_TONEAREST; + if (y == ye) return CGAL_FE_UPWARD; + if (z == ze) return CGAL_FE_DOWNWARD; + return CGAL_FE_TOWARDZERO; +} + +// This variable is global in order to stop constant propagation. +double m = 0.5; + +CGAL::FPU_CW_t FPU_empiric_test_mul () +{ + int i; + for (i=0; i<10; i++) {m*=m; /* std::cout <