Hmm, 'compilers.allow_arguments_mismatch yes’ had no effect—same failure. I looked at the compilers group and with it set, and gfortran variant is selected, chooses ${compilers.gcc_default}. Which in my case was gcc12—which is already installed.
Mark Brethen mark.bret...@gmail.com > On Jul 17, 2022, at 6:15 AM, Chris Jones <jon...@hep.phy.cam.ac.uk> wrote: > > > >> On 17 Jul 2022, at 1:59 am, Mark Brethen <mark.bret...@gmail.com> wrote: >> >> I’ve tested the build with gfortran-mp-12 which fails: >> >> :info:build /opt/local/bin/gfortran-mp-12 -Wall -O2 -c gencontelem_n2f.f >> :info:build gencontelem_n2f.f:595:39: >> :info:build 184 | call >> isortii(ialset(istartset(iset)),idummy, >> :info:build | 2 >> :info:build ...... >> :info:build 595 | call >> isortii(nodef,iorder,nopes,kflag) >> :info:build | 1 >> :info:build Error: Rank mismatch between actual argument at (1) and actual >> argument at (2) (scalar and rank-1) >> :info:build make: *** [gencontelem_n2f.o] Error 1 >> >> How is a particular value of gfortran blacklisted, in this case >> gfortran-mp-12? > > As Ken has eluded to, this is not a problem with the compiler, but an issue > i. The code itself made apparent by stricter checks in recent compilers. You > will likely run into the same with most recent versions so blacklisting is > not the fix here. > > The option Ken mentioned turns off those checks > > https://github.com/macports/macports-ports/blob/8f07e286eac6e7fa7c9bcd282cc461ee945c7c8d/_resources/port1.0/group/compilers-1.0.tcl#L782 > > <https://github.com/macports/macports-ports/blob/8f07e286eac6e7fa7c9bcd282cc461ee945c7c8d/_resources/port1.0/group/compilers-1.0.tcl#L782> > > so is definitely the way forward I would think. > > Chris > >> >> Mark Brethen >> mark.bret...@gmail.com >> >> >> >>> On Jul 6, 2022, at 10:19 PM, Mark Brethen <mark.bret...@gmail.com> wrote: >>> >>> The Spooles library is written in C language and has multi-threading >>> subroutines. >>> >>> Mark Brethen >>> mark.bret...@gmail.com >>> >>> >>> >>>> On Jul 6, 2022, at 5:06 PM, Joshua Root <j...@macports.org> wrote: >>>> >>>> On 2022-7-7 07:40 , Mark Brethen wrote: >>>>> The source is a combination of C and fortran, so a C-compiler with >>>>> fortran is needed-preferably gcc. The gcc8 build is the only one that >>>>> does not issue those warnings. But I have successfully run verification >>>>> test cases packaged with the source against gcc8, gcc9, gcc11 and >>>>> gfortran builds. >>>>> The compilers PortGroup sets gfortran by default with these settings: >>>>> compilers.choose fc cc >>>>> compilers.setup require_fortran -g95 -clang >>>>> But it uses clang to compile the C-code. I tried blacklisting clang but >>>>> then it wants to install clang-14. Choosing a gcc variant uses its >>>>> associated mp-gfortan compiler. >>>> >>>> Yes, +gfortran is there to only give you a fortran compiler (because clang >>>> doesn't have one). Is there a reason you need the C code to be compiled >>>> with gcc? >>>> >>>> - Josh