OpenBLAS fixed in Xcode 11.2
Marcus Calhoun-Lopez
mcalhoun at macports.org
Sun Dec 15 16:31:49 UTC 2019
The xcode_workaround-1.0.tcl PortGroup was designed so that the workaround is automatically dropped when using Xcode 11.3.
-Marcus
> On Dec 15, 2019, at 8:49 AM, Jack Howarth <howarth.at.macports at gmail.com> wrote:
>
> FYI, the gmp test suite failure in the t-powm test case when using core2 optimization with the default stack checking has been solved in the release Xcode 11.3. So the current -fno-stack-checking workaround in the MacPorts gmp package can be dropped in favor of just blacklisting Xcode 11.0 through 11.2.
> Jack
>
> On Sat, Nov 9, 2019 at 10:57 AM Marcus Calhoun-Lopez <marcuscalhounlopez at gmail.com> wrote:
> This is an interesting idea, but there may be other factors at play.
>
> GMP has definite ideas about which compiler flags to use.
> When CFLAGS is set, GMP completely ignores its own and assumes the user just wants what is in CFLAGS.
>
> Without CFLAGS, GMP uses, for example, -O2 -pedantic -fomit-frame-pointer -m64 -mtune=core2 -march=core2.
> When CFLAGS is set, none of these flags are used.
>
> Following your lead, I was able to pass all of the tests just by setting CFLAGS (*without* -fcheck-stack).
>
> -Marcus
>
> > On Nov 9, 2019, at 8:19 AM, Jack Howarth <howarth.at.macports at gmail.com> wrote:
> >
> >
> >
> > On Fri, Nov 8, 2019 at 10:17 PM Ryan Schmidt <ryandesign at macports.org> wrote:
> > On Nov 8, 2019, at 20:03, Joshua Root wrote:
> >
> > > On 2019-11-9 10:28 , Jack Howarth wrote:
> > >> I just noticed a really bizarre aspect to this Xcode 11 bug. If you
> > >> build gmp manually from source with the default compiler flags in use...
> > >>
> > >> ./configure
> > >> make
> > >> make check
> > >>
> > >> the t-powm test case fails. However if you add -fstack-check
> > >> explicitly on CFLAGS and CXXFLAGS, the t-powm test case failure is
> > >> suppressed.
> > >>
> > >> ./configure CFLAGS='-O2 -fcheck-stack' CXXFLAGS='-O2 -fcheck-stack'
> > >> make
> > >> make check
> > >
> > > Are the default compiler flags '-O2'?
> >
> > MacPorts default optimization flag is -Os.
> >
> >
> > Same behavior...
> >
> > ./configure CFLAGS='-Os -fstack-check' CXXFLAGS='-Os -fstack-check'
> > make
> > make check
> >
> > suppresses the failure
> >
> > PASS: t-powm
> >
> > with Xcode 11.2 in a manual build. Wonder how many of the remaining packages that are requiring -fno-check-stack could actually be 'fixed' by explicitly passing -fcheck-stack instead. Obviously that option disabled some of the problematic stack checking code that Apple's clang is automatically generating in the absence of the flag.
> >
>
More information about the macports-dev
mailing list