[petsc-dev] PTScotch problem on Mac

Matthew Knepley knepley at gmail.com
Tue Nov 23 09:55:37 CST 2021

This is the same flex problem as I had for c2html, but I was more
determined tracking it down this time. The first problem is that we were
not renaming in the parser,

main *$:/PETSc3/petsc/petsc-dev$ git diff
diff --git a/config/BuildSystem/config/packages/PTScotch.py
index d1c277b6e9f..e046804c17f 100644
--- a/config/BuildSystem/config/packages/PTScotch.py
+++ b/config/BuildSystem/config/packages/PTScotch.py
@@ -70,7 +70,7 @@ class Configure(config.package.Package):
     if self.libraries.add('-lrt','timer_create'): ldflags += ' -lrt'
     self.cflags = self.cflags + ' -DCOMMON_RANDOM_FIXED_SEED'
     # do not use -DSCOTCH_PTHREAD because requires MPI built for threads.
-    self.cflags = self.cflags + ' -DSCOTCH_RENAME
+    self.cflags = self.cflags + ' -DSCOTCH_RENAME -DSCOTCH_RENAME_PARSER
     # this is needed on the Mac, because common2.c includes common.h which
DOES NOT include mpi.h because
     # SCOTCH_PTSCOTCH is NOT defined above Mac does not know what
clock_gettime() is!
     if self.setCompilers.isDarwin(self.log):

Second, they were not treating this case completely correctly:

git diff HEAD~1
diff --git a/src/libscotch/parser_yy.h b/src/libscotch/parser_yy.h
index 931315d..95b8160 100644
--- a/src/libscotch/parser_yy.h
+++ b/src/libscotch/parser_yy.h
@@ -62,6 +62,9 @@

 #if ((defined SCOTCH_RENAME_PARSER) || (defined yylex)) /* If prefix
renaming    */
 #define scotchyyparse               stratParserParse2 /* Parser function
name    */
+#if !defined(yylex)
+#define yylex                       scotchyylex
 #ifndef yylval
 #define yylval                      SCOTCH_NAME_MACRO3 (scotchyy,
SCOTCH_NAME_SUFFIXC, lval) /* It should be Yacc/Bison's job to redefine it!
 #endif /* yylval              */

How should we go about getting this fix in? Do you need to have our own
branch of PTScotch?



What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener

https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20211123/0288c88e/attachment-0001.html>

More information about the petsc-dev mailing list