Hello community, here is the log from the commit of package gmsh for openSUSE:Factory checked in at 2020-06-09 00:04:59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/gmsh (Old) and /work/SRC/openSUSE:Factory/.gmsh.new.3606 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "gmsh" Tue Jun 9 00:04:59 2020 rev:5 rq:812371 version:4.5.6 Changes: -------- --- /work/SRC/openSUSE:Factory/gmsh/gmsh.changes 2020-04-11 23:49:47.219237362 +0200 +++ /work/SRC/openSUSE:Factory/.gmsh.new.3606/gmsh.changes 2020-06-09 00:06:29.889681045 +0200 @@ -1,0 +2,10 @@ +Sun Jun 7 23:07:15 UTC 2020 - Stefan Brüns <[email protected]> + +- Fix failing build due to GCC10 catching redefinitions, add + * move-globals-to-mmg3d-c.patch + * 0001-MMG3D-Remove-some-duplicated-variables-from-global-s.patch + * 0002-Remove-non-namespaced-endcod-function-duplicates-MMG.patch + * 0003-Define-global-variables-mostly-used-by-MMG_analar-in.patch +- Use OCC OpenCASCADE variant, like FreeCAD. OCE is mostly dormant. + +------------------------------------------------------------------- New: ---- 0001-MMG3D-Remove-some-duplicated-variables-from-global-s.patch 0002-Remove-non-namespaced-endcod-function-duplicates-MMG.patch 0003-Define-global-variables-mostly-used-by-MMG_analar-in.patch move-globals-to-mmg3d-c.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ gmsh.spec ++++++ --- /var/tmp/diff_new_pack.LtrSYO/_old 2020-06-09 00:06:33.685694512 +0200 +++ /var/tmp/diff_new_pack.LtrSYO/_new 2020-06-09 00:06:33.689694526 +0200 @@ -29,7 +29,15 @@ Source0: https://gmsh.info/src/gmsh-%{version}-source.tgz Patch0: link_dynamic_gl2ps.patch Patch1: gmsh-2.10.1-implicit.patch -Patch6: gmsh-3.0.5-add-shebang-to-onelab.patch +Patch2: gmsh-3.0.5-add-shebang-to-onelab.patch +# PATCH-FIX-UPSTREAM -- fix build with GCC 10 +Patch3: move-globals-to-mmg3d-c.patch +# PATCH-FIX-UPSTREAM -- fix build with GCC 10 +Patch4: 0001-MMG3D-Remove-some-duplicated-variables-from-global-s.patch +# PATCH-FIX-UPSTREAM -- fix build with GCC 10 +Patch5: 0002-Remove-non-namespaced-endcod-function-duplicates-MMG.patch +# PATCH-FIX-UPSTREAM -- fix build with GCC 10 +Patch6: 0003-Define-global-variables-mostly-used-by-MMG_analar-in.patch BuildRequires: Mesa-devel BuildRequires: bison BuildRequires: blas-devel @@ -48,7 +56,7 @@ BuildRequires: libpng-devel BuildRequires: makeinfo BuildRequires: metis-devel -BuildRequires: oce-devel +BuildRequires: occt-devel BuildRequires: python-rpm-macros BuildRequires: zlib-devel %if %{with pdf_doc} @@ -148,6 +156,10 @@ %setup -q -n %{name}-%{version}-source %patch0 -p1 %patch1 -p1 +%patch2 -p1 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 %patch6 -p1 %build ++++++ 0001-MMG3D-Remove-some-duplicated-variables-from-global-s.patch ++++++ >From 80463d69cbd9fcf76c42f1843316ba5574c95fac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <[email protected]> Date: Mon, 8 Jun 2020 02:03:28 +0200 Subject: [PATCH 1/3] MMG3D: Remove some duplicated variables from global scope --- contrib/mmg3d/build/sources/analar.c | 6 ++++-- contrib/mmg3d/build/sources/mmg3d1.c | 1 - contrib/mmg3d/build/sources/mmg3d4.c | 3 --- 3 files changed, 4 insertions(+), 6 deletions(-) diff --git a/contrib/mmg3d/build/sources/analar.c b/contrib/mmg3d/build/sources/analar.c index 4f56e8e3f..cf032cae0 100644 --- a/contrib/mmg3d/build/sources/analar.c +++ b/contrib/mmg3d/build/sources/analar.c @@ -50,11 +50,13 @@ along with MMG3D. If not, see <http://www.gnu.org/licenses/>. #define EPS4 1.e-04 -extern int MMG_npuiss,MMG_nvol,MMG_npres; extern int MMG_nlen,MMG_ncal,MMG_ntopo,MMG_nex; extern int MMG_npuisstot,MMG_nvoltot,MMG_nprestot; extern int MMG_npdtot; - int MMG_nplen,MMG_npref,MMG_bouffe; + +int MMG_npuiss,MMG_nvol,MMG_npres; + +static int MMG_nplen,MMG_npref,MMG_bouffe; int MMG_interp_ani(double *ma,double *mb,double *mp,double t) { double dma[6],dmb[6],mai[6],mbi[6],mi[6]; diff --git a/contrib/mmg3d/build/sources/mmg3d1.c b/contrib/mmg3d/build/sources/mmg3d1.c index 68e18083a..3408e41d3 100644 --- a/contrib/mmg3d/build/sources/mmg3d1.c +++ b/contrib/mmg3d/build/sources/mmg3d1.c @@ -48,7 +48,6 @@ along with MMG3D. If not, see <http://www.gnu.org/licenses/>. extern TIM_mytime MMG_ctim[TIMEMAX]; int MMG_npdtot,MMG_npuisstot,MMG_nvoltot,MMG_nprestot; -int MMG_npuiss,MMG_nvol,MMG_npres,MMG_npd; int MMG_cendellong(pMesh mesh,pSol sol,double declic,int base); diff --git a/contrib/mmg3d/build/sources/mmg3d4.c b/contrib/mmg3d/build/sources/mmg3d4.c index 67791e2f8..395b01112 100644 --- a/contrib/mmg3d/build/sources/mmg3d4.c +++ b/contrib/mmg3d/build/sources/mmg3d4.c @@ -45,11 +45,8 @@ along with MMG3D. If not, see <http://www.gnu.org/licenses/>. ****************************************************************************/ #include "mesh.h" -int MMG_npuiss,MMG_nvol,MMG_npres; -int MMG_nlen,MMG_ncal,MMG_ntopo,MMG_nex; int MMG_npuisstot,MMG_nvoltot,MMG_nprestot; int MMG_npdtot; -int MMG_nplen,MMG_npref,MMG_bouffe; int ddebug; -- 2.26.2 ++++++ 0002-Remove-non-namespaced-endcod-function-duplicates-MMG.patch ++++++ >From c323dd099fca82cb32a8616071c600a00c930cb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <[email protected]> Date: Mon, 8 Jun 2020 02:15:33 +0200 Subject: [PATCH 2/3] Remove non-namespaced endcod function (duplicates MMG_endcod) MMG_endcod is an identical definition in mmg3dlib.c, which also uses the same global MMG_ctim/MMG_imprim variables. Defining the variables twice is an ODR violation. --- contrib/mmg3d/build/sources/mmg3d.c | 32 ----------------------------- 1 file changed, 32 deletions(-) diff --git a/contrib/mmg3d/build/sources/mmg3d.c b/contrib/mmg3d/build/sources/mmg3d.c index 9e6ed7411..4096b3258 100644 --- a/contrib/mmg3d/build/sources/mmg3d.c +++ b/contrib/mmg3d/build/sources/mmg3d.c @@ -47,9 +47,6 @@ along with MMG3D. If not, see <http://www.gnu.org/licenses/>. #include "mesh.h" #include "eigenv.h" -TIM_mytime MMG_ctim[TIMEMAX]; -short MMG_imprim; - unsigned char MMG_idir[4][3] = { {1,2,3}, {0,3,2}, {0,1,3}, {0,2,1} }; unsigned char MMG_inxt[7] = { 1,2,3,0,1,2,3 }; unsigned char MMG_iarf[4][3] = { {5,4,3}, {5,1,2}, {4,2,0}, {3,0,1} }; @@ -382,35 +379,6 @@ int parsop(pMesh mesh) { return(1); } - -void endcod() { - double ttot,ttim[TIMEMAX]; - int k,call[TIMEMAX]; - - TIM_chrono(OFF,&MMG_ctim[0]); - - for (k=0; k<TIMEMAX; k++) { - call[k] = MMG_ctim[k].call; - ttim[k] = MMG_ctim[k].call ? TIM_gttime(MMG_ctim[k]) : 0.0; - } - ttot = ttim[1]+ttim[2]+ttim[3]+ttim[4]; - ttim[0] = M_MAX(ttim[0],ttot); - - if ( abs(MMG_imprim) > 5 ) { - fprintf(stdout,"\n -- CPU REQUIREMENTS\n"); - fprintf(stdout," in/out %8.2f %% %3d. calls, %7.2f sec/call\n", - 100.*ttim[1]/ttim[0],call[1],ttim[1]/(float)call[1]); - fprintf(stdout," analysis %8.2f %% %3d. calls, %7.2f sec/call\n", - 100.*ttim[2]/ttim[0],call[2],ttim[2]/(float)call[2]); - fprintf(stdout," optim %8.2f %% %3d. calls, %7.2f sec/call\n", - 100.*ttim[3]/ttim[0],call[3],ttim[3]/(float)call[3]); - fprintf(stdout," total %8.2f %% %3d. calls, %7.2f sec/call\n", - 100.*ttot/ttim[0],call[0],ttot/(float)call[0]); - } - fprintf(stdout,"\n ELAPSED TIME %.2f SEC. (%.2f)\n",ttim[0],ttot); -} - - /* set function pointers */ int MMG_setfunc(int type) { if ( type == 6 ) { -- 2.26.2 ++++++ 0003-Define-global-variables-mostly-used-by-MMG_analar-in.patch ++++++ >From fa82408303433c2fc7bfa2b6f702e7c4b535f0b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stefan=20Br=C3=BCns?= <[email protected]> Date: Mon, 8 Jun 2020 03:01:38 +0200 Subject: [PATCH 3/3] Define global variables mostly used by MMG_analar in analar.c The analar state variables are only reset and printed in MMG_mmg3d1, MMG_mm3d4, so move the definition to analar.c. Another ODR violation fix. --- contrib/mmg3d/build/sources/analar.c | 5 +++-- contrib/mmg3d/build/sources/mmg3d1.c | 3 ++- contrib/mmg3d/build/sources/mmg3d4.c | 4 ++-- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/contrib/mmg3d/build/sources/analar.c b/contrib/mmg3d/build/sources/analar.c index cf032cae0..1c9827cf3 100644 --- a/contrib/mmg3d/build/sources/analar.c +++ b/contrib/mmg3d/build/sources/analar.c @@ -51,8 +51,9 @@ along with MMG3D. If not, see <http://www.gnu.org/licenses/>. #define EPS4 1.e-04 extern int MMG_nlen,MMG_ncal,MMG_ntopo,MMG_nex; -extern int MMG_npuisstot,MMG_nvoltot,MMG_nprestot; -extern int MMG_npdtot; + +int MMG_npuisstot,MMG_nvoltot,MMG_nprestot; +int MMG_npdtot; int MMG_npuiss,MMG_nvol,MMG_npres; diff --git a/contrib/mmg3d/build/sources/mmg3d1.c b/contrib/mmg3d/build/sources/mmg3d1.c index 3408e41d3..d490afdf5 100644 --- a/contrib/mmg3d/build/sources/mmg3d1.c +++ b/contrib/mmg3d/build/sources/mmg3d1.c @@ -47,7 +47,8 @@ along with MMG3D. If not, see <http://www.gnu.org/licenses/>. extern TIM_mytime MMG_ctim[TIMEMAX]; -int MMG_npdtot,MMG_npuisstot,MMG_nvoltot,MMG_nprestot; +extern int MMG_npuisstot,MMG_nvoltot,MMG_nprestot; +extern int MMG_npdtot; int MMG_cendellong(pMesh mesh,pSol sol,double declic,int base); diff --git a/contrib/mmg3d/build/sources/mmg3d4.c b/contrib/mmg3d/build/sources/mmg3d4.c index 395b01112..795fe3500 100644 --- a/contrib/mmg3d/build/sources/mmg3d4.c +++ b/contrib/mmg3d/build/sources/mmg3d4.c @@ -45,8 +45,8 @@ along with MMG3D. If not, see <http://www.gnu.org/licenses/>. ****************************************************************************/ #include "mesh.h" -int MMG_npuisstot,MMG_nvoltot,MMG_nprestot; -int MMG_npdtot; +extern int MMG_npuisstot,MMG_nvoltot,MMG_nprestot; +extern int MMG_npdtot; int ddebug; -- 2.26.2 ++++++ move-globals-to-mmg3d-c.patch ++++++ >From 09b074021140d6760c870a7e2d7c7f44ef9a001c Mon Sep 17 00:00:00 2001 From: Christophe Geuzaine <[email protected]> Date: Fri, 15 May 2020 16:00:50 +0000 Subject: [PATCH] move globals to mmg3d.c to fix #865 (cherry picked from commit b476c2084b544a9482e27a716e94854fc0e17a1a) --- contrib/mmg3d/build/sources/mesh.h | 60 +++++++++++----------- contrib/mmg3d/build/sources/mmg3d.c | 77 +++++++++++++++++------------ 2 files changed, 75 insertions(+), 62 deletions(-) diff --git a/contrib/mmg3d/build/sources/mesh.h b/contrib/mmg3d/build/sources/mesh.h index 9324545c2..f7ee5f5e4 100644 --- a/contrib/mmg3d/build/sources/mesh.h +++ b/contrib/mmg3d/build/sources/mesh.h @@ -3,32 +3,32 @@ Logiciel initial: MMG3D Version 4.0 Co-auteurs : Cecile Dobrzynski et Pascal Frey. Propriétaires :IPB - UPMC -INRIA. -Copyright © 2004-2005-2006-2007-2008-2009-2010-2011, +Copyright © 2004-2005-2006-2007-2008-2009-2010-2011, diffusé sous les termes et conditions de la licence publique générale de GNU -Version 3 ou toute version ultérieure. +Version 3 ou toute version ultérieure. Ce fichier est une partie de MMG3D. MMG3D est un logiciel libre ; vous pouvez le redistribuer et/ou le modifier suivant les termes de la licence publique générale de GNU Version 3 ou toute version ultérieure. -MMG3D est distribué dans l'espoir qu'il sera utile, mais SANS -AUCUNE GARANTIE ; sans même garantie de valeur marchande. +MMG3D est distribué dans l'espoir qu'il sera utile, mais SANS +AUCUNE GARANTIE ; sans même garantie de valeur marchande. Voir la licence publique générale de GNU pour plus de détails. -MMG3D est diffusé en espérant qu’il sera utile, -mais SANS AUCUNE GARANTIE, ni explicite ni implicite, -y compris les garanties de commercialisation ou -d’adaptation dans un but spécifique. +MMG3D est diffusé en espérant qu’il sera utile, +mais SANS AUCUNE GARANTIE, ni explicite ni implicite, +y compris les garanties de commercialisation ou +d’adaptation dans un but spécifique. Reportez-vous à la licence publique générale de GNU pour plus de détails. -Vous devez avoir reçu une copie de la licence publique générale de GNU -en même temps que ce document. +Vous devez avoir reçu une copie de la licence publique générale de GNU +en même temps que ce document. Si ce n’est pas le cas, aller voir <http://www.gnu.org/licenses/>. /**************************************************************************** Initial software: MMG3D Version 4.0 Co-authors: Cecile Dobrzynski et Pascal Frey. Owners: IPB - UPMC -INRIA. -Copyright © 2004-2005-2006-2007-2008-2009-2010-2011, -spread under the terms and conditions of the license GNU General Public License +Copyright © 2004-2005-2006-2007-2008-2009-2010-2011, +spread under the terms and conditions of the license GNU General Public License as published Version 3, or (at your option) any later version. This file is part of MMG3D @@ -41,7 +41,7 @@ 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 MMG3D. If not, see <http://www.gnu.org/licenses/>. +along with MMG3D. If not, see <http://www.gnu.org/licenses/>. ****************************************************************************/ #ifndef _MMG3D_H #define _MMG3D_H @@ -74,9 +74,9 @@ along with MMG3D. If not, see <http://www.gnu.org/licenses/>. #define EPSOK 1.e-18 #define EPS30 1.e-30 -#define ALPHAC 0.20412415 /* sqrt(6)/12 */ +#define ALPHAC 0.20412415 /* sqrt(6)/12 */ #define ALPHAD 0.04811252 /* 1.0/(12*sqrt(3)) */ -#define BETAC 0.03928371 /* sqrt(2)/36 */ +#define BETAC 0.03928371 /* sqrt(2)/36 */ #define CALLIM 1.E+35 /*valeur de la qual pire*/ @@ -125,14 +125,14 @@ extern unsigned char MMG_iare[6][2]; extern unsigned char MMG_ifar[6][2]; extern unsigned char MMG_isar[6][2]; extern unsigned char MMG_arpt[4][3]; - + typedef struct { int min,max,iel,nxt; } hedge; typedef struct { int size,nhmax,hnxt; - hedge *item; + hedge *item; } Hedge; typedef Hedge * pHedge; @@ -189,8 +189,8 @@ int MMG_interp_iso(double *,double *,double *,double ); int MMG_correction(pMesh ,int ,pList ,int ,int ,char ); int MMG_delone(pMesh ,pSol ,int ,pList ,int ); int MMG_delons(pMesh ,pSol ,pQueue ,int ,pList ,int ,double ); -int MMG_cenrad_ani(pMesh ,double * ,double *,double *,double *); -int MMG_cenrad_iso(pMesh ,double * ,double *,double *); +int MMG_cenrad_ani(pMesh ,double * ,double *,double *,double *); +int MMG_cenrad_iso(pMesh ,double * ,double *,double *); /*pattern*/ int MMG_pattern1(pMesh ,pSol ,pHedge ,int ); @@ -398,17 +398,17 @@ int MMG_movevertex_iso(pMesh ,pSol ,int ,int ); /* function pointers */ typedef int (*MMG_Swap)(pMesh ,pSol ,pList ); -MMG_Swap MMG_swpptr; -double (*MMG_length)(double *,double *,double *,double *); -double (*MMG_caltet)(pMesh ,pSol ,int ); -double (*MMG_calte1)(pMesh ,pSol ,int ); -int (*MMG_caltet2)(pMesh ,pSol ,int ,int ,double ,double *); -int (*MMG_cavity)(pMesh ,pSol ,int ,int ,pList ,int ); -int (*MMG_buckin)(pMesh ,pSol ,pBucket ,int ); -int (*MMG_optlen)(pMesh ,pSol ,double ,int ); -int (*MMG_interp)(double *,double *,double *,double ); -int (*MMG_optlentet)(pMesh ,pSol ,pQueue ,double ,int ,int ); -int (*MMG_movevertex)(pMesh ,pSol ,int ,int ); +extern MMG_Swap MMG_swpptr; +extern double (*MMG_length)(double *,double *,double *,double *); +extern double (*MMG_caltet)(pMesh ,pSol ,int ); +extern double (*MMG_calte1)(pMesh ,pSol ,int ); +extern int (*MMG_caltet2)(pMesh ,pSol ,int ,int ,double ,double *); +extern int (*MMG_cavity)(pMesh ,pSol ,int ,int ,pList ,int ); +extern int (*MMG_buckin)(pMesh ,pSol ,pBucket ,int ); +extern int (*MMG_optlen)(pMesh ,pSol ,double ,int ); +extern int (*MMG_interp)(double *,double *,double *,double ); +extern int (*MMG_optlentet)(pMesh ,pSol ,pQueue ,double ,int ,int ); +extern int (*MMG_movevertex)(pMesh ,pSol ,int ,int ); #endif diff --git a/contrib/mmg3d/build/sources/mmg3d.c b/contrib/mmg3d/build/sources/mmg3d.c index b394a38a7..9e6ed7411 100644 --- a/contrib/mmg3d/build/sources/mmg3d.c +++ b/contrib/mmg3d/build/sources/mmg3d.c @@ -3,32 +3,32 @@ Logiciel initial: MMG3D Version 4.0 Co-auteurs : Cecile Dobrzynski et Pascal Frey. Propriétaires :IPB - UPMC -INRIA. -Copyright © 2004-2005-2006-2007-2008-2009-2010-2011, +Copyright © 2004-2005-2006-2007-2008-2009-2010-2011, diffusé sous les termes et conditions de la licence publique générale de GNU -Version 3 ou toute version ultérieure. +Version 3 ou toute version ultérieure. Ce fichier est une partie de MMG3D. MMG3D est un logiciel libre ; vous pouvez le redistribuer et/ou le modifier suivant les termes de la licence publique générale de GNU Version 3 ou toute version ultérieure. -MMG3D est distribué dans l'espoir qu'il sera utile, mais SANS -AUCUNE GARANTIE ; sans même garantie de valeur marchande. +MMG3D est distribué dans l'espoir qu'il sera utile, mais SANS +AUCUNE GARANTIE ; sans même garantie de valeur marchande. Voir la licence publique générale de GNU pour plus de détails. -MMG3D est diffusé en espérant qu’il sera utile, -mais SANS AUCUNE GARANTIE, ni explicite ni implicite, -y compris les garanties de commercialisation ou -d’adaptation dans un but spécifique. +MMG3D est diffusé en espérant qu’il sera utile, +mais SANS AUCUNE GARANTIE, ni explicite ni implicite, +y compris les garanties de commercialisation ou +d’adaptation dans un but spécifique. Reportez-vous à la licence publique générale de GNU pour plus de détails. -Vous devez avoir reçu une copie de la licence publique générale de GNU -en même temps que ce document. +Vous devez avoir reçu une copie de la licence publique générale de GNU +en même temps que ce document. Si ce n’est pas le cas, aller voir <http://www.gnu.org/licenses/>. /**************************************************************************** Initial software: MMG3D Version 4.0 Co-authors: Cecile Dobrzynski et Pascal Frey. Owners: IPB - UPMC -INRIA. -Copyright © 2004-2005-2006-2007-2008-2009-2010-2011, -spread under the terms and conditions of the license GNU General Public License +Copyright © 2004-2005-2006-2007-2008-2009-2010-2011, +spread under the terms and conditions of the license GNU General Public License as published Version 3, or (at your option) any later version. This file is part of MMG3D @@ -41,7 +41,7 @@ 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 MMG3D. If not, see <http://www.gnu.org/licenses/>. +along with MMG3D. If not, see <http://www.gnu.org/licenses/>. ****************************************************************************/ #include "compil.date" #include "mesh.h" @@ -58,6 +58,19 @@ unsigned char MMG_ifar[6][2] = { {2,3}, {1,3}, {1,2}, {0,3}, {0,2}, {0,1} }; unsigned char MMG_isar[6][2] = { {2,3}, {3,1}, {1,2}, {0,3}, {2,0}, {0,1} }; unsigned char MMG_arpt[4][3] = { {0,1,2}, {0,4,3}, {1,3,5}, {2,5,4} }; +/* function pointers */ +MMG_Swap MMG_swpptr; +double (*MMG_length)(double *,double *,double *,double *); +double (*MMG_caltet)(pMesh ,pSol ,int ); +double (*MMG_calte1)(pMesh ,pSol ,int ); +int (*MMG_caltet2)(pMesh ,pSol ,int ,int ,double ,double *); +int (*MMG_cavity)(pMesh ,pSol ,int ,int ,pList ,int ); +int (*MMG_buckin)(pMesh ,pSol ,pBucket ,int ); +int (*MMG_optlen)(pMesh ,pSol ,double ,int ); +int (*MMG_interp)(double *,double *,double *,double ); +int (*MMG_optlentet)(pMesh ,pSol ,pQueue ,double ,int ,int ); +int (*MMG_movevertex)(pMesh ,pSol ,int ,int ); + static void excfun(int sigid) { switch (sigid) { case SIGFPE: @@ -81,7 +94,7 @@ static void excfun(int sigid) { static void usage(char *prog) { fprintf(stdout,"usage: %s [-v[n]] [-h] [-m n] [opts..] filein[.mesh] [-out fileout]\n",prog); - + fprintf(stdout,"\n** Generic options :\n"); fprintf(stdout,"-d Turn on debug mode\n"); fprintf(stdout,"-h Print this message\n"); @@ -102,7 +115,7 @@ static void usage(char *prog) { fprintf(stdout,"-nomove no point relocation\n"); fprintf(stdout,"-noinsert no new point\n"); //fprintf(stdout,"-bdry add points on boundary mesh\n"); - fprintf(stdout,"-out fileout Specify output file name\n"); + fprintf(stdout,"-out fileout Specify output file name\n"); #ifdef USE_SCOTCH fprintf(stdout,"-rn n num Specify the number of vertices by box to renumber nodes and the renumberings\n"); #endif @@ -136,7 +149,7 @@ static int parsar(int argc,char *argv[],pMesh mesh,pSol sol) { else i--; } - else if ( !strcmp(argv[i],"-bdry") ){ + else if ( !strcmp(argv[i],"-bdry") ){ printf("-bdry option discarded\n"); //info->bdry = 1; } @@ -145,7 +158,7 @@ static int parsar(int argc,char *argv[],pMesh mesh,pSol sol) { usage(argv[0]); } break; - + case 'd': /* debug */ if ( !strcmp(argv[i],"-dt") ) { ++i; @@ -213,7 +226,7 @@ static int parsar(int argc,char *argv[],pMesh mesh,pSol sol) { ++i; sol->name = argv[i]; } - break; + break; #ifdef USE_SCOTCH /* renumbering begin */ case 'r': @@ -249,13 +262,13 @@ static int parsar(int argc,char *argv[],pMesh mesh,pSol sol) { } } break; -/* renumbering end */ +/* renumbering end */ #endif case 'v': if ( ++i < argc ) { if ( argv[i][0] == '-' || isdigit(argv[i][0]) ) info->imprim = atoi(argv[i]); - else + else i--; } else { @@ -299,7 +312,7 @@ static int parsar(int argc,char *argv[],pMesh mesh,pSol sol) { mesh->name = (char *)calloc(128,sizeof(char)); assert(mesh->name); fprintf(stdout," -- FILE BASENAME ?\n"); - fflush(stdin); + fflush(stdin); fscanf(stdin,"%s",mesh->name); } if ( sol->name == NULL ) { @@ -319,13 +332,13 @@ static int parsar(int argc,char *argv[],pMesh mesh,pSol sol) { mesh->move = (char *)calloc(128,sizeof(char)); assert(mesh->move); fprintf(stdout," -- DISPLACEMENT FILE ?\n"); - fflush(stdin); + fflush(stdin); fscanf(stdin,"%s",mesh->move); } return(1); } - + int parsop(pMesh mesh) { int i,ret; @@ -375,7 +388,7 @@ void endcod() { int k,call[TIMEMAX]; TIM_chrono(OFF,&MMG_ctim[0]); - + for (k=0; k<TIMEMAX; k++) { call[k] = MMG_ctim[k].call; ttim[k] = MMG_ctim[k].call ? TIM_gttime(MMG_ctim[k]) : 0.0; @@ -480,7 +493,7 @@ int MMG_setfunc(int type) { /* /\* if ( !parsar(argc,argv,mesh,sol) ) return(1); *\/ */ /* /\* MMG_imprim = info->imprim; *\/ */ - + /* /\* if ( MMG_imprim ) fprintf(stdout,"\n -- INPUT DATA\n"); *\/ */ /* /\* TIM_chrono(ON,&MMG_ctim[1]); *\/ */ @@ -501,7 +514,7 @@ int MMG_setfunc(int type) { /* /\* if ( MMG_imprim ) *\/ */ /* /\* fprintf(stdout," -- DATA READING COMPLETED. %.2f sec.\n", *\/ */ /* /\* TIM_gttime(MMG_ctim[1])); *\/ */ - + /* /\* if ( abs(MMG_imprim) > 3 ) { *\/ */ /* /\* alert = MMG_outqua(mesh,sol); *\/ */ /* /\* if(alert) { *\/ */ @@ -535,12 +548,12 @@ int MMG_setfunc(int type) { /* /\* TIM_gttime(MMG_ctim[2])); *\/ */ /* /\* if ( info->ddebug ) MMG_chkmsh(mesh,1,1); *\/ */ - + /* /\* if ( abs(MMG_imprim) > 4 ) { *\/ */ /* /\* MMG_prilen(mesh,sol); *\/ */ /* /\* MMG_ratio(mesh,sol,NULL); *\/ */ /* /\* } *\/ */ - + /* /\* #ifdef USE_SCOTCH *\/ */ /* /\* /\\* renumbering begin *\\/ *\/ */ /* /\* /\\*check enough vertex to renum*\\/ *\/ */ @@ -549,7 +562,7 @@ int MMG_setfunc(int type) { /* /\* if ( MMG_imprim < -6) *\/ */ /* /\* fprintf(stdout,"renumbering"); *\/ */ /* /\* renumbering(info->rn, mesh, sol); *\/ */ - + /* /\* if ( !MMG_hashTetra(mesh) ) return(1); *\/ */ /* /\* TIM_chrono(OFF,&MMG_ctim[5]); *\/ */ /* /\* if ( MMG_imprim < -6) *\/ */ @@ -593,7 +606,7 @@ int MMG_setfunc(int type) { /* /\* } *\/ */ /* /\* } *\/ */ /* /\* } *\/ */ - + /* /\* if(!info->noinsert) { *\/ */ /* /\* if(abs(info->option) == 4){ *\/ */ /* /\* MMG_mmg3d4(mesh,sol,&alert); *\/ */ @@ -601,7 +614,7 @@ int MMG_setfunc(int type) { /* /\* MMG_mmg3d1(mesh,sol,&alert); *\/ */ /* /\* } *\/ */ /* /\* } *\/ */ - + /* /\* TIM_chrono(OFF,&MMG_ctim[3]); *\/ */ /* /\* if ( MMG_imprim ) *\/ */ /* /\* fprintf(stdout," -- PHASE 2 COMPLETED. %.2f sec.\n", *\/ */ @@ -644,7 +657,7 @@ int MMG_setfunc(int type) { /* /\* MMG_optra4(mesh,sol); *\/ */ /* /\* } *\/ */ /* /\* } *\/ */ - + /* /\* if ( info->ddebug ) MMG_chkmsh(mesh,1,1); *\/ */ /* /\* TIM_chrono(OFF,&MMG_ctim[4]); *\/ */ /* /\* if ( MMG_imprim ) *\/ */ -- 2.26.2
