Package: sympow / 1.023-8

Metadata

Package Version Patches format
sympow 1.023-8 3.0 (quilt)

Patch series

view the series file
Patch File delta Description
upstream sage fpu.patch | (download)

fpu.c | 46 46 + 0 - 0 !
1 file changed, 46 insertions(+)

 fpu
 Implement inline assembly code to set the control word of the
 floating point processor to round to an IEEE-754 double
 (53-bit mantissa, 64-bits in total), rather than the default
 extended precision. This resolves problems with doctest failures
 on Solaris 10 x86, OpenSolaris on x86 and Cygwin.
 (Description extracted by hand from the Sage material as at the
 time of writing; Jerome Benoit <calculus@rezozer.net>, 2014-09-26.)
upstream sage execlp.patch | (download)

generate.c | 4 1 + 3 - 0 !
1 file changed, 1 insertion(+), 3 deletions(-)

 execlp
 Use execlp() instead of execl() to execute "sh". This is needed for
 the -new_data option to work 
upstream sage Configure adapted2debian.patch | (download)

Configure | 277 191 + 86 - 0 !
config/fpubits1.c | 58 58 + 0 - 0 !
config/fpubits2.c | 16 16 + 0 - 0 !
3 files changed, 265 insertions(+), 86 deletions(-)

 configure
 Find out the actual FPU precision with config/fpubits1.c and
 config/fpubits2.c; material adapted from Sage to Debian.
 (Description extracted by hand from the Sage material as at the
 time of writing; Jerome Benoit <calculus@rezozer.net>, 2014-09-26.)
Comment:
 This patch reinvents the wheel: autotools might be considered instead,
 Jerome Benoit <calculus@rezozer.net>.
upstream floating_point rounding_precision.patch | (download)

Configure | 29 23 + 6 - 0 !
config/fpubits1.c | 11 7 + 4 - 0 !
fpu.c | 27 25 + 2 - 0 !
fpu32.s | 15 0 + 15 - 0 !
fpu64.s | 43 0 + 43 - 0 !
main.c | 2 1 + 1 - 0 !
6 files changed, 56 insertions(+), 71 deletions(-)

 floating-point rounding precision
 Refresh and revisit the floating-point rounding precision set up by
 considering the C99 floating-point environment <fenv.h> (ISO C99 7.6)
 if applicable, or the FPU Control material <fpu_control.h>, or
 the former material as last resort.
upstream C2help2man.patch | (download)

help.c | 42 34 + 8 - 0 !
main.c | 9 6 + 3 - 0 !
sympow.h | 3 3 + 0 - 0 !
util.c | 2 2 + 0 - 0 !
4 files changed, 45 insertions(+), 11 deletions(-)

 format usages and helps
 Attempt to format and harmonize the help message of the sympow program
 wrt UN*X customs in view to employ help2man to generate a manpage.
upstream on_fly_new_data.patch | (download)

disk.c | 72 49 + 23 - 0 !
generate.c | 8 8 + 0 - 0 !
sympow.h | 1 1 + 0 - 0 !
3 files changed, 58 insertions(+), 23 deletions(-)

 on fly new_data
 Implement on fly generation for data mesh files.
upstream system_wide.patch | (download)

Configure | 18 15 + 3 - 0 !
README | 26 13 + 13 - 0 !
armd.sh | 7 0 + 7 - 0 !
disk.c | 103 61 + 42 - 0 !
generate.c | 90 60 + 30 - 0 !
help.c | 3 3 + 0 - 0 !
main.c | 208 200 + 8 - 0 !
new_data | 23 15 + 8 - 0 !
standard2.gp | 4 2 + 2 - 0 !
standard3.gp | 2 1 + 1 - 0 !
sympow.h | 63 62 + 1 - 0 !
util.c | 2 1 + 1 - 0 !
12 files changed, 433 insertions(+), 116 deletions(-)

 system wide scheme
 Implement system wide scheme:
 - sympow can be now called system wide as any regular executable;
 - precomputed plain data mesh files are kept in PKGDATADIR/datafiles
  (typically PKGDATADIR is /usr/share/sympow);
 - generated plain data mesh files are recorded in CACHEDIR/datafiles
  (by default CACHEDIR is HOME/.sympow);
 - binary data mesh files are created on the fly and stored in cache
   directories, the ones from the precomputed plain data mesh files are
	 stored in PKGCACHEDIR/datafiles/ENDIANTUPLE (typilcally PKGCACHEDIR
	 is /var/cache/sympow, and ENDIANTUPLE is a tuple characterizing the
	 architecture endianness or so for double floats) and the ones from the
	 generated plain data meshes are put in CACHEDIR/datafiles/ENDIANTUPLE;
 - the register data file param_data is in CACHEDIR/datafiles;
 - the data in CACHEDIR/datafiles are authoritative;
 - the employed script is in PKGLIBDIR (typically /usr/lib/sympow);
 - CACHEDIR, PKGCACHEDIR, PKGLIBDIR, and PKGDATADIR can be set via
   environment variables with their respective name prepended with
	 SYMPOW_ (it is recommended to set absolute paths whenever possible);
 - the basename of CACHEDIR must begin with `sympow' (typically `sympow');
 - CACHEDIR is created on the fly with respect to permissions and privileges
   whenever the following conditions are satisfied: (i) it terminates with at
	 least three directory separators (the creation is group-centric when the
	 number of separators is greater or equal to six, user-centric otherwise),
	 (ii) its parent directory exists (its basename either begins with `sympow'
	 or is implicitly assumed to be `sympow');
 - ENDIANTUPLE is set by default to bin.
upstream script new_data prune.patch | (download)

new_data | 28 18 + 10 - 0 !
1 file changed, 18 insertions(+), 10 deletions(-)

 script new_data prune
 Prune the auxiliary script new_data.
 Ideally this script might be wiped out.
 TODO:
 - clean up the generated GP scripts in
   order to create clean data files that
	 does not need to be trimmed;
 - use the system function to pipe the GP
   material.
upstream endiantuple.patch | (download)

Configure | 41 41 + 0 - 0 !
config/endiantuple.ac | 53 53 + 0 - 0 !
2 files changed, 94 insertions(+)

 endian-tuple
 Implemtent a big machinery to determine ENDIANTUPLE:
 material inspired by the software fontconfig (configure.ac
 and fcarch.h). Ideally ENDIANTUPLE might be provided by
 an appropriate tool as dpkg-architecture(1).
upstream versiontuple.patch | (download)

help.c | 1 1 + 0 - 0 !
main.c | 7 4 + 3 - 0 !
sympow.h | 5 5 + 0 - 0 !
3 files changed, 10 insertions(+), 3 deletions(-)

 version-tuple
 Implemtent a scheme to add flavour to the version string;
 by flavour, read either something as distribution version
 or type (BETA, ALPHA, RELEASE) or a combination of both.
 An option is added to display the release version numbers
 as formatted in the upstream source, Major version number
 and minor version number concatenated with a dot at the
 time of writing.
debianization.patch | (download)

Configure | 66 43 + 23 - 0 !
sympow.h | 1 1 + 0 - 0 !
2 files changed, 44 insertions(+), 23 deletions(-)

 debianization
 Meant to maintain a minimal debian/rules, to fix warnings,
 to address Debian specific stuff in general.
 This is a Debian centric patch.
debianization help2man.patch | (download)

Configure | 19 17 + 2 - 0 !
1 file changed, 17 insertions(+), 2 deletions(-)

 debianization -- help2man
 Generate the help2man man page for the program sympow.
 This is a Debian centric patch.