pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
pkg/44764: poppler failed to compile on Solaris 2.8 from pkgsrc 2010Q4
>Number: 44764
>Category: pkg
>Synopsis: poppler failed to compile on Solaris 2.8 from pkgsrc 2010Q4
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: pkg-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Mar 24 12:45:00 +0000 2011
>Originator: Dr. W. Stukenbrock
>Release: pkgsrc-2010Q4
>Organization:
Dr. Nagler & Company GmbH
>Environment:
System: NetBSD test-s0 4.0 NetBSD 4.0 (NSW-WS) #0: Tue Aug 17 17:28:09 CEST
2010 wgstuken@test-s0:/usr/src/sys/arch/amd64/compile/NSW-WS amd64
Architecture: x86_64
Machine: amd64
>Description:
On solaris 2.8 there are no fmin() and fmax() functions in libm.so.
So TextOutputDev.cc have unresolved externals ..
On Solaris 2.10 fmin and fmax are defined in math_iso99.h.
I have no Solaris 2.9 here, so I cannot check if fmin/fmax is
present there - sorry
>How-To-Repeat:
Try to compile poppler on Solaris 2.8.
>Fix:
The following patch will fix the problem.
Accedently there is no way to figure out the OS version when compiling
with gcc. Sunstudio compilers have __`name -s`_`uname -r` define (e.g.
__SunOS_5_8)
but gcc has nothing like this.
So I choose the header-file definition in order to decide if we need
an own version or not.
Hope this will match any future Solaris version too ...
--- poppler/TextOutputDev.cc.orig 2011-03-24 11:56:33.736416000 +0100
+++ poppler/TextOutputDev.cc 2011-03-24 13:06:09.153971000 +0100
@@ -63,9 +63,9 @@
#include "ICSupport.h"
#endif
-#if defined(__DragonFly__) || defined(__NetBSD__)
+#if defined(__DragonFly__) || defined(__NetBSD__) || (defined(__sun) &&
defined(__SVR4))
#include <sys/param.h>
-#if !(defined(__DragonFly__) && __DragonFly_version >= 200204) &&
!(defined(__NetBSD__) && (__NetBSD_Version__ >= 599002100 ||
(__NetBSD_Version__ >= 501000000 && __NetBSD_Version__ < 599000000)))
+#if !(defined(__DragonFly__) && __DragonFly_version >= 200204) &&
!(defined(__NetBSD__) && (__NetBSD_Version__ >= 599002100 ||
(__NetBSD_Version__ >= 501000000 && __NetBSD_Version__ < 599000000))) &&
!(defined(__sun) && defined(_ISO_MATH_C99_H))
static double fmax(double x, double y) { if (isnan(x)) return y; if (isnan(y))
return x; return (x > y ? x : y);}
static double fmin(double x, double y) { if (isnan(x)) return y; if (isnan(y))
return x; return (x < y ? x : y);}
#endif
>Unformatted:
Home |
Main Index |
Thread Index |
Old Index