pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/44236: gcc44 bug causing latest ImageMagick build failure on Solaris

>Number:         44236
>Category:       pkg
>Synopsis:       gcc44 bug causing latest ImageMagick build failure on Solaris
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Dec 15 18:40:00 +0000 2010
>Originator:     Tim
>Release:        pkgrsc HEAD
SunOS 5.10 Generic_144488-02 sun4u sparc SUNW,Sun-Fire-V440 Solaris

To get the latest ImageMagick package to build, I had to hack around this bug

The hack I used was to copy  /usr/include/complex.h to  
and apply the following patch:

--- /usr/include/complex.h      2004-11-23 17:11:26.000000000 -0600
+++ /usr/pkg/gcc44/lib/gcc/sparc-sun-solaris2.10/4.4.4/include-fixed/complex.h  
2010-12-15 11:40:50.803494200 -0600
@@ -14,12 +14,10 @@
  * Compilation environments for Solaris must provide the _Imaginary datatype
  * and the compiler intrinsics _Complex_I and _Imaginary_I
-#define        _Complex_I      _Complex_I
+#define        _Complex_I      (__extension__ 1.0iF)
 #define        complex         _Complex
-#define        _Imaginary_I    _Imaginary_I
-#define        imaginary       _Imaginary
 #undef I
-#define        I               _Imaginary_I
+#define        I               _Complex_I
 extern float cabsf(float complex);
 extern float cargf(float complex);

Without the hack, the build fails like this:

  CC     magick/magick_libMagickCore_la-fourier.lo
magick/fourier.c: In function 'InverseFourier':
magick/fourier.c:1016: error: '_Imaginary_I' undeclared (first use in this 
magick/fourier.c:1016: error: (Each undeclared identifier is reported only once
magick/fourier.c:1016: error: for each function it appears in.)
gmake[1]: *** [magick/magick_libMagickCore_la-fourier.lo] Error 1
gmake[1]: Leaving directory 
gmake: *** [all] Error 2
*** Error code 2

bmake: stopped in /usr/pkgsrc/graphics/ImageMagick
*** Error code 1

bmake: stopped in /usr/pkgsrc/graphics/ImageMagick

cd pkgsrc/graphics/ImageMagick

Home | Main Index | Thread Index | Old Index