debian/0000755000000000000000000000000012172065375007176 5ustar debian/lcalc.10000644000000000000000000001250012074271021010320 0ustar .\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.36. .TH LCALC "1" "May 2008" "lcalc 1.11 Feb 5, 2008" "User Commands" .SH NAME lcalc \- program for calculating with L-functions .SH SYNOPSIS .B lcalc [\fIOPTIONS\fR]... .SH DESCRIPTION lcalc 1.11 Feb 5, 2008 .PP This program computes zeros and values of L\-function. .TP \fB\-h\fR, \fB\-\-help\fR Print help and exit .TP \fB\-V\fR, \fB\-\-version\fR Print version and exit .TP \fB\-v\fR, \fB\-\-value\fR compute L\-function at x+iy. Should be used in conjunction with x and y options (default=off) .TP \fB\-x\fR, \fB\-\-x\fR=\fIDouble\fR Used with value,value\-line\-segment, and zeros\-interval options (default=`.5') .TP \fB\-y\fR, \fB\-\-y\fR=\fIDouble\fR Used with value,value\-line\-segment, and zeros\-interval options (default=`0') .TP \fB\-\-value\-file\fR=\fIfilename\fR compute L\-function at points specified in file .TP \fB\-\-value\-line\-segment\fR compute L\-function along a line segment connecting (x,y) to (X,Y) at number\-sample points (default=off) .TP \fB\-X\fR, \fB\-\-X\fR=\fIDouble\fR Used with value\-line\-segment (default=`.5') .TP \fB\-Y\fR, \fB\-\-Y\fR=\fIDouble\fR Used with value\-line\-segment (default=`100') .TP \fB\-n\fR, \fB\-\-number\-samples\fR=\fIINT\fR Used with value\-line\-segment, and interpolate options (default=`1000') .TP \fB\-z\fR, \fB\-\-zeros\fR=\fIINT\fR number of zeros to find .TP \fB\-Z\fR, \fB\-\-zeros\-interval\fR number of zeros to find in an interval (1/2+ix,1/2+iy) using steps of size stepsize. Use with the x,y, and stepsize options (default=off) .TP \fB\-\-stepsize\fR=\fIDouble\fR Used with zeros\-interval .TP \fB\-d\fR, \fB\-\-derivative\fR=\fIINT\fR compute derivative. use \fB\-d\fR \fB\-1\fR to specify logarithmic derivative. .TP \fB\-e\fR, \fB\-\-elliptic\-curve\fR specify an elliptic curve over Q. Use with the a1 a2 a3 a4 a6 options (default=off) .TP \fB\-\-a1\fR=\fIrational_number\fR Used with the elliptic\-curve option .TP \fB\-\-a2\fR=\fIrational_number\fR Used with the elliptic\-curve option .TP \fB\-\-a3\fR=\fIrational_number\fR Used with the elliptic\-curve option .TP \fB\-\-a4\fR=\fIrational_number\fR Used with the elliptic\-curve option .TP \fB\-\-a6\fR=\fIrational_number\fR Used with the elliptic\-curve option .TP \fB\-F\fR, \fB\-\-file\-input\fR=\fIfilename\fR input a file with basic L\-function data .TP \fB\-u\fR, \fB\-\-url\fR=\fIurl\fR input a web based file with basic L\-function data. Specify the url of the file .TP \fB\-i\fR, \fB\-\-interpolate\fR=\fIfilename2\fR interpolate between two L\-functions and find their zeros. Should be used in conjunction with file\-input .TP \fB\-C\fR, \fB\-\-output\-character\fR=\fISTRING\fR if twisting, output the character (possible values="1", "2" default=`1') .TP \fB\-o\fR, \fB\-\-output\-data\fR=\fInumber\fR Dirichlet coeffs output basic data for the underlying L\-function .IP (default=`10') .TP \fB\-\-verbose\fR=\fIINT\fR verbosity > 0 outputs extra info (default=`0') .TP \fB\-P\fR, \fB\-\-precision\fR=\fIINT\fR number digits precision (default=`14') .TP \fB\-S\fR, \fB\-\-sacrifice\fR=\fIINT\fR number digits to sacrifice (default=`2') .TP \fB\-r\fR, \fB\-\-rank\-compute\fR compute the rank (default=off) .TP \fB\-\-rank\-verify\fR=\fIINT\fR verify if specified rank is correct .TP \fB\-l\fR, \fB\-\-rank\-limit\fR=\fIINT\fR when doing quadratic twists limit to L\-functions with specified rank .TP \fB\-t\fR, \fB\-\-tau\fR Ramanujan tau L\-function (weight 12, full level) (default=off) .TP \fB\-q\fR, \fB\-\-twist\-quadratic\fR twist by fundamental quadratic characters, start <= discriminant <= finish. Use with start and finish options. (default=off) .TP \fB\-s\fR, \fB\-\-start\fR=\fIinteger\fR Used with various twisting options .TP \fB\-f\fR, \fB\-\-finish\fR=\fIinteger\fR Used with various twisting options. Default has finish=start .TP \fB\-\-twist\-quadratic\-even\fR twist by fundamental quadratic characters, even functional eqn, start <= discriminant <= finish (default=off) .TP \fB\-p\fR, \fB\-\-twist\-primitive\fR twist by all primitive Dirichlet characters with start <= conductor <= finish. For L\-functions with complex Dirichlet coefficients, conjugate characters are considered equaivalent (default=off) .TP \fB\-A\fR, \fB\-\-twist\-all\fR twist by all Dirichlet characters with start <= conductor <= finish. (default=off) .TP \fB\-a\fR, \fB\-\-twist\-all\-no\-conj\-pairs\fR twist by all Dirichlet characters with start <= conductor <= finish. For L\-functions with complex Dirichlet coefficients, conjugate pairs of characters are considered equivalent .IP (default=off) .TP \fB\-c\fR, \fB\-\-twist\-complex\-no\-conj\-pairs\fR twist by all complex primitive Dirichlet .IP characters with start <= conductor <= finish. For L\-functions with complex Dirichlet coefficients, conjugate pairs of characters are considered equivalent (default=off) .TP \fB\-g\fR, \fB\-\-twist\-generic\fR twist by a generic complex Dirichlet characters with start <= conductor <= finish. (default=off) .TP \fB\-D\fR, \fB\-\-degree\fR=\fIdegree\fR can only be used in conjunction with twist\-primitive (?). Select characters of specified degree. Not yet implemented .SH "SEE ALSO" The full documentation for .B lcalc is maintained as a Texinfo manual. If the .B info and .B lcalc programs are properly installed at your site, the command .IP .B info lcalc .PP should give you access to the complete manual. debian/lcalc.manpages0000644000000000000000000000001712074144164011762 0ustar debian/lcalc.1 debian/rules0000755000000000000000000000134112154426270010250 0ustar #!/usr/bin/make -f DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) %: dh $@ --sourcedirectory=src --parallel override_dh_auto_build: dh_auto_build -- PARI_DEFINE=-DINCLUDE_PARI override_dh_auto_test: override_dh_auto_install: mkdir -p debian/tmp/usr/bin mkdir -p debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH) mkdir -p debian/tmp/usr/include/Lfunction cp src/lcalc debian/tmp/usr/bin cp src/libLfunction.so.0 debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH) cp include/*.h debian/tmp/usr/include/Lfunction override_dh_link: dh_link -pliblfunction-dev usr/lib/$(DEB_HOST_MULTIARCH)/libLfunction.so.0 usr/lib/$(DEB_HOST_MULTIARCH)/libLfunction.so override_dh_auto_clean: rm -f src/libLfunction.so.0 dh_auto_clean debian/changelog0000644000000000000000000000400412172064746011047 0ustar lcalc (1.23+dfsg-1) unstable; urgency=low * Repack tarball to remove binary file. -- Tobias Hansen Fri, 19 Jul 2013 00:19:08 +0200 lcalc (1.23-2) unstable; urgency=low * Ship the shared library liblfunction (Closes: #702901). * Move from experimental to unstable. -- Tobias Hansen Sun, 30 Jun 2013 23:16:56 +0200 lcalc (1.23-1) experimental; urgency=low * New upstream release (Closes: #592426). * New maintainer Debian Science Team, uploader me, with permission from Tim Abbott. * Transition to dh (compat level 9). * Enable hardening flags via dpkg-buildflags. * Standards-Version 3.9.4 * Remove unnecessary mpfr and gmp dependencies. (Like in Sage, the package is currently built without mpfr. It fails to build when mpfr is enabled.) * Install the README file. * Use copyright format 1.0. * Create watch file. * debian/patches/gcc.patch: debian/patches/pari_2.5.patch: - Refresh and add headers. * debian/patches/lcalc-const-fixes.patch: - Remove: Was mostly applied upstream and the remaining 3 const fixes caused FTBFS. * debian/patches/Makefile.patch: - Add: Mostly a patch from Sage to use $CC, $CXX, $CXXFLAGS and $CPPFLAGS properly. -- Tobias Hansen Sat, 12 Jan 2013 15:30:14 +0100 lcalc (0.0.20080205-1.2) unstable; urgency=low * Non-maintainer upload. * debian/control: - Build-depend on versioned libpari-dev (>= 2.5) (Closes: #644092). -- Luca Falavigna Sat, 10 Dec 2011 02:36:15 +0100 lcalc (0.0.20080205-1.1) unstable; urgency=medium * Non-maintainer upload. * debian/patches/gcc.patch: - Fix FTBFS with newer gcc (Closes: #624986). * debian/patches/pari_2.5.patch: - Port to pari 2.5 API (Closes: #635506). -- Luca Falavigna Sun, 14 Aug 2011 15:38:48 +0200 lcalc (0.0.20080205-1) unstable; urgency=low * Initial release (Closes: #480088). -- Tim Abbott Fri, 30 May 2008 00:35:05 -0400 debian/liblfunction0.install0000644000000000000000000000003412154424615013327 0ustar usr/lib/*/libLfunction.so.* debian/copyright0000644000000000000000000000513112171064677011134 0ustar Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: lcalc Source: http://oto.math.uwaterloo.ca/~mrubinst/L_function_public/CODE/ Files: * Copyright: Copyright (C) 2001,2002,2003,2004 Michael Rubinstein License: GPL-2+ Files: include/Lcomplex.h Copyright: (C) 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. License: GPL-2+ Files: include/getopt.h Copyright: (C) 1989-1994, 1996-1999, 2001 Free Software Foundation, Inc. License: LGPL-2.1+ Files: include/Lgmpfrxx.h Copyright: 2001, 2002, 2003, 2006 Free Software Foundation, Inc. License: LGPL-2.1+ Files: debian/* Copyright: (C) 2008, Tim Abbott (C) 2013, Tobias Hansen License: GPL-2+ Files: debian/repack.s* Copyright: 2009, Ryan Niebur 2009-2011, gregor herrmann License: Artistic or GPL-1+ License: GPL-2+ This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. . On Debian systems, the complete text of the GNU General Public License version 2 can be found in /usr/share/common-licenses/GPL-2 License: LGPL-2.1+ This package is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. . This package is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. . You should have received a copy of the GNU Lesser General Public License along with this package; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA . On Debian systems, the complete text of the GNU Lesser General Public License version 2.1 can be found in `/usr/share/common-licenses/LGPL-2.1'. debian/patches/0000755000000000000000000000000012154425433010620 5ustar debian/patches/pari_2.5.patch0000644000000000000000000000241512074252305013157 0ustar Description: Port to pari 2.5 API Author: Luca Falavigna Bug-Debian: http://bugs.debian.org/635506 --- a/src/Lcommandline.cc +++ b/src/Lcommandline.cc @@ -473,7 +473,7 @@ #ifdef INCLUDE_PARI if(do_elliptic_curve){ - allocatemoremem((int) N_terms*16+1000000); //XXXXXXXXX this should depend on whether we're double or long double or mpfr double + allocatemem((int) N_terms*16+1000000); //XXXXXXXXX this should depend on whether we're double or long double or mpfr double if (my_verbose>0) cout << "Will precompute " << N_terms << " elliptic L-function dirichlet coefficients..." << endl; initialize_new_L(a1,a2,a3,a4,a6,N_terms); } --- a/src/Lcommandline_elliptic.cc +++ b/src/Lcommandline_elliptic.cc @@ -121,11 +121,11 @@ F = cgetg(6, t_VEC); - F[1] = lgeti(BIGDEFAULTPREC); - F[2] = lgeti(BIGDEFAULTPREC); - F[3] = lgeti(BIGDEFAULTPREC); - F[4] = lgeti(BIGDEFAULTPREC); - F[5] = lgeti(BIGDEFAULTPREC); + F[1] = (long)cgeti(BIGDEFAULTPREC); + F[2] = (long)cgeti(BIGDEFAULTPREC); + F[3] = (long)cgeti(BIGDEFAULTPREC); + F[4] = (long)cgeti(BIGDEFAULTPREC); + F[5] = (long)cgeti(BIGDEFAULTPREC); //gaffsg(a1,(GEN) F[1]); //gaffsg(a2,(GEN) F[2]); debian/patches/series0000644000000000000000000000005012074263637012037 0ustar gcc.patch pari_2.5.patch Makefile.patch debian/patches/Makefile.patch0000644000000000000000000001646612154425433013373 0ustar Description: Various Makefile adjustments. * This patch was taken from the Sage spkg 1.23.p10 and further changed by me (Tobias Hansen). * Use $CC, $CXX, $CXXFLAGS and $CPPFLAGS (properly). * Change PARI location. * Remove some LDFLAGS. * Add a SONAME to libLfunction.so. Origin: http://www.sagemath.org/packages/standard/lcalc-1.23.p10.spkg Author: Tobias Hansen --- a/src/Makefile +++ b/src/Makefile @@ -26,10 +26,18 @@ GMP_FLAGS= endif - +SONAME := 0 OS_NAME := $(shell uname) -CC = g++ +#CC = g++ +# Note: I've also changed various rules to use $CXX instead of $CC, +# since we mostly compile C++, not C, and $CC is by convention +# used for the *C* compiler. +# I've kept the [name] CCFLAGS though, which we add $CXXFLAGS to. +# -leif (03/2012) +CC ?= gcc +CXX ?= g++ + #cc = /home/mrubinst/local/bin/gcc #CC = /home/mrubinst/local/bin/g++ #LD = /home/mrubinst/local/bin/g++ @@ -58,9 +66,7 @@ #MACHINE_SPECIFIC_FLAGS = -mpowerpc -mpowerpc64 -m64 endif -CCFLAGS = -Wa,-W -O3 $(OPENMP_FLAG) -Wno-deprecated $(PREPROCESSOR_DEFINE) $(MACHINE_SPECIFIC_FLAGS) $(EXTRA) -#CCFLAGS = -Wa,-W -O3 $(OPENMP_FLAG) $(PREPROCESSOR_DEFINE) $(MACHINE_SPECIFIC_FLAGS) $(EXTRA) -#CCFLAGS = -Wa,-W -O2 -fno-exceptions -Wno-deprecated $(PREPROCESSOR_DEFINE) $(MACHINE_SPECIFIC_FLAGS) $(EXTRA) +CCFLAGS += $(CXXFLAGS) $(CPPFLAGS) -O3 $(OPENMP_FLAG) -Wno-deprecated $(PREPROCESSOR_DEFINE) $(MACHINE_SPECIFIC_FLAGS) $(EXTRA) #warning- O2 doesn't help with -DUSE_LONG_DOUBLE on mac, and actually seems to hurt, making runtime longer #by a factor of 1.5 @@ -68,12 +74,12 @@ ifeq ($(PARI_DEFINE),-DINCLUDE_PARI) #location of pari.h. - LOCATION_PARI_H = /usr/local/include/pari #usual location + LOCATION_PARI_H = /usr/include/pari #usual location #location of libpari.a or of libpari.so #depending on whether static or dynamic libraries are being used. #On mac os x it's the former, on linux I think usually the latter. - LOCATION_PARI_LIBRARY = /usr/local/lib #usual location + LOCATION_PARI_LIBRARY = /usr/lib #usual location else #supplied as a dummy so as to avoid more ifeq's below LOCATION_PARI_H = . @@ -88,26 +94,12 @@ #For Mac os x we omit shared library options ifeq ($(OS_NAME),Darwin) - LDFLAGS2 = DYN_OPTION=dynamiclib else - LDFLAGS1 = -Xlinker -export-dynamic #not sure why pari calls these when linking but on the web I found - #'Libtool provides the `-export-dynamic' link flag (see section Link mode), which does this declaration. - #You need to use this flag if you are linking a shared library that will be dlopened' - #see notes below - #ifeq ($(PARI_DEFINE),-DINCLUDE_PARI) - LDFLAGS2 = $(LDFLAGS1) -Xlinker -rpath -Xlinker $(LOCATION_PARI_LIBRARY) - #else - # LDFLAGS2 = $(LDFLAGS1) - #endif DYN_OPTION=shared endif -ifeq ($(PARI_DEFINE),-DINCLUDE_PARI) - LDFLAGS = $(LDFLAGS2) -L$(LOCATION_PARI_LIBRARY) -lpari -else - LDFLAGS = $(LDFLAGS2) -endif +LDFLAGS += -L$(LOCATION_PARI_LIBRARY) -lpari @@ -129,7 +121,7 @@ #become clear which libraries the computer can find. -INSTALL_DIR= /usr/local +INSTALL_DIR ?= /usr/local #object files for the libLfunction library OBJ_L = Lglobals.o Lgamma.o Lriemannsiegel.o Lriemannsiegel_blfi.o Ldokchitser.o @@ -140,34 +132,37 @@ OBJECTS = $(OBJ3) all: -# make print_vars - make libLfunction.so - make lcalc - make examples -# make find_L -# make test +# $(MAKE) print_vars + $(MAKE) libLfunction.so.$(SONAME) + $(MAKE) lcalc + $(MAKE) examples +# $(MAKE) find_L +# $(MAKE) test print_vars: @echo OS_NAME = $(OS_NAME) lcalc: $(OBJECTS) - $(CC) $(CCFLAGS) $(INCLUDEFILES) $(OBJECTS) $(LDFLAGS) -o lcalc $(GMP_FLAGS) + $(CXX) $(CCFLAGS) $(INCLUDEFILES) $(OBJECTS) $(LDFLAGS) -o lcalc $(GMP_FLAGS) examples: - $(CC) $(CCFLAGS) $(INCLUDEFILES) example_programs/example.cc libLfunction.so -o example_programs/example $(GMP_FLAGS) + $(CXX) $(CCFLAGS) $(INCLUDEFILES) example_programs/example.cc libLfunction.so.$(SONAME) -o example_programs/example $(GMP_FLAGS) proc: - $(CC) $(CCFLAGS) $(INCLUDEFILES) example_programs/proc.cc libLfunction.so -o example_programs/proc $(GMP_FLAGS) + $(CXX) $(CCFLAGS) $(INCLUDEFILES) example_programs/proc.cc libLfunction.so.$(SONAME) -o example_programs/proc $(GMP_FLAGS) test: - $(CC) $(CCFLAGS) $(INCLUDEFILES) example_programs/test.cc libLfunction.so -o example_programs/test $(GMP_FLAGS) + $(CXX) $(CCFLAGS) $(INCLUDEFILES) example_programs/test.cc libLfunction.so.$(SONAME) -o example_programs/test $(GMP_FLAGS) find_L: - $(CC) $(CCFLAGS) $(INCLUDEFILES) find_L_functions/find_L_functions.cc libLfunction.so -o find_L_functions/find_L $(GMP_FLAGS) + $(CXX) $(CCFLAGS) $(INCLUDEFILES) find_L_functions/find_L_functions.cc libLfunction.so.$(SONAME) -o find_L_functions/find_L $(GMP_FLAGS) + .cc.o: - $(CC) $(CCFLAGS) $(INCLUDEFILES) -c $< + $(CXX) $(CCFLAGS) $(INCLUDEFILES) -c $< + +# Warning: We add $CXXFLAGS to CCFLAGS above. .c.o: $(CC) $(CCFLAGS) $(INCLUDEFILES) -c $< @@ -227,7 +222,7 @@ Lcommandline_elliptic.o: ../include/Lvalue.h ../include/Lfind_zeros.h Lcommandline_elliptic.o: ../include/Lcommandline_numbertheory.h Lcommandline_elliptic.o: ../include/Lcommandline_globals.h - $(CC) $(CCFLAGS) $(INCLUDEFILES) -I$(LOCATION_PARI_H) $(PARI_DEFINE) -c Lcommandline_elliptic.cc + $(CXX) $(CCFLAGS) $(INCLUDEFILES) -I$(LOCATION_PARI_H) $(PARI_DEFINE) -c Lcommandline_elliptic.cc Lcommandline_twist.o: ../include/Lcommandline_twist.h ../include/L.h Lcommandline_twist.o: ../include/Lglobals.h ../include/Lcommon.h ../include/Lcomplex.h ../include/Lnumeric.h ../include/Lint_complex.h @@ -239,7 +234,7 @@ Lcommandline_twist.o: ../include/Lcommandline_numbertheory.h Lcommandline_twist.o: ../include/Lcommandline_globals.h Lcommandline_twist.o: ../include/Lcommandline_elliptic.h - $(CC) $(CCFLAGS) $(INCLUDEFILES) -I$(LOCATION_PARI_H) $(PARI_DEFINE) -c Lcommandline_twist.cc + $(CXX) $(CCFLAGS) $(INCLUDEFILES) -I$(LOCATION_PARI_H) $(PARI_DEFINE) -c Lcommandline_twist.cc cmdline.o: ../include/cmdline.h ../include/getopt.h #$(CC) $(CCFLAGS) $(INCLUDEFILES) -DHAVE_LONG_LONG -c cmdline.c @@ -258,19 +253,20 @@ Lcommandline.o: ../include/Lcommandline_elliptic.h Lcommandline.o: ../include/Lcommandline_twist.h Lcommandline.o: ../include/Lcommandline_values_zeros.h - $(CC) $(CCFLAGS) $(INCLUDEFILES) -I$(LOCATION_PARI_H) $(PARI_DEFINE) -c Lcommandline.cc + $(CXX) $(CCFLAGS) $(INCLUDEFILES) -I$(LOCATION_PARI_H) $(PARI_DEFINE) -c Lcommandline.cc -libLfunction.so: $(OBJ_L) - g++ -$(DYN_OPTION) -o libLfunction.so $(OBJ_L) +libLfunction.so.$(SONAME): $(OBJ_L) + $(CXX) $(CCFLAGS) $(LDFLAGS) -$(DYN_OPTION) -Wl,-soname,libLfunction.so.$(SONAME) -o libLfunction.so.$(SONAME) $(OBJ_L) clean: - rm -f *.o lcalc libLfunction.so example_programs/example + rm -f *.o lcalc libLfunction.so.$(SONAME) example_programs/example install: cp -f lcalc $(INSTALL_DIR)/bin/. - cp -f libLfunction.so $(INSTALL_DIR)/lib/. + cp -f libLfunction.so.$(SONAME) $(INSTALL_DIR)/lib/. cp -rf ../include $(INSTALL_DIR)/include/Lfunction + ln -s $(INSTALL_DIR)/lib/libLfunction.so.$(SONAME) $(INSTALL_DIR)/lib/libLfunction.so SRCS = Lcommandline.cc Lcommandline_elliptic.cc Lcommandline_globals.cc Lcommandline_misc.cc Lcommandline_numbertheory.cc Lcommandline_twist.cc Lcommandline_values_zeros.cc Lgamma.cc Lglobals.cc Lmisc.cc Lriemannsiegel.cc Lriemannsiegel_blfi.cc cmdline.c debian/patches/gcc.patch0000644000000000000000000000303012074252244012370 0ustar Description: Fix FTBFS with newer gcc Author: Luca Falavigna Bug-Debian: http://bugs.debian.org/624986 --- a/src/Lglobals.cc +++ b/src/Lglobals.cc @@ -21,6 +21,7 @@ */ #include "Lglobals.h" +#include //-----Global variables--------------------------------------- --- a/include/Lcommon.h +++ b/include/Lcommon.h @@ -26,13 +26,13 @@ inline double lcalc_to_double(const double& x) { return x; } #endif //inline double lcalc_to_double(const long double& x) { return x; } -inline double lcalc_to_double(const int& x) { return x; } -inline double lcalc_to_double(const long long& x) { return x; } -inline double lcalc_to_double(const short& x) { return x; } -inline double lcalc_to_double(const char& x) { return x; } -inline double lcalc_to_double(const long int& x) { return x; } -inline double lcalc_to_double(const unsigned int& x) { return x; } -inline double lcalc_to_double(const long unsigned int& x) { return x; } +//inline double lcalc_to_double(const int& x) { return x; } +//inline double lcalc_to_double(const long long& x) { return x; } +//inline double lcalc_to_double(const short& x) { return x; } +//inline double lcalc_to_double(const char& x) { return x; } +//inline double lcalc_to_double(const long int& x) { return x; } +//inline double lcalc_to_double(const unsigned int& x) { return x; } +//inline double lcalc_to_double(const long unsigned int& x) { return x; } #define Int(x) (int)(lcalc_to_double(x)) #define Long(x) (Long)(lcalc_to_double(x)) #define double(x) (double)(lcalc_to_double(x)) debian/repack.sh0000755000000000000000000000744612153702006011001 0ustar #!/bin/sh # see the repack.stub for how to use # Copyright 2009, Ryan Niebur # Copyright 2009-2011, gregor herrmann # License: Artistic or GPL-1+ # TODO: provide example watch files and repack.locals # TODO: test suite. problems fixed that need to be tested: # * globbing # * whitespace and then comments in the MANIFEST # TODO: does / in weird places work? test suite too. # TODO: I actually broke stuff with the MANIFEST change not thinking.. # TODO: allow for a sepearate (and multiple) MANIFEST files, then # de-uglify libsyntax-highlight-engine-kate-perl. # TODO: have each mv and rm check that something actually changed, and # if not, die set -e set -u usage() { echo "Usage: repack.sh --upstream-version " exit 1 } if [ "$#" != "3" ]; then usage fi if [ "$1" != "--upstream-version" ]; then usage fi if [ ! -f "$3" ]; then if [ -n "$3" ]; then echo "$3 doesn't exist" fi usage fi VER="$2" FILE="$3" PKG=`dpkg-parsechangelog|grep ^Source:|sed 's/^Source: //'` SUFFIX="+dfsg" echo echo "Repackaging $FILE" echo DIR=`mktemp -d ./tmpRepackXXXXXX` DIR=$(readlink -f "$DIR") trap "/bin/rm -rf \"$DIR\"" QUIT INT EXIT # Create an extra directory to cope with rootless tarballs UP_BASE="$DIR/unpack" mkdir "$UP_BASE" tar xf "$FILE" -C "$UP_BASE" || unzip "$FILE" -d "$UP_BASE" if [ `ls -1 "$UP_BASE" | wc -l` -eq 1 ]; then # Tarball does contain a root directory UP_BASE="$UP_BASE/`ls -1 "$UP_BASE"`" fi RM_OPTS="-vrf" real_rm(){ /bin/rm "$@" } real_mv(){ /bin/mv "$@" } rm(){ set +f MYOLDPWD=$(pwd) cd "$UP_BASE" if [ "$MANIFEST" = "1" ]; then PERM=$(stat --format=%a "MANIFEST") chmod u+w "MANIFEST" fi for i in $@; do if [ "$MANIFEST" = "1" ]; then PATTERN="^$i" if [ -d "$i" ]; then if ! { echo "$PATTERN" | grep -q "/$" ; }; then PATTERN="${PATTERN}/" fi else PATTERN="${PATTERN}\s?" fi grep -Ev "$PATTERN" "MANIFEST" > "$DIR/MANIFEST" real_mv "$DIR/MANIFEST" "MANIFEST" fi real_rm "$RM_OPTS" "$i" done if [ "$MANIFEST" = "1" ]; then chmod $PERM "MANIFEST" fi cd $MYOLDPWD set -f } mv(){ set +f OLD=$(pwd) cd $UP_BASE real_mv "$@" cd $OLD if [ "$MANIFEST" = "1" ]; then echo "MANIFEST cannot be manipulated with mv yet, patches welcome" exit 1 fi set -f } # bump with incompatible changes REPACK_VERSION=4 requires_version(){ if [ $REPACK_VERSION -lt $1 ]; then echo "repack.sh is not up to date enough for this package. you need at least version $1, while this script is only version $REPACK_VERSION" exit 1 fi } MANIFEST=0 ## Remove stuff set -f MYORIGPWD=$(pwd) cd "$UP_BASE" . "$MYORIGPWD/debian/repack.local" cd $MYORIGPWD set +f ## End REPACK_DIR="$PKG-${VER}${SUFFIX}.orig" # DevRef ยง 6.7.8.2 DFSG_TAR="$(dirname $FILE)/${PKG}_${VER}${SUFFIX}.orig.tar" real_mv "$UP_BASE" "$DIR/$REPACK_DIR" # .gz or .bz2? FILETYPE=$(file --brief --mime-type --dereference "$FILE") case "$FILETYPE" in application/x-gzip|application/gzip|application/zip) C_PROGRAM="gzip" C_SUFFIX="gz" ;; application/x-bzip2|application/bzip2) C_PROGRAM="bzip2" C_SUFFIX="bz2" ;; application/x-xz|application/xz) C_PROGRAM="xz" C_SUFFIX="xz" ;; *) echo "E: Unknown filetye $FILETYPE" exit 1 ;; esac # Using a pipe hides tar errors! tar cfC "$DIR/repacked.tar" "$DIR" "$REPACK_DIR" $C_PROGRAM -9 < "$DIR/repacked.tar" > "$DIR/repacked.tar.$C_SUFFIX" real_mv "$DIR/repacked.tar.$C_SUFFIX" "$DFSG_TAR.$C_SUFFIX" echo "*** $DFSG_TAR.$C_SUFFIX ready" debian/source/0000755000000000000000000000000012064702377010476 5ustar debian/source/format0000644000000000000000000000001412064671460011702 0ustar 3.0 (quilt) debian/watch0000644000000000000000000000023712171064625010225 0ustar version=3 opts=dversionmangle=s/\+dfsg$// \ http://oto.math.uwaterloo.ca/~mrubinst/L_function_public/CODE/L-(.+).tar.gz \ debian sh debian/repack.stub debian/liblfunction-dev.install0000644000000000000000000000122112164123042014011 0ustar usr/include/Lfunction/Lcommon.h usr/include/Lfunction/Lcommon_ld.h usr/include/Lfunction/Lcomplex.h usr/include/Lfunction/Ldirichlet_series.h usr/include/Lfunction/Ldokchitser.h usr/include/Lfunction/Lexplicit_formula.h usr/include/Lfunction/Lfind_zeros.h usr/include/Lfunction/Lgamma.h usr/include/Lfunction/Lglobals.h usr/include/Lfunction/Lgmpfrxx.h usr/include/Lfunction/Lgram.h usr/include/Lfunction/L.h usr/include/Lfunction/Lmisc.h usr/include/Lfunction/Lnumberzeros.h usr/include/Lfunction/Lprint.h usr/include/Lfunction/Lriemannsiegel_blfi.h usr/include/Lfunction/Lriemannsiegel.h usr/include/Lfunction/Lvalue.h usr/include/Lfunction/mpfr_mul_d.h debian/repack.stub0000644000000000000000000000360312172064425011337 0ustar #!/bin/sh : <<=cut =pod =head1 NAME repack.stub - script to repack upstream tarballs from uscan =head1 INSTRUCTIONS put this in debian/repack.stub and add "debian sh debian/repack.stub" to the end of the line in debian/watch. you will also need to add a version mangle to debian/watch. then create a debian/repack.local. this is a shell script that is sourced under "set -e", so be careful to check returns codes. =head1 FUNCTIONS =over 4 =item rm rm is replaced by a function that does some magic ("rm -rv" by default), but also changes MANIFEST if $MANIFEST is 1 =item mv mv is replaced by a function that just does mv (by default), but also changes MANIFEST if $MANIFEST is 1 =item requires_version requires_version is there for future usage for requiring certain versions of the script =back =head1 VARIABLES =over 4 =item SUFFIX defaults to +dfsg what to append to the upstream version =item RM_OPTS defaults to -vrf options to pass to rm =item MANIFEST defaults to 0, set to 1 to turn on. this will manipulate MANIFEST files in CPAN tarballs. =item UP_BASE this is the directory where the upstream source is. =back =head1 COPYRIGHT AND LICENSE Copyright 2009, Ryan Niebur License: Artistic or GPL-1+ =cut if [ -z "$REPACK_SH" ]; then if [ -f debian/repack.sh ]; then REPACK_SH=debian/repack.sh fi if [ -f ../../scripts/repack.sh ]; then REPACK_SH=../../scripts/repack.sh fi if [ -z "$REPACK_SH" ] && which repack.sh > /dev/null; then REPACK_SH=$(which repack.sh) fi fi if [ ! -f "$REPACK_SH" ]; then echo "Couldn't find a repack.sh. please put it in your PATH, put it at ../../scripts/repack.sh, or put it somewhere else and set the REPACK_SH variable" echo "You can get it from http://anonscm.debian.org/gitweb/?p=pkg-perl/scripts.git;a=blob_plain;f=repack.sh;hb=HEAD" exit 1 fi exec "$REPACK_SH" "$@" debian/lcalc.install0000644000000000000000000000001612154420210011620 0ustar usr/bin/lcalc debian/compat0000644000000000000000000000000212074141502010360 0ustar 9 debian/control0000644000000000000000000000334512154424637010606 0ustar Source: lcalc Section: math Priority: optional Maintainer: Debian Science Team Uploaders: Tobias Hansen Build-Depends: debhelper (>= 9), libpari-dev (>= 2.5) Homepage: http://oto.math.uwaterloo.ca/~mrubinst/L_function_public/L.html Standards-Version: 3.9.4 Vcs-Git: git://git.debian.org/debian-science/packages/lcalc.git Vcs-Browser: http://git.debian.org/?p=debian-science/packages/lcalc.git;a=summary Package: lcalc Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends} Description: program for calculating with L-functions lcalc is a program for computing zeros and values of L-functions. Supported L-functions include the Riemann zeta function, the L-function of the Ramanujan delta function, and L-functions of elliptic curves defined over the rationals. Package: liblfunction0 Architecture: any Multi-Arch: same Pre-Depends: ${misc:Pre-Depends} Depends: ${shlibs:Depends}, ${misc:Depends} Description: library for calculating with L-functions liblfunction is a library for computing zeros and values of L-functions. Supported L-functions include the Riemann zeta function, the L-function of the Ramanujan delta function, and L-functions of elliptic curves defined over the rationals. Package: liblfunction-dev Section: libdevel Architecture: any Depends: ${misc:Depends}, liblfunction0 (= ${binary:Version}) Description: development files for liblfunction liblfunction is a library for computing zeros and values of L-functions. Supported L-functions include the Riemann zeta function, the L-function of the Ramanujan delta function, and L-functions of elliptic curves defined over the rationals. . This package contains the development files for the library. debian/repack.local0000644000000000000000000000002612171064534011450 0ustar rm src/libLfunction.a debian/lcalc.docs0000644000000000000000000000000712074154250011113 0ustar README