Hi, configure runs ok and the config.h includes these lines: /* Define to 1 if you have the <inttypes.h> header file. */ #define HAVE_INTTYPES_H 1 /* Define to 1 if you have the <sys/int_types.h> header file. */ /* #undef HAVE_SYS_INT_TYPES_H */ /* Define to 1 if you have the <stdint.h> header file. */ /* #undef HAVE_STDINT_H */ but pixman/src/pixman.h includes <stdint.h>. Then these warnings occurs: In file included from ../../../pixman/src/pixman-xserver-compat.h:47, from ../../../pixman/src/fbedge.c:26: ../../../pixman/src/icint.h:48:1: warning: "MIN" redefined In file included from /usr/include/limits.h:411, from /projekte/backup/tools/unix/hp7u11/bin/../lib/gcc/hppa2.0w -hp-hpux11.11/4.0.0/include/limits.h:122, from /projekte/backup/tools/unix/hp7u11/bin/../lib/gcc/hppa2.0w -hp-hpux11.11/4.0.0/include/syslimits.h:7, from /projekte/backup/tools/unix/hp7u11/bin/../lib/gcc/hppa2.0w -hp-hpux11.11/4.0.0/include/limits.h:11, from /projekte/backup/tools/unix/hp7u11/bin/../lib/gcc/hppa2.0w -hp-hpux11.11/4.0.0/include/wchar.h:39, from /usr/include/inttypes.h:506, from ../../../pixman/src/pixman.h:87, from ../../../pixman/src/icint.h:30, from ../../../pixman/src/pixman-xserver-compat.h:47, from ../../../pixman/src/fbedge.c:26: /usr/include/sys/param.h:379:1: warning: this is the location of the previous de finition In file included from ../../../pixman/src/pixman-xserver-compat.h:47, from ../../../pixman/src/fbedge.c:26: ../../../pixman/src/icint.h:49:1: warning: "MAX" redefined In file included from /usr/include/limits.h:411, from /projekte/backup/tools/unix/hp7u11/bin/../lib/gcc/hppa2.0w -hp-hpux11.11/4.0.0/include/limits.h:122, from /projekte/backup/tools/unix/hp7u11/bin/../lib/gcc/hppa2.0w -hp-hpux11.11/4.0.0/include/syslimits.h:7, from /projekte/backup/tools/unix/hp7u11/bin/../lib/gcc/hppa2.0w -hp-hpux11.11/4.0.0/include/limits.h:11, from /projekte/backup/tools/unix/hp7u11/bin/../lib/gcc/hppa2.0w -hp-hpux11.11/4.0.0/include/wchar.h:39, from /usr/include/inttypes.h:506, from ../../../pixman/src/pixman.h:87, from ../../../pixman/src/icint.h:30, from ../../../pixman/src/pixman-xserver-compat.h:47, from ../../../pixman/src/fbedge.c:26: /usr/include/sys/param.h:380:1: warning: this is the location of the previous de finition Furthermore this error is triggered: # error "No mutex declarations. Cairo will not work with multiple threads." \ "(Remove this #error directive to acknowledge & accept this limitation)." And then (after removing the error above) the build fails with: In file included from ../../src/cairoint.h:178, from ../../src/cairo.c:38: ../../src/cairo-wideint.h:60:2: error: #error Cannot find definitions for fixed-width integral types (uint8_t, uint32_t, etc.) Best regards, Christop Bauer
Created attachment 3688 [details] config.h generated by configure
The stdint problem occurs on SGI/IRIX too. config.h is like above ok.
This error also seems to appear when trying to build netbsd cairo package 1.0.2 on Interix. /usr/include/sys/types.h:159: warning: `uint32_t' previously declared here ../pixman/src/stdint.h:83: warning: redefinition of `int64_t' /usr/include/sys/types.h:167: warning: `int64_t' previously declared here In file included from cairoint.h:180, from cairo.c:38: cairo-wideint.h:60:2: #error Cannot find definitions for fixed-width integral ty pes (uint8_t, uint32_t, etc.) *** Error code 1 Stop. bmake: stopped in /usr/pkgsrc/graphics/cairo/work/cairo-1.0.2/src *** Error code 1
diff pixman.h.orig pixman.h 82a83 > #include "config.h" 86c87 < #elif defined (__OpenBSD__) || defined (_AIX) --- > #elif HAVE_INTTYPES_H
With the patch above, cairo-1.0.4 build fails with cc -DHAVE_CONFIG_H -I. -I../../src -I.. -I../../src -I../../pixman/src - DXTHREADS -I/T/tools/unix/hp7u11/include -I/opt/libpng/include/libpng12 - I/T/tcl_tk/8.5/add-on-libs/hp7u11/include -I/T/tcl_tk/8.5/add-on- libs/hp7u11/include/freetype2 -Ae +DAportable -c ../../src/cairo.c -Wp,- M.deps/cairo.TPlo +Z -DPIC -o .libs/cairo.o cc: "../../src/cairoint.h", line 254: error 1574: Unknown size for "cairo_clip_mode_t". cc: "../../src/cairo.c", line 299: warning 558: Empty declaration. cc: "../../src/cairo.c", line 325: warning 558: Empty declaration. cc: "../../src/cairo.c", line 971: warning 558: Empty declaration. cc: "../../src/cairo.c", line 998: warning 558: Empty declaration. cc: "../../src/cairo.c", line 1264: warning 558: Empty declaration. cc: "../../src/cairo.c", line 1394: warning 558: Empty declaration. cc: "../../src/cairo.c", line 1561: warning 558: Empty declaration. cc: "../../src/cairo.c", line 1602: warning 558: Empty declaration. cc: "../../src/cairo.c", line 1752: warning 558: Empty declaration. cc: "../../src/cairo.c", line 2297: warning 558: Empty declaration. Very strange, the code looks good. Any ideas?
it compiles, if cairo_clip_mode_t is defined as int in cairoint.h: typedef int cairo_clip_mode_t;
The original problem was resolved by the defensive manner in which stdint types are now defined in the absence of stdint.h. The second problem is a very bizzarre issue that I'm writing off as a compiler bug... Please can you try compiling the current stable version (1.8.0) on your platform - I don't believe we have anybody who regularly reports build/test issues from HP-UX so I fear our support becoming stale. Thanks.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.