#1 Update to beta5. Update URLs. Drop BuildRequires for EPEL < 6. Add a check script.
Opened 3 months ago by jjames. Modified 3 months ago
rpms/ jjames/crlibm master  into  master

file modified
+1 -1

@@ -1,4 +1,4 @@ 

- /crlibm-1.0beta4*

+ /crlibm-1.0beta*.tar.gz

  /.build*

  /x86_64

  /*.src.rpm

@@ -0,0 +1,204 @@ 

+ --- crlibm-eb30637/log10-td.c.orig	2016-01-04 07:59:09.000000000 -0700

+ +++ crlibm-eb30637/log10-td.c	2019-07-11 10:20:23.785394133 -0600

+ @@ -200,10 +200,10 @@ void log10_td_accurate(double *logb10h,

+     /* Filter cases */

+     if (xdb.i[HI] < 0x00100000){        /* x < 2^(-1022)    */

+       if (((xdb.i[HI] & 0x7fffffff)|xdb.i[LO])==0){

+ -       return -1.0/0.0;     

+ +       return -__builtin_inf();     

+       }                    		   /* log(+/-0) = -Inf */

+       if (xdb.i[HI] < 0){ 

+ -       return (x-x)/0;                      /* log(-x) = Nan    */

+ +       return __builtin_nan("");           /* log(-x) = Nan    */

+       }

+       /* Subnormal number */

+       E = -52; 		

+ @@ -385,10 +385,10 @@ void log10_td_accurate(double *logb10h,

+     /* Filter cases */

+     if (xdb.i[HI] < 0x00100000){        /* x < 2^(-1022)    */

+       if (((xdb.i[HI] & 0x7fffffff)|xdb.i[LO])==0){

+ -       return -1.0/0.0;     

+ +       return -__builtin_inf();     

+       }                    		   /* log(+/-0) = -Inf */

+       if (xdb.i[HI] < 0){ 

+ -       return (x-x)/0;                      /* log(-x) = Nan    */

+ +       return __builtin_nan("");           /* log(-x) = Nan    */

+       }

+       /* Subnormal number */

+       E = -52; 		

+ @@ -565,10 +565,10 @@ void log10_td_accurate(double *logb10h,

+     /* Filter cases */

+     if (xdb.i[HI] < 0x00100000){        /* x < 2^(-1022)    */

+       if (((xdb.i[HI] & 0x7fffffff)|xdb.i[LO])==0){

+ -       return -1.0/0.0;     

+ +       return -__builtin_inf();     

+       }                    		   /* log(+/-0) = -Inf */

+       if (xdb.i[HI] < 0){ 

+ -       return (x-x)/0;                      /* log(-x) = Nan    */

+ +       return __builtin_nan("");           /* log(-x) = Nan    */

+       }

+       /* Subnormal number */

+       E = -52; 		

+ @@ -743,10 +743,10 @@ void log10_td_accurate(double *logb10h,

+     /* Filter cases */

+     if (xdb.i[HI] < 0x00100000){        /* x < 2^(-1022)    */

+       if (((xdb.i[HI] & 0x7fffffff)|xdb.i[LO])==0){

+ -       return -1.0/0.0;     

+ +       return -__builtin_inf();     

+       }                    		   /* log(+/-0) = -Inf */

+       if (xdb.i[HI] < 0){ 

+ -       return (x-x)/0;                      /* log(-x) = Nan    */

+ +       return __builtin_nan("");           /* log(-x) = Nan    */

+       }

+       /* Subnormal number */

+       E = -52; 		

+ --- crlibm-eb30637/log2-td.c.orig	2016-01-04 07:59:09.000000000 -0700

+ +++ crlibm-eb30637/log2-td.c	2019-07-11 10:22:35.584115598 -0600

+ @@ -182,10 +182,10 @@ void log2_td_accurate(double *logb2h, do

+     /* Filter cases */

+     if (xdb.i[HI] < 0x00100000){        /* x < 2^(-1022)    */

+       if (((xdb.i[HI] & 0x7fffffff)|xdb.i[LO])==0){

+ -       return -1.0/0.0;     

+ +       return -__builtin_inf();     

+       }                    		   /* log(+/-0) = -Inf */

+       if (xdb.i[HI] < 0){ 

+ -       return (x-x)/0;                      /* log(-x) = Nan    */

+ +       return __builtin_nan("");           /* log(-x) = Nan    */

+       }

+       /* Subnormal number */

+       E = -52; 		

+ @@ -368,10 +368,10 @@ void log2_td_accurate(double *logb2h, do

+     /* Filter cases */

+     if (xdb.i[HI] < 0x00100000){        /* x < 2^(-1022)    */

+       if (((xdb.i[HI] & 0x7fffffff)|xdb.i[LO])==0){

+ -       return -1.0/0.0;     

+ +       return -__builtin_inf();     

+       }                    		   /* log(+/-0) = -Inf */

+       if (xdb.i[HI] < 0){ 

+ -       return (x-x)/0;                      /* log(-x) = Nan    */

+ +       return __builtin_nan("");           /* log(-x) = Nan    */

+       }

+       /* Subnormal number */

+       E = -52; 		

+ @@ -565,10 +565,10 @@ void log2_td_accurate(double *logb2h, do

+     /* Filter cases */

+     if (xdb.i[HI] < 0x00100000){        /* x < 2^(-1022)    */

+       if (((xdb.i[HI] & 0x7fffffff)|xdb.i[LO])==0){

+ -       return -1.0/0.0;     

+ +       return -__builtin_inf();     

+       }                    		   /* log(+/-0) = -Inf */

+       if (xdb.i[HI] < 0){ 

+ -       return (x-x)/0;                      /* log(-x) = Nan    */

+ +       return __builtin_nan("");           /* log(-x) = Nan    */

+       }

+       /* Subnormal number */

+       E = -52; 		

+ @@ -760,10 +760,10 @@ void log2_td_accurate(double *logb2h, do

+     /* Filter cases */

+     if (xdb.i[HI] < 0x00100000){        /* x < 2^(-1022)    */

+       if (((xdb.i[HI] & 0x7fffffff)|xdb.i[LO])==0){

+ -       return -1.0/0.0;     

+ +       return -__builtin_inf();     

+       }                    		   /* log(+/-0) = -Inf */

+       if (xdb.i[HI] < 0){ 

+ -       return (x-x)/0;                      /* log(-x) = Nan    */

+ +       return __builtin_nan("");           /* log(-x) = Nan    */

+       }

+       /* Subnormal number */

+       E = -52; 		

+ @@ -969,11 +969,11 @@ void log2_td_accurate(double *logb2h, do

+     if (xdb_inf.i[HI] < 0x00100000){        /* x < 2^(-1022)    */

+       if (((xdb_inf.i[HI] & 0x7fffffff)|xdb_inf.i[LO])==0){

+         infDone=1;

+ -       restemp_inf = -1.0/0.0;     

+ +       restemp_inf = -__builtin_inf();     

+       }                    		   /* log(+/-0) = -Inf */

+       if ((xdb_inf.i[HI] < 0) && (infDone==0)){ 

+         infDone=1;

+ -       restemp_inf = (x_inf-x_inf)/0;                      /* log(-x) = Nan    */

+ +       restemp_inf = __builtin_nan("");    /* log(-x) = Nan    */

+       }

+       /* Subnormal number */

+       E_inf = -52; 		

+ @@ -989,11 +989,11 @@ void log2_td_accurate(double *logb2h, do

+     if (xdb_sup.i[HI] < 0x00100000){        /* x < 2^(-1022)    */

+       if (((xdb_sup.i[HI] & 0x7fffffff)|xdb_sup.i[LO])==0){

+         supDone=1;

+ -       restemp_sup = -1.0/0.0;     

+ +       restemp_sup = -__builtin_inf();     

+       }                    		   /* log(+/-0) = -Inf */

+       if ((xdb_sup.i[HI] < 0) && (supDone==0)){ 

+         supDone=1;

+ -       restemp_sup = (x_sup-x_sup)/0;                      /* log(-x) = Nan    */

+ +       restemp_sup = __builtin_nan("");    /* log(-x) = Nan    */

+       }

+       /* Subnormal number */

+       E_sup = -52; 		

+ --- crlibm-eb30637/log-de.c.orig	2016-01-04 07:59:09.000000000 -0700

+ +++ crlibm-eb30637/log-de.c	2019-07-11 10:18:16.304598021 -0600

+ @@ -105,8 +105,8 @@ double log_rn(double x) {

+  

+     /* Filter cases */

+     if (xdb.i[HI] < 0x00100000){        /* x < 2^(-1022)    */

+ -     if (((xdb.i[HI] & 0x7fffffff)|xdb.i[LO])==0)    return -1.0/0.0;  /* log(+/-0) = -Inf */

+ -     if (xdb.i[HI] < 0)                              return (x-x)/0;   /* log(-x) = Nan    */

+ +     if (((xdb.i[HI] & 0x7fffffff)|xdb.i[LO])==0)    return -__builtin_inf();  /* log(+/-0) = -Inf */

+ +     if (xdb.i[HI] < 0)                              return __builtin_nan(""); /* log(-x) = Nan    */

+       /* Else subnormal number */

+       xdb.d *= two64; 	  /* make x a normal number    */ 

+       E = -64 + (xdb.i[HI]>>20)-1023;             /* extract the exponent */

+ @@ -136,8 +136,8 @@ double log_rn(double x) {

+  

+     /* Filter special cases */

+     if (i<(int64_t)ULL(0010000000000000)){   /* equivalent to : x < 2^(-1022)    */

+ -     if ((i & ULL(7fffffffffffffff))==0)  return -1.0/0.0;    /* log(+/-0) = -Inf */

+ -     if (i<0)                             return (x-x)/0;     /* log(-x) = Nan    */

+ +     if ((i & ULL(7fffffffffffffff))==0)  return -__builtin_inf();    /* log(+/-0) = -Inf */

+ +     if (i<0)                             return __builtin_nan("");   /* log(-x) = Nan    */

+       /* Else subnormal number */

+       y *= two64; 	  /* make x a normal number    */ 

+       E = -64;

+ @@ -239,8 +239,8 @@ double log_rd(double x) {

+  

+     /* Filter cases */

+     if (xdb.i[HI] < 0x00100000){        /* x < 2^(-1022)    */

+ -     if (((xdb.i[HI] & 0x7fffffff)|xdb.i[LO])==0)    return -1.0/0.0;  /* log(+/-0) = -Inf */

+ -     if (xdb.i[HI] < 0)                              return (x-x)/0;   /* log(-x) = Nan    */

+ +     if (((xdb.i[HI] & 0x7fffffff)|xdb.i[LO])==0)    return -__builtin_inf();  /* log(+/-0) = -Inf */

+ +     if (xdb.i[HI] < 0)                              return __builtin_nan(""); /* log(-x) = Nan    */

+       /* Else subnormal number */

+       E = -64; 		

+       xdb.d *= two64; 	  /* make x a normal number    */ 

+ @@ -269,8 +269,8 @@ double log_rd(double x) {

+  

+     /* Filter special cases */

+     if (i<(int64_t)ULL(0010000000000000)){   /* equivalent to : x < 2^(-1022)    */

+ -     if ((i & ULL(7fffffffffffffff))==0)  return -1.0/0.0;    /* log(+/-0) = -Inf */

+ -     if (i<0)                             return (x-x)/0;     /* log(-x) = Nan    */

+ +     if ((i & ULL(7fffffffffffffff))==0)  return -__builtin_inf();  /* log(+/-0) = -Inf */

+ +     if (i<0)                             return __builtin_nan(""); /* log(-x) = Nan    */

+       /* Else subnormal number */

+       y *= two64; 	  /* make x a normal number    */ 

+       E = -64;

+ @@ -366,8 +366,8 @@ double log_ru(double x) {

+  

+     /* Filter cases */

+     if (xdb.i[HI] < 0x00100000){        /* x < 2^(-1022)    */

+ -     if (((xdb.i[HI] & 0x7fffffff)|xdb.i[LO])==0)    return -1.0/0.0;  /* log(+/-0) = -Inf */

+ -     if (xdb.i[HI] < 0)                              return (x-x)/0;   /* log(-x) = Nan    */

+ +     if (((xdb.i[HI] & 0x7fffffff)|xdb.i[LO])==0)    return -__builtin_inf();  /* log(+/-0) = -Inf */

+ +     if (xdb.i[HI] < 0)                              return __builtin_nan(""); /* log(-x) = Nan    */

+       /* Else subnormal number */

+       E = -64; 		

+       xdb.d *= two64; 	  /* make x a normal number    */ 

+ @@ -398,8 +398,8 @@ double log_ru(double x) {

+  

+     /* Filter special cases */

+     if (i<(int64_t)ULL(0010000000000000)){   /* equivalent to : x < 2^(-1022)    */

+ -     if ((i & ULL(7fffffffffffffff))==0)  return -1.0/0.0;    /* log(+/-0) = -Inf */

+ -     if (i<0)                             return (x-x)/0;     /* log(-x) = Nan    */

+ +     if ((i & ULL(7fffffffffffffff))==0)  return -__builtin_inf();  /* log(+/-0) = -Inf */

+ +     if (i<0)                             return __builtin_nan(""); /* log(-x) = Nan    */

+       /* Else subnormal number */

+       y *= two64; 	  /* make x a normal number    */ 

+       E = -64;

@@ -0,0 +1,31 @@ 

+ --- crlibm-eb30637/docs/latex/crlibm.tex.orig	2016-01-04 07:59:09.000000000 -0700

+ +++ crlibm-eb30637/docs/latex/crlibm.tex	2019-07-11 10:39:16.001958008 -0600

+ @@ -1,7 +1,7 @@

+  \documentclass[a4paper,pdftex]{book} 

+  

+  \usepackage{fullpage}

+ -%\usepackage{isolatin1} 

+ +\usepackage[latin1]{inputenc}

+  \usepackage{graphicx}

+  \usepackage{mathpazo}

+  \usepackage{listings}

+ --- crlibm-eb30637/docs/latex/csh.tex.orig	2016-01-04 07:59:09.000000000 -0700

+ +++ crlibm-eb30637/docs/latex/csh.tex	2019-07-11 11:07:22.196142925 -0600

+ @@ -390,7 +390,7 @@ Line 38-44 & The goal of the second rang

+  

+  \begin{lstlisting}[caption={Procedure \texttt{cosh\_quick} - polynomial evaluation - first reconstruction},firstnumber=45]

+    y.d = b_hi;

+ -  /*   first, y�  */

+ +  /*   first, (*@$\mathrm{y}^2$@*)  */

+    square_b_hi = b_hi * b_hi;

+    /* effective computation of the polynomial approximation */

+    

+ @@ -399,7 +399,7 @@ Line 38-44 & The goal of the second rang

+      tsb_hi = 0;

+    }

+    else {

+ -    /*   second, cosh(b) = b� * (1/2 + b� * (1/24 + b� * 1/720)) */

+ +    /*   second, cosh(b) = (*@$\mathrm{b}^2$@*) * (1/2 + (*@$\mathrm{b}^2$@*) * (1/24 + (*@$\mathrm{b}^2$@*) * 1/720)) */

+      tcb_hi = (square_b_hi)* (c2.d + square_b_hi * (c4.d + square_b_hi * c6.d));

+      tsb_hi = square_b_hi * (s3.d + square_b_hi * (s5.d + square_b_hi * s7.d));

+    }

file modified
+38 -15

@@ -1,24 +1,28 @@ 

+ %global commit      eb3063791aa75bc9705b49283bf14250465220a7

+ %global shortcommit %(c=%{commit}; echo ${c:0:7})

+ %global betaver     beta5

+ 

  Name:           crlibm

  Version:        1.0

- Release:        0.19.beta4%{?dist}

+ Release:        0.20.%{betaver}%{?dist}

  Summary:        Correctly Rounded mathematical library

  

  License:        LGPLv2+

- URL:            http://lipforge.ens-lyon.fr/www/crlibm/

- Source0:        http://lipforge.ens-lyon.fr/frs/download.php/162/crlibm-1.0beta4.tar.gz

+ URL:            https://gforge.inria.fr/scm/browser.php?group_id=5929&extra=crlibm

+ # Visit this URL to get the source tarball, then rename it appropriately:

+ # https://scm.gforge.inria.fr/anonscm/gitweb?p=metalibm/crlibm.git;a=snapshot;h=%%{commit};sf=tgz

+ Source0:        %{name}-%{version}%{betaver}.tar.gz

+ # Build a shared library instead of a static library

  Patch0:         %{name}-1.0beta4-shared.patch

- 

- %if 0%{?fedora}

- BuildRequires:  texlive-collection-latexrecommended

- BuildRequires:  tex(fullpage.sty)

- %else if 0%{?rhel} >= 6

- BuildRequires:  texlive-latex

- %else

- BuildRequires:  tetex-latex

- %endif

+ # Use gcc builtins instead of dividing by zero

+ Patch1:         %{name}-1.0beta5-div-by-zero.patch

+ # Fix some ISO8859-1 issues in the LaTeX documentation

+ Patch2:         %{name}-1.0beta5-latin-tex.patch

  

  BuildRequires:  autoconf, automake, libtool

  BuildRequires:  libscs-devel

+ BuildRequires:  tex(latex)

+ BuildRequires:  tex(fullpage.sty)

  

  %description

  CRlibm is a free mathematical library (libm) which provides:

@@ -40,8 +44,10 @@ 

  

  

  %prep

- %setup -q -n %{name}-1.0beta4

+ %setup -q -n %{name}-%{shortcommit}

  %patch0 -p1 -b .shared

+ %patch1 -p1 -b .div-by-zero

+ %patch2 -p1 -b .latin-tex

  

  rm -rf scs_lib

  

@@ -50,19 +56,30 @@ 

  # autoreconf requires because the patch modifies configure.ac and Makefile.am

  autoreconf --install --force

  %configure --disable-static

+ 

+ # Get rid of undesirable hardcoded rpaths; workaround libtool reordering

+ # -Wl,--as-needed after all the libraries.

+ sed -e 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' \

+     -e 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' \

+     -e 's|CC="\(g..\)"|CC="\1 -Wl,--as-needed"|' \

+     -i libtool

+ 

  make %{?_smp_mflags}

  make crlibm.pdf

  

  

  %install

- rm -rf $RPM_BUILD_ROOT

  make install DESTDIR=$RPM_BUILD_ROOT

- find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'

+ find $RPM_BUILD_ROOT -name '*.la' -delete

  

  # We do not want to install the test programs

  rm -rf $RPM_BUILD_ROOT%{_bindir}

  

  

+ %check

+ LD_LIBRARY_PATH=$RPM_BUILD_ROOT%{_libdir} make check

+ 

+ 

  %ldconfig_scriptlets

  

  

@@ -77,6 +94,12 @@ 

  

  

  %changelog

+ * Thu Jul 11 2019 Jerry James <loganjerry@gmail.com> - 1.0-0.20.beta5

+ - Update to beta5

+ - Update URLs

+ - Drop BuildRequires for EPEL < 6

+ - Add a check script

+ 

  * Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.0-0.19.beta4

  - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild

  

file modified
+1 -1

@@ -1,1 +1,1 @@ 

- 8ecabd55d4a2d08030eb770ae2a5670a  crlibm-1.0beta4.tar.gz

+ SHA512 (crlibm-1.0beta5.tar.gz) = 4085efc6c71ee16878a9939d70f6de6abab8371d8e2eead643e769f9aa51d22ffee2a33a3d11993be6657a7837844f22f39b1544d8e03d79471fb4bb4887496b