$ flex --version flex 2.6.4 Apple(flex-34) I have no problem with c2html or ptscotch builds
I even installed the brew flex and put it at the beginning of my path and both the c2html and ptscotch went builds went through fine. We need configure.log > On Nov 23, 2021, at 11:44 AM, Satish Balay via petsc-dev > <petsc-dev@mcs.anl.gov> wrote: > > On Tue, 23 Nov 2021, Matthew Knepley wrote: > >> On Tue, Nov 23, 2021 at 11:28 AM Satish Balay <ba...@mcs.anl.gov> wrote: >> >>> Well we don't have this issue on our (macos) CI boxes where both c2html >>> and scotch build and run daily [in CI] >>> >>> what 'flex' are you using? And why does it behave differently on your box? >>> >> >> main *$:/PETSc3/petsc/petsc-dev$ which flex >> /usr/bin/flex >> main *$:/PETSc3/petsc/petsc-dev$ flex --version >> flex 2.5.35 Apple(flex-32) >> >> >>> And what errors do you get? >>> >> >> Without the extra input define in PTScotch.py, I get the yylval symbol >> undefined and the lexer symbol. When I give >> that define as input, only the lexer symbol is undefined. > > BTW: Can you send the log? > > Satish > >> >> >>> Perhaps CI is using older xcode (command line tools) - and you are using >>> newer? Or something else? >>> >> >> Probably the other way around. I am on Catalina 10.15.6 >> >> Matt >> >> >>> Barry - do you have this issue on your machine? >>> >>> balay@ypro ~ % which flex >>> /usr/bin/flex >>> balay@ypro ~ % /usr/bin/flex --version >>> flex 2.5.35 Apple(flex-32) >>> balay@ypro petsc % clang -v >>> Apple clang version 12.0.0 (clang-1200.0.32.2) >>> Target: x86_64-apple-darwin19.6.0 >>> Thread model: posix >>> InstalledDir: /Library/Developer/CommandLineTools/usr/bin >>> balay@ypro ~ % balay@ypro petsc % ./configure >>> --with-mpi-dir=$HOME/mpich-3.4.2 --download-c2html --download-ptscotch >>> >>> <log attached> >>> >>> >>> Satish >>> >>> On Tue, 23 Nov 2021, Matthew Knepley wrote: >>> >>>> 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 >>>> b/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 >>>> -Drestrict="'+self.compilers.cRestrict+'"' >>>> + self.cflags = self.cflags + ' -DSCOTCH_RENAME -DSCOTCH_RENAME_PARSER >>>> -Drestrict="'+self.compilers.cRestrict+'"' >>>> # 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: >>>> >>>> >>> (93454e8...):/PETSc3/petsc/petsc-dev/arch-master-debug/externalpackages/git.ptscotch/src/libscotch$ >>>> 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 >>>> +#endif >>>> #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? >>>> >>>> Thanks, >>>> >>>> Matt