[calculix-cgx] 06/11: Fixed an issue compiling with gcc6 (Closes: #831136)

Wolfgang Fütterer debian at wlf-online.de
Tue Aug 9 13:20:09 UTC 2016


This is an automated email from the git hooks/post-receive script.

wlfuetter-guest pushed a commit to branch master
in repository calculix-cgx.

commit 8ab74eebac978509a6764835c1a537b67785e2ba
Author: Wolfgang Fütterer <debian at wlf-online.de>
Date:   Tue Aug 9 12:10:34 2016 +0200

    Fixed an issue compiling with gcc6 (Closes: #831136)
---
 ...issue-with-min-and-max-Functions-and-gcc6.patch | 241 +++++++++++++++++++++
 debian/patches/series                              |   1 +
 2 files changed, 242 insertions(+)

diff --git a/debian/patches/0006-Fixes-an-issue-with-min-and-max-Functions-and-gcc6.patch b/debian/patches/0006-Fixes-an-issue-with-min-and-max-Functions-and-gcc6.patch
new file mode 100644
index 0000000..d9b4552
--- /dev/null
+++ b/debian/patches/0006-Fixes-an-issue-with-min-and-max-Functions-and-gcc6.patch
@@ -0,0 +1,241 @@
+From: =?utf-8?q?Wolfgang_F=C3=BCtterer?= <debian at wlf-online.de>
+Date: Tue, 9 Aug 2016 11:22:21 +0200
+Subject: Fixes an issue with min- and max-Functions and gcc6
+
+---
+ cgx_2.11/src/defineEntity.c   |  8 +++----
+ cgx_2.11/src/extUtil.h        | 12 +++++-----
+ cgx_2.11/src/shapeFunctions.c | 56 +++++++++++++++++++++----------------------
+ cgx_2.11/src/userFunction.c   | 12 +++++-----
+ 4 files changed, 44 insertions(+), 44 deletions(-)
+
+diff --git a/cgx_2.11/src/defineEntity.c b/cgx_2.11/src/defineEntity.c
+index a3680b3..7bc6a67 100755
+--- a/cgx_2.11/src/defineEntity.c
++++ b/cgx_2.11/src/defineEntity.c
+@@ -790,8 +790,8 @@ int pre_value( char *record)
+       else if(compareStrings(string, "int")>0) sprintf(string,"%d",(int)val1);
+       else if(compareStrings(string, "float")>0) sprintf(string,"%f",(float)val1);
+       else if(compareStrings(string, "exp")>0) sprintf(string,"%e",(double)val1);
+-      else if(compareStrings(string, "max")>0) sprintf(string,"%e",max(val1,val2));
+-      else if(compareStrings(string, "min")>0) sprintf(string,"%e",min(val1,val2));
++      else if(compareStrings(string, "max")>0) sprintf(string,"%e",gmax(val1,val2));
++      else if(compareStrings(string, "min")>0) sprintf(string,"%e",gmin(val1,val2));
+       else if(compareStrings(string, "pow")>0) sprintf(string,"%e",pow(val1,val2));
+       else if(compareStrings(string, "sqr")>0) sprintf(string,"%e",sqrt(val1));
+       else if(compareStrings(string, "sin")>0) sprintf(string,"%e",sin(val1*PI/180.));
+@@ -4544,8 +4544,8 @@ int nurs( char *string, int addFlag )
+     nurbs[nr].v_stride=4;
+     nurbs[nr].ctlarray=(GLfloat *)NULL;
+ 
+-    /* additional variables for the trimming and meshing */
+-    nurbs[nr].nurbsType=0;
++	/* additional variables for the trimming and meshing */
++	nurbs[nr].nurbsType=0;
+     nurbs[nr].trimFlag=0;
+     nurbs[nr].patches=0;
+ 
+diff --git a/cgx_2.11/src/extUtil.h b/cgx_2.11/src/extUtil.h
+index 80c7995..7595973 100755
+--- a/cgx_2.11/src/extUtil.h
++++ b/cgx_2.11/src/extUtil.h
+@@ -51,12 +51,12 @@ void printf_fflush(const char *fmt,...);
+ /* from #include "f2c.h" */
+ #define abs(x) ((x) >= 0 ? (x) : -(x))
+ #define dabs(x) (double)abs(x)
+-#define min(a,b) ((a) <= (b) ? (a) : (b))
+-#define max(a,b) ((a) >= (b) ? (a) : (b))
+-#define smin(a,b) (float)min(a,b)
+-#define smax(a,b) (float)max(a,b)
+-#define dmin(a,b) (double)min(a,b)
+-#define dmax(a,b) (double)max(a,b)
++#define gmin(a,b) ((a) <= (b) ? (a) : (b))
++#define gmax(a,b) ((a) >= (b) ? (a) : (b))
++#define smin(a,b) (float)gmin(a,b)
++#define smax(a,b) (float)gmax(a,b)
++#define dmin(a,b) (double)gmin(a,b)
++#define dmax(a,b) (double)gmax(a,b)
+ 
+ 
+ typedef struct {
+diff --git a/cgx_2.11/src/shapeFunctions.c b/cgx_2.11/src/shapeFunctions.c
+index e9aa871..3e5f029 100644
+--- a/cgx_2.11/src/shapeFunctions.c
++++ b/cgx_2.11/src/shapeFunctions.c
+@@ -1696,16 +1696,16 @@ double *elemcoords;
+ 
+ /* Computing MIN */
+ 		    d__1 = xi[i__ + j * 3 + 4];
+-		    xi[i__ + j * 3 + 4] = min(d__1,1.);
++		    xi[i__ + j * 3 + 4] = gmin(d__1,1.);
+ /* Computing MAX */
+ 		    d__1 = xi[i__ + j * 3 + 4];
+-		    xi[i__ + j * 3 + 4] = max(d__1,-1.);
++		    xi[i__ + j * 3 + 4] = gmax(d__1,-1.);
+ /* Computing MIN */
+ 		    d__1 = et[i__ + j * 3 + 4];
+-		    et[i__ + j * 3 + 4] = min(d__1,1.);
++		    et[i__ + j * 3 + 4] = gmin(d__1,1.);
+ /* Computing MAX */
+ 		    d__1 = et[i__ + j * 3 + 4];
+-		    et[i__ + j * 3 + 4] = max(d__1,-1.);
++		    et[i__ + j * 3 + 4] = gmax(d__1,-1.);
+ 
+ 		    distattach_new(&xi[i__ + j * 3 + 4], &et[i__ + j * 3 + 4], &
+ 			    pneigh[4], &pnode[1], &a[i__ + j * 3 + 4], p, &
+@@ -1728,16 +1728,16 @@ L100:
+ 	    et[i__ + j * 3 + 4] = etopt + j * d2;
+ /* Computing MIN */
+ 	    d__1 = xi[i__ + j * 3 + 4];
+-	    xi[i__ + j * 3 + 4] = min(d__1,1.);
++	    xi[i__ + j * 3 + 4] = gmin(d__1,1.);
+ /* Computing MAX */
+ 	    d__1 = xi[i__ + j * 3 + 4];
+-	    xi[i__ + j * 3 + 4] = max(d__1,-1.);
++	    xi[i__ + j * 3 + 4] = gmax(d__1,-1.);
+ /* Computing MIN */
+ 	    d__1 = et[i__ + j * 3 + 4];
+-	    et[i__ + j * 3 + 4] = min(d__1,1.);
++	    et[i__ + j * 3 + 4] = gmin(d__1,1.);
+ /* Computing MAX */
+ 	    d__1 = et[i__ + j * 3 + 4];
+-	    et[i__ + j * 3 + 4] = max(d__1,-1.);
++	    et[i__ + j * 3 + 4] = gmax(d__1,-1.);
+ 	    distattach_new(&xi[i__ + j * 3 + 4], &et[i__ + j * 3 + 4], &pneigh[4]
+ 		    , &pnode[1], &a[i__ + j * 3 + 4], p, &ratio[1], nterms);
+ 	}
+@@ -1789,16 +1789,16 @@ L100:
+ 
+ /* Computing MIN */
+ 		    d__1 = xi[i__ + j * 3 + 4];
+-		    xi[i__ + j * 3 + 4] = min(d__1,1.);
++		    xi[i__ + j * 3 + 4] = gmin(d__1,1.);
+ /* Computing MAX */
+ 		    d__1 = xi[i__ + j * 3 + 4];
+-		    xi[i__ + j * 3 + 4] = max(d__1,-1.);
++		    xi[i__ + j * 3 + 4] = gmax(d__1,-1.);
+ /* Computing MIN */
+ 		    d__1 = et[i__ + j * 3 + 4];
+-		    et[i__ + j * 3 + 4] = min(d__1,1.);
++		    et[i__ + j * 3 + 4] = gmin(d__1,1.);
+ /* Computing MAX */
+ 		    d__1 = et[i__ + j * 3 + 4];
+-		    et[i__ + j * 3 + 4] = max(d__1,-1.);
++		    et[i__ + j * 3 + 4] = gmax(d__1,-1.);
+ 
+ 		    distattach_new(&xi[i__ + j * 3 + 4], &et[i__ + j * 3 + 4], &
+ 			    pneigh[4], &pnode[1], &a[i__ + j * 3 + 4], p, &
+@@ -1821,16 +1821,16 @@ L200:
+ 	    et[i__ + j * 3 + 4] = etopt + j * d3;
+ /* Computing MIN */
+ 	    d__1 = xi[i__ + j * 3 + 4];
+-	    xi[i__ + j * 3 + 4] = min(d__1,1.);
++	    xi[i__ + j * 3 + 4] = gmin(d__1,1.);
+ /* Computing MAX */
+ 	    d__1 = xi[i__ + j * 3 + 4];
+-	    xi[i__ + j * 3 + 4] = max(d__1,-1.);
++	    xi[i__ + j * 3 + 4] = gmax(d__1,-1.);
+ /* Computing MIN */
+ 	    d__1 = et[i__ + j * 3 + 4];
+-	    et[i__ + j * 3 + 4] = min(d__1,1.);
++	    et[i__ + j * 3 + 4] = gmin(d__1,1.);
+ /* Computing MAX */
+ 	    d__1 = et[i__ + j * 3 + 4];
+-	    et[i__ + j * 3 + 4] = max(d__1,-1.);
++	    et[i__ + j * 3 + 4] = gmax(d__1,-1.);
+ 	    distattach_new(&xi[i__ + j * 3 + 4], &et[i__ + j * 3 + 4], &pneigh[4]
+ 		    , &pnode[1], &a[i__ + j * 3 + 4], p, &ratio[1], nterms);
+ 	}
+@@ -1882,16 +1882,16 @@ L200:
+ 
+ /* Computing MIN */
+ 		    d__1 = xi[i__ + j * 3 + 4];
+-		    xi[i__ + j * 3 + 4] = min(d__1,1.);
++		    xi[i__ + j * 3 + 4] = gmin(d__1,1.);
+ /* Computing MAX */
+ 		    d__1 = xi[i__ + j * 3 + 4];
+-		    xi[i__ + j * 3 + 4] = max(d__1,-1.);
++		    xi[i__ + j * 3 + 4] = gmax(d__1,-1.);
+ /* Computing MIN */
+ 		    d__1 = et[i__ + j * 3 + 4];
+-		    et[i__ + j * 3 + 4] = min(d__1,1.);
++		    et[i__ + j * 3 + 4] = gmin(d__1,1.);
+ /* Computing MAX */
+ 		    d__1 = et[i__ + j * 3 + 4];
+-		    et[i__ + j * 3 + 4] = max(d__1,-1.);
++		    et[i__ + j * 3 + 4] = gmax(d__1,-1.);
+ 
+ 		    distattach_new(&xi[i__ + j * 3 + 4], &et[i__ + j * 3 + 4], &
+ 			    pneigh[4], &pnode[1], &a[i__ + j * 3 + 4], p, &
+@@ -1914,16 +1914,16 @@ L400:
+ 	    et[i__ + j * 3 + 4] = etopt + j * d4;
+ /* Computing MIN */
+ 	    d__1 = xi[i__ + j * 3 + 4];
+-	    xi[i__ + j * 3 + 4] = min(d__1,1.);
++	    xi[i__ + j * 3 + 4] = gmin(d__1,1.);
+ /* Computing MAX */
+ 	    d__1 = xi[i__ + j * 3 + 4];
+-	    xi[i__ + j * 3 + 4] = max(d__1,-1.);
++	    xi[i__ + j * 3 + 4] = gmax(d__1,-1.);
+ /* Computing MIN */
+ 	    d__1 = et[i__ + j * 3 + 4];
+-	    et[i__ + j * 3 + 4] = min(d__1,1.);
++	    et[i__ + j * 3 + 4] = gmin(d__1,1.);
+ /* Computing MAX */
+ 	    d__1 = et[i__ + j * 3 + 4];
+-	    et[i__ + j * 3 + 4] = max(d__1,-1.);
++	    et[i__ + j * 3 + 4] = gmax(d__1,-1.);
+ 	    distattach_new(&xi[i__ + j * 3 + 4], &et[i__ + j * 3 + 4], &pneigh[4]
+ 		    , &pnode[1], &a[i__ + j * 3 + 4], p, &ratio[1], nterms);
+ 	}
+@@ -1975,16 +1975,16 @@ L400:
+ 
+ /* Computing MIN */
+ 		    d__1 = xi[i__ + j * 3 + 4];
+-		    xi[i__ + j * 3 + 4] = min(d__1,1.);
++		    xi[i__ + j * 3 + 4] = gmin(d__1,1.);
+ /* Computing MAX */
+ 		    d__1 = xi[i__ + j * 3 + 4];
+-		    xi[i__ + j * 3 + 4] = max(d__1,-1.);
++		    xi[i__ + j * 3 + 4] = gmax(d__1,-1.);
+ /* Computing MIN */
+ 		    d__1 = et[i__ + j * 3 + 4];
+-		    et[i__ + j * 3 + 4] = min(d__1,1.);
++		    et[i__ + j * 3 + 4] = gmin(d__1,1.);
+ /* Computing MAX */
+ 		    d__1 = et[i__ + j * 3 + 4];
+-		    et[i__ + j * 3 + 4] = max(d__1,-1.);
++		    et[i__ + j * 3 + 4] = gmax(d__1,-1.);
+ 
+ 		    distattach_new(&xi[i__ + j * 3 + 4], &et[i__ + j * 3 + 4], &
+ 			    pneigh[4], &pnode[1], &a[i__ + j * 3 + 4], p, &
+diff --git a/cgx_2.11/src/userFunction.c b/cgx_2.11/src/userFunction.c
+index 96f960e..878a689 100755
+--- a/cgx_2.11/src/userFunction.c
++++ b/cgx_2.11/src/userFunction.c
+@@ -1953,9 +1953,9 @@ void calcFshear(char *name, int lc, double factor, double fstat, double mue, Sum
+         alfa=acos(v_sprod(efj, efn));
+         fshear=fres*sin(alfa);
+         fnorm=fres*cos(alfa);
+-        fres_max=  max(abs(fres),fres_max); 
+-        fnorm_max= max(abs(fnorm),fnorm_max); 
+-        fshear_max=max(abs(fshear),fshear_max);
++        fres_max=  gmax(abs(fres),fres_max); 
++        fnorm_max= gmax(abs(fnorm),fnorm_max); 
++        fshear_max=gmax(abs(fshear),fshear_max);
+         fres_sum[j]+=  fres;
+         fnorm_sum[j]+=  fnorm;
+         fshear_sum[j]+=  fshear;
+@@ -1975,9 +1975,9 @@ void calcFshear(char *name, int lc, double factor, double fstat, double mue, Sum
+       alfa=acos(v_sprod(efj, efn));
+       fshear=fres*sin(alfa);
+       fnorm=fres*cos(alfa);
+-      fres_max=  max(abs(fres),fres_max); 
+-      fnorm_max= max(abs(fnorm),fnorm_max); 
+-      fshear_max=max(abs(fshear),fshear_max);
++      fres_max=  gmax(abs(fres),fres_max); 
++      fnorm_max= gmax(abs(fnorm),fnorm_max); 
++      fshear_max=gmax(abs(fshear),fshear_max);
+       fres_sum[0]+=  fres;
+       fnorm_sum[0]+=  fnorm;
+       fshear_sum[0]+=  fshear;
diff --git a/debian/patches/series b/debian/patches/series
index 826bfb1..7c2c244 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -3,3 +3,4 @@
 0003-Shebang-for-script.patch
 0004-No-format-arg-in-sprintf.patch
 0005-Removed-spelling-errors-in-binary.patch
+0006-Fixes-an-issue-with-min-and-max-Functions-and-gcc6.patch

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/calculix-cgx.git



More information about the debian-science-commits mailing list