diff --git a/srcpkgs/gmsh/patches/32bitpointers.patch b/srcpkgs/gmsh/patches/32bitpointers.patch new file mode 100644 index 00000000000..b36906a9b85 --- /dev/null +++ b/srcpkgs/gmsh/patches/32bitpointers.patch @@ -0,0 +1,26 @@ +https://gitlab.onelab.info/gmsh/gmsh/-/issues/2915 +diff --git a/contrib/hxt/tetMesh/src/hxt_tetRefine.c b/contrib/hxt/tetMesh/src/hxt_tetRefine.c +index d4c23f3..ac404f3 100644 +--- a/contrib/hxt/tetMesh/src/hxt_tetRefine.c ++++ b/contrib/hxt/tetMesh/src/hxt_tetRefine.c +@@ -297,9 +297,9 @@ static uint64_t* scanbsearch(uint64_t* array, uint64_t key, size_t num) + * - startTet[maxThreads] = mesh->tetrahedra.num + * - `startPt[t+1] - startPt[t]` gives how many point will be created by thread t + */ +-static HXTStatus balanceRefineWork(HXTMesh* mesh, uint32_t* startPt, size_t* startTet, int maxThreads) ++static HXTStatus balanceRefineWork(HXTMesh* mesh, uint32_t* startPt, uint64_t* startTet, int maxThreads) + { +- size_t* scan; ++ uint64_t* scan; + uint32_t ptPerThreadGoal; + HXT_CHECK( hxtAlignedMalloc(&scan, sizeof(size_t) * mesh->tetrahedra.num) ); + +@@ -343,7 +343,7 @@ static HXTStatus balanceRefineWork(HXTMesh* mesh, uint32_t* startPt, size_t* sta + + // we want to find i such that scan[i] = scanToFind. + // we do a simple binary search in the prefix scan array to find `i` +- size_t* pfnd = scanbsearch(scan, scanToFind, mesh->tetrahedra.num); ++ uint64_t* pfnd = scanbsearch(scan, scanToFind, mesh->tetrahedra.num); + startTet[threadID] = pfnd - scan; + if(startTet[threadID] < mesh->tetrahedra.num) + startPt[threadID] = *pfnd; diff --git a/srcpkgs/gmsh/patches/string-time.patch b/srcpkgs/gmsh/patches/string-time.patch new file mode 100644 index 00000000000..a8f8d34f0ca --- /dev/null +++ b/srcpkgs/gmsh/patches/string-time.patch @@ -0,0 +1,11 @@ +--- a/contrib/metis/GKlib/string.c ++++ b/contrib/metis/GKlib/string.c +@@ -503,7 +503,7 @@ + + memset(&time, '\0', sizeof(time)); + +- if (strptime(str, "%m/%d/%Y %H:%M:%S", &time) == NULL) ++ if (strftime(str, 21, "%m/%d/%Y %H:%M:%S", &time) == NULL) + return -1; + + rtime = mktime(&time); diff --git a/srcpkgs/gmsh/template b/srcpkgs/gmsh/template index c3727d90e4c..52213873e05 100644 --- a/srcpkgs/gmsh/template +++ b/srcpkgs/gmsh/template @@ -1,7 +1,7 @@ # Template file for 'gmsh' pkgname=gmsh -version=4.8.4 -revision=2 +version=4.13.1 +revision=1 build_style=cmake configure_args="-DENABLE_SYSTEM_CONTRIB=ON -DENABLE_HXT=$(vopt_if hxt ON OFF) @@ -14,7 +14,7 @@ license="GPL-2.0-or-later" homepage="https://gmsh.info" changelog="http://gmsh.info/CHANGELOG.txt" distfiles="https://gmsh.info/src/gmsh-${version}-source.tgz" -checksum=760dbdc072eaa3c82d066c5ba3b06eacdd3304eb2a97373fe4ada9509f0b6ace +checksum=77972145f431726026d50596a6a44fb3c1c95c21255218d66955806b86edbe8d build_options="fltk occt hxt zipper" build_options_default="hxt occt" @@ -24,7 +24,7 @@ desc_option_fltk="Enable FLTK GUI support" desc_option_occt="Enable OpenCASCADE support" desc_option_zipper="Enable zip file compression/decompression" -CFLAGS="-fcommon" +CFLAGS="-fcommon -Wimplicit-function-declaration" if [ -z "$CROSS_BUILD" ]; then makedepends+=" hdf5-devel"