[MacPorts] #34231: ImageMagick: should not depend on pango + fix openMP
MacPorts
noreply at macports.org
Fri Apr 27 16:08:23 PDT 2012
#34231: ImageMagick: should not depend on pango + fix openMP
---------------------------------------+------------------------------------
Reporter: frederic.devernay@… | Owner: ryandesign@…
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.0.4
Keywords: haspatch | Port: ImageMagick
---------------------------------------+------------------------------------
Comment(by ryandesign@…):
Replying to [comment:2 frederic.devernay@…]:
> Here's the proper reference for the gcc 4.2/4.3 bug with OpenMP:
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36242#c4 [[br]]
> [[br]]
> to cite Jakup, GCC OpenMP guru: [[br]]
> "Jakub Jelinek 2008-06-11 20:29:19 UTC [[br]]
> [[br]]
> Using OpenMP pragmas in multiple pthread_create created threads
concurrently
> isn't supported in 4.2/4.3.
> There is a support for it on the trunk since a few days ago though."
And does ImageMagick use OpenMP pragmas in multiple pthread_create-created
threads concurrently? What is the consequence—is there a crash? If so, can
you attach a crash log? How can I reproduce the problem on my own system?
I am on Snow Leopard with Xcode 3.2.6 so my ImageMagick is compiled with
Apple gcc 4.2.1 so it should exhibit the problem.
> gcc 4.2 is for old geezers anyway (gcc 4.2.1 was released almost five
years ago!)
Apple's version of gcc 4.2.1 is the default compiler in Xcode 3.2.6, the
last free version of Xcode for Snow Leopard. It's also the last version of
gcc Apple will ever ship in Xcode. For these reasons it's still a relevant
version of gcc for OS X users.
> here's another report about that OpenMP bug in another context:
> http://lists.apple.com/archives/coreaudio-api/2009/May/msg00035.html
I don't think that's the same problem. They're talking about problems
using OpenMP from a "time constraint thread" which "is very different from
a normal thread context" and the guess is "that OpenMP has some baseline
incompatibility when running in this context". The thread also says gcc
4.4 still exhibits the problem, whereas the problem you're describing
should be fixed by that version.
If there is really a problem with OpenMP when compiled by gcc 4.2.1 and
earlier, then in light of the requests in #15945 and #24944 to provide
options to enable or disable OpenMP at install time, what we should do is
add an openmp variant, make it on by default when the compiler is clang or
llvm-gcc-4.2, and off by default otherwise. That should enable OpenMP on
Lion and later, and on Snow Leopard with Xcode 4, and disable it
otherwise. Furthermore perhaps we could offer Xcode 3 users on Leopard and
Snow Leopard the option of turning on OpenMP support by changing the
compiler to llvm-gcc-4.2 or clang, if that works—the version of clang in
Xcode 3 is old so I'm a little skeptical of that anyway.
--
Ticket URL: <https://trac.macports.org/ticket/34231#comment:3>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list