Date: Mon, 30 Mar 2015 18:22:04 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-arm@FreeBSD.org Subject: [Bug 199042] graphics/cairo does not build on FreeBSD arm r280772 (can't link with -lpthread) Message-ID: <bug-199042-7@https.bugs.freebsd.org/bugzilla/>
next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=199042 Bug ID: 199042 Summary: graphics/cairo does not build on FreeBSD arm r280772 (can't link with -lpthread) Product: Ports & Packages Version: Latest Hardware: arm OS: Any Status: New Severity: Affects Some People Priority: --- Component: Individual Port(s) Assignee: gnome@FreeBSD.org Reporter: usenet@ulrich-grey.de CC: freebsd-arm@FreeBSD.org CC: freebsd-arm@FreeBSD.org Assignee: gnome@FreeBSD.org Flags: maintainer-feedback?(gnome@FreeBSD.org) Ports Revision 382670 ## And the following internal features: pthread: no (can't link with -lpthread or -pthread) gtk-doc: no gcov support: no symbol-lookup: no (requires bfd) test surfaces: no (disabled, use --enable-test-surfaces to enable) ps testing: no (requires libspectre) pdf testing: no (requires poppler-glib >= 0.17.4) svg testing: no (requires librsvg-2.0 >= 2.35.0) ... ===> Building for cairo-1.12.18_1,2 ... --- cairo-arc.lo --- In file included from cairo-arc.c:37: In file included from ./cairoint.h:396: In file included from ./cairo-scaled-font-private.h:45: In file included from ./cairo-mutex-type-private.h:45: ./cairo-mutex-impl-private.h:262:3: error: "XXX: No mutex implementation found. Cairo will not work with multiple threads. Define CAIRO_NO_MUTEX to 1 to acknowledge and accept this limitation and compile cairo without thread-safety support." --- cairo-array.lo --- In file included from cairo-array.c:39: In file included from ./cairoint.h:396: In file included from ./cairo-scaled-font-private.h:45: In file included from ./cairo-mutex-type-private.h:45: ./cairo-mutex-impl-private.h:262:3: error: "XXX: No mutex implementation found. Cairo will not work with multiple threads. Define CAIRO_NO_MUTEX to 1 to acknowledge and accept this limitation and compile cairo without thread-safety support." --- cairo-atomic.lo --- In file included from cairo-atomic.c:34: In file included from ./cairoint.h:396: In file included from ./cairo-scaled-font-private.h:45: In file included from ./cairo-mutex-type-private.h:45: ./cairo-mutex-impl-private.h:262:3: error: "XXX: No mutex implementation found. Cairo will not work with multiple threads. Define CAIRO_NO_MUTEX to 1 to acknowledge and accept this limitation and compile cairo without thread-safety support." --- cairo-analysis-surface.lo --- In file included from cairo-analysis-surface.c:37: In file included from ./cairoint.h:396: In file included from ./cairo-scaled-font-private.h:45: In file included from ./cairo-mutex-type-private.h:45: ./cairo-mutex-impl-private.h:262:3: error: "XXX: No mutex implementation found. Cairo will not work with multiple threads. Define CAIRO_NO_MUTEX to 1 to acknowledge and accept this limitation and compile cairo without thread-safety support." # error "XXX: No mutex implementation found. Cairo will not work with multiple threads. Define CAIRO_NO_MUTEX to 1 to acknowledge and accept this limitation and compile cairo without thread-safety support." ^ ./cairo-mutex-impl-private.h:271:11: error: unknown type name 'cairo_mutex_impl_t' typedef cairo_mutex_impl_t cairo_recursive_mutex_impl_t; ^ In file included from cairo-analysis-surface.c:37: In file included from ./cairoint.h:396: In file included from ./cairo-scaled-font-private.h:45: ./cairo-mutex-type-private.h:49:3: error: "CAIRO_MUTEX_IMPL_LOCK not defined. Check cairo-mutex-impl-private.h." # error "CAIRO_MUTEX_IMPL_LOCK not defined. Check cairo-mutex-impl-private.h." ^ --- cairo-arc.lo --- # error "XXX: No mutex implementation found. Cairo will not work with multiple threads. Define CAIRO_NO_MUTEX to 1 to acknowledge and accept this limitation and compile cairo without thread-safety support." ^ ./cairo-mutex-impl-private.h:271:11: error: unknown type name 'cairo_mutex_impl_t' typedef cairo_mutex_impl_t cairo_recursive_mutex_impl_t; ^ In file included from cairo-arc.c:37: In file included from ./cairoint.h:396: In file included from ./cairo-scaled-font-private.h:45: ./cairo-mutex-type-private.h:49:3: error: "CAIRO_MUTEX_IMPL_LOCK not defined. Check cairo-mutex-impl-private.h." # error "CAIRO_MUTEX_IMPL_LOCK not defined. Check cairo-mutex-impl-private.h." ^ ./cairo-mutex-type-private.h:52:3: error: "CAIRO_MUTEX_IMPL_UNLOCK not defined. Check cairo-mutex-impl-private.h." # error "CAIRO_MUTEX_IMPL_UNLOCK not defined. Check cairo-mutex-impl-private.h." ^ --- cairo-array.lo --- # error "XXX: No mutex implementation found. Cairo will not work with multiple threads. Define CAIRO_NO_MUTEX to 1 to acknowledge and accept this limitation and compile cairo without thread-safety support." ^ ./cairo-mutex-impl-private.h:271:11: error: unknown type name 'cairo_mutex_impl_t' typedef cairo_mutex_impl_t cairo_recursive_mutex_impl_t; ^ In file included from cairo-array.c:39: In file included from ./cairoint.h:396: In file included from ./cairo-scaled-font-private.h:45: ./cairo-mutex-type-private.h:49:3: error: "CAIRO_MUTEX_IMPL_LOCK not defined. Check cairo-mutex-impl-private.h." # error "CAIRO_MUTEX_IMPL_LOCK not defined. Check cairo-mutex-impl-private.h." ^ --- cairo-atomic.lo --- # error "XXX: No mutex implementation found. Cairo will not work with multiple threads. Define CAIRO_NO_MUTEX to 1 to acknowledge and accept this limitation and compile cairo without thread-safety support." ^ ./cairo-mutex-impl-private.h:271:11: error: unknown type name 'cairo_mutex_impl_t' typedef cairo_mutex_impl_t cairo_recursive_mutex_impl_t; ^ In file included from cairo-atomic.c:34: In file included from ./cairoint.h:396: In file included from ./cairo-scaled-font-private.h:45: ./cairo-mutex-type-private.h:49:3: error: "CAIRO_MUTEX_IMPL_LOCK not defined. Check cairo-mutex-impl-private.h." # error "CAIRO_MUTEX_IMPL_LOCK not defined. Check cairo-mutex-impl-private.h." ^ ./cairo-mutex-type-private.h:52:3: error: "CAIRO_MUTEX_IMPL_UNLOCK not defined. Check cairo-mutex-impl-private.h." --- cairo-analysis-surface.lo --- ./cairo-mutex-type-private.h:52:3: error: "CAIRO_MUTEX_IMPL_UNLOCK not defined. Check cairo-mutex-impl-private.h." # error "CAIRO_MUTEX_IMPL_UNLOCK not defined. Check cairo-mutex-impl-private.h." ^ ./cairo-mutex-type-private.h:55:3: error: "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined. Check cairo-mutex-impl-private.h." # error "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined. Check cairo-mutex-impl-private.h." ^ ./cairo-mutex-type-private.h:139:3: error: "CAIRO_MUTEX_IMPL_LOCK not defined" # error "CAIRO_MUTEX_IMPL_LOCK not defined" ^ ./cairo-mutex-type-private.h:142:3: error: "CAIRO_MUTEX_IMPL_UNLOCK not defined" # error "CAIRO_MUTEX_IMPL_UNLOCK not defined" ^ ./cairo-mutex-type-private.h:151:3: error: "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined" # error "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined" ^ --- cairo-arc.lo --- ./cairo-mutex-type-private.h:55:3: error: "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined. Check cairo-mutex-impl-private.h." # error "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined. Check cairo-mutex-impl-private.h." ^ ./cairo-mutex-type-private.h:139:3: error: "CAIRO_MUTEX_IMPL_LOCK not defined" # error "CAIRO_MUTEX_IMPL_LOCK not defined" ^ ./cairo-mutex-type-private.h:142:3: error: "CAIRO_MUTEX_IMPL_UNLOCK not defined" # error "CAIRO_MUTEX_IMPL_UNLOCK not defined" ^ ./cairo-mutex-type-private.h:151:3: error: "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined" # error "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined" ^ --- cairo-atomic.lo --- # error "CAIRO_MUTEX_IMPL_UNLOCK not defined. Check cairo-mutex-impl-private.h." ^ --- cairo-array.lo --- ./cairo-mutex-type-private.h:52:3: error: "CAIRO_MUTEX_IMPL_UNLOCK not defined. Check cairo-mutex-impl-private.h." # error "CAIRO_MUTEX_IMPL_UNLOCK not defined. Check cairo-mutex-impl-private.h." ^ --- cairo-atomic.lo --- ./cairo-mutex-type-private.h:55:3: error: "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined. Check cairo-mutex-impl-private.h." --- cairo-array.lo --- ./cairo-mutex-type-private.h:55:3: error: "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined. Check cairo-mutex-impl-private.h." # error "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined. Check cairo-mutex-impl-private.h." --- cairo-atomic.lo --- # error "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined. Check cairo-mutex-impl-private.h." ^ --- cairo-array.lo --- ^ --- cairo-atomic.lo --- ./cairo-mutex-type-private.h:139:3: error: "CAIRO_MUTEX_IMPL_LOCK not defined" --- cairo-array.lo --- ./cairo-mutex-type-private.h:139:3: error: "CAIRO_MUTEX_IMPL_LOCK not defined" --- cairo-atomic.lo --- # error "CAIRO_MUTEX_IMPL_LOCK not defined" --- cairo-array.lo --- # error "CAIRO_MUTEX_IMPL_LOCK not defined" ^ ./cairo-mutex-type-private.h:142:3: error: "CAIRO_MUTEX_IMPL_UNLOCK not defined" # error "CAIRO_MUTEX_IMPL_UNLOCK not defined" ^ ./cairo-mutex-type-private.h:151:3: error: "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined" --- cairo-atomic.lo --- ^ --- cairo-array.lo --- # error "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined" ^ --- cairo-atomic.lo --- ./cairo-mutex-type-private.h:142:3: error: "CAIRO_MUTEX_IMPL_UNLOCK not defined" # error "CAIRO_MUTEX_IMPL_UNLOCK not defined" ^ ./cairo-mutex-type-private.h:151:3: error: "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined" # error "CAIRO_MUTEX_IMPL_NIL_INITIALIZER not defined" ^ --- cairo-arc.lo --- ./cairo-mutex-type-private.h:161:9: error: unknown type name 'cairo_mutex_impl_t' typedef cairo_mutex_impl_t cairo_mutex_t; ^ --- cairo-analysis-surface.lo --- ./cairo-mutex-type-private.h:161:9: error: unknown type name 'cairo_mutex_impl_t' typedef cairo_mutex_impl_t cairo_mutex_t; ^ --- cairo-array.lo --- ./cairo-mutex-type-private.h:161:9: error: unknown type name 'cairo_mutex_impl_t' typedef cairo_mutex_impl_t cairo_mutex_t; --- cairo-atomic.lo --- ./cairo-mutex-type-private.h:161:9: error: unknown type name 'cairo_mutex_impl_t' typedef cairo_mutex_impl_t cairo_mutex_t; ^ --- cairo-array.lo --- ^ --- cairo-atomic.lo --- 9 errors generated. --- cairo-arc.lo --- 9 errors generated. --- cairo-atomic.lo --- *** [cairo-atomic.lo] Error code 1 make[5]: stopped in /usr/local/DEVEL/NeuPorts/head/graphics/cairo/work/cairo-1.12.18/src --- cairo-arc.lo --- *** [cairo-arc.lo] Error code 1 make[5]: stopped in /usr/local/DEVEL/NeuPorts/head/graphics/cairo/work/cairo-1.12.18/src --- cairo-array.lo --- 9 errors generated. *** [cairo-array.lo] Error code 1 make[5]: stopped in /usr/local/DEVEL/NeuPorts/head/graphics/cairo/work/cairo-1.12.18/src --- cairo-analysis-surface.lo --- In file included from cairo-analysis-surface.c:45: ./cairo-surface-snapshot-inline.h:54:5: warning: implicit declaration of function 'CAIRO_MUTEX_IMPL_LOCK' is invalid in C99 [-Wimplicit-function-declaration] CAIRO_MUTEX_LOCK (snapshot->mutex); ^ ./cairo-mutex-type-private.h:169:27: note: expanded from macro 'CAIRO_MUTEX_LOCK' #define CAIRO_MUTEX_LOCK CAIRO_MUTEX_IMPL_LOCK ^ In file included from cairo-analysis-surface.c:45: ./cairo-surface-snapshot-inline.h:56:5: warning: implicit declaration of function 'CAIRO_MUTEX_IMPL_UNLOCK' is invalid in C99 [-Wimplicit-function-declaration] CAIRO_MUTEX_UNLOCK (snapshot->mutex); ^ ./cairo-mutex-type-private.h:170:29: note: expanded from macro 'CAIRO_MUTEX_UNLOCK' #define CAIRO_MUTEX_UNLOCK CAIRO_MUTEX_IMPL_UNLOCK ^ cairo-analysis-surface.c:111:5: warning: implicit conversion from enumeration type 'enum _cairo_internal_surface_type' to different enumeration type 'cairo_surface_type_t' (aka 'enum _cairo_surface_type') [-Wenum-conversion] CAIRO_INTERNAL_SURFACE_TYPE_NULL, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cairo-analysis-surface.c:158:9: warning: implicit conversion from enumeration type 'enum _cairo_status' to different enumeration type 'cairo_int_status_t' (aka 'enum _cairo_int_status') [-Wenum-conversion] return CAIRO_STATUS_SUCCESS; ~~~~~~ ^~~~~~~~~~~~~~~~~~~~ cairo-analysis-surface.c:164:19: warning: implicit conversion from enumeration type 'cairo_status_t' (aka 'enum _cairo_status') to different enumeration type 'cairo_int_status_t' (aka 'enum _cairo_int_status') [-Wenum-conversion] return tmp->base.status; ~~~~~~ ~~~~~~~~~~^~~~~~ cairo-analysis-surface.c:177:46: warning: implicit conversion from enumeration type 'enum _cairo_int_status' to different enumeration type 'cairo_status_t' (aka 'enum _cairo_status') [-Wenum-conversion] analysis_status = tmp->has_unsupported ? CAIRO_INT_STATUS_IMAGE_FALLBACK : CAIRO_INT_STATUS_SUCCESS; ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cairo-analysis-surface.c:177:80: warning: implicit conversion from enumeration type 'enum _cairo_int_status' to different enumeration type 'cairo_status_t' (aka 'enum _cairo_status') [-Wenum-conversion] analysis_status = tmp->has_unsupported ? CAIRO_INT_STATUS_IMAGE_FALLBACK : CAIRO_INT_STATUS_SUCCESS; ~ ^~~~~~~~~~~~~~~~~~~~~~~~ cairo-analysis-surface.c:182:9: warning: implicit conversion from enumeration type 'cairo_status_t' (aka 'enum _cairo_status') to different enumeration type 'cairo_int_status_t' (aka 'enum _cairo_int_status') [-Wenum-conversion] return status; ~~~~~~ ^~~~~~ cairo-analysis-surface.c:184:12: warning: implicit conversion from enumeration type 'cairo_status_t' (aka 'enum _cairo_status') to different enumeration type 'cairo_int_status_t' (aka 'enum _cairo_int_status') [-Wenum-conversion] return analysis_status; ~~~~~~ ^~~~~~~~~~~~~~~ cairo-analysis-surface.c:282:9: warning: implicit conversion from enumeration type 'cairo_status_t' (aka 'enum _cairo_status') to different enumeration type 'cairo_int_status_t' (aka 'enum _cairo_int_status') [-Wenum-conversion] return cairo_region_union_rectangle (&surface->supported_region, rect); ~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cairo-analysis-surface.c:290:14: warning: implicit conversion from enumeration type 'cairo_status_t' (aka 'enum _cairo_status') to different enumeration type 'cairo_int_status_t' (aka 'enum _cairo_int_status') [-Wenum-conversion] status = cairo_region_union_rectangle (&surface->fallback_region, rect); ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cairo-analysis-surface.c:406:45: warning: implicit conversion from enumeration type 'enum _cairo_status' to different enumeration type 'cairo_int_status_t' (aka 'enum _cairo_int_status') [-Wenum-conversion] cairo_int_status_t backend_source_status = CAIRO_STATUS_SUCCESS; ~~~~~~~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~~~~~ cairo-analysis-surface.c:407:43: warning: implicit conversion from enumeration type 'enum _cairo_status' to different enumeration type 'cairo_int_status_t' (aka 'enum _cairo_int_status') [-Wenum-conversion] cairo_int_status_t backend_mask_status = CAIRO_STATUS_SUCCESS; ~~~~~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~~~~~ cairo-analysis-surface.c:490:11: warning: implicit conversion from enumeration type 'cairo_status_t' (aka 'enum _cairo_status') to different enumeration type 'cairo_int_status_t' (aka 'enum _cairo_int_status') [-Wenum-conversion] status = _cairo_path_fixed_stroke_extents (path, style, ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cairo-analysis-surface.c:599:11: warning: implicit conversion from enumeration type 'cairo_status_t' (aka 'enum _cairo_status') to different enumeration type 'cairo_int_status_t' (aka 'enum _cairo_int_status') [-Wenum-conversion] status = _cairo_scaled_font_glyph_device_extents (scaled_font, ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cairo-analysis-surface.c:675:11: warning: implicit conversion from enumeration type 'cairo_status_t' (aka 'enum _cairo_status') to different enumeration type 'cairo_int_status_t' (aka 'enum _cairo_int_status') [-Wenum-conversion] status = _cairo_scaled_font_glyph_device_extents (scaled_font, ~ ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cairo-analysis-surface.c:690:5: warning: implicit conversion from enumeration type 'enum _cairo_internal_surface_type' to different enumeration type 'cairo_surface_type_t' (aka 'enum _cairo_surface_type') [-Wenum-conversion] CAIRO_INTERNAL_SURFACE_TYPE_ANALYSIS, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ cairo-analysis-surface.c:835:12: warning: implicit conversion from enumeration type 'enum _cairo_status' to different enumeration type 'cairo_int_status_t' (aka 'enum _cairo_int_status') [-Wenum-conversion] return CAIRO_STATUS_SUCCESS; ~~~~~~ ^~~~~~~~~~~~~~~~~~~~ cairo-analysis-surface.c:884:5: warning: implicit conversion from enumeration type 'enum _cairo_internal_surface_type' to different enumeration type 'cairo_surface_type_t' (aka 'enum _cairo_surface_type') [-Wenum-conversion] CAIRO_INTERNAL_SURFACE_TYPE_NULL, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 19 warnings and 9 errors generated. *** [cairo-analysis-surface.lo] Error code 1 make[5]: stopped in /usr/local/DEVEL/NeuPorts/head/graphics/cairo/work/cairo-1.12.18/src 4 errors make[5]: stopped in /usr/local/DEVEL/NeuPorts/head/graphics/cairo/work/cairo-1.12.18/src *** [all] Error code 2 make[4]: stopped in /usr/local/DEVEL/NeuPorts/head/graphics/cairo/work/cairo-1.12.18/src 1 error make[4]: stopped in /usr/local/DEVEL/NeuPorts/head/graphics/cairo/work/cairo-1.12.18/src *** [all-recursive] Error code 1 make[3]: stopped in /usr/local/DEVEL/NeuPorts/head/graphics/cairo/work/cairo-1.12.18 1 error make[3]: stopped in /usr/local/DEVEL/NeuPorts/head/graphics/cairo/work/cairo-1.12.18 *** [all] Error code 2 make[2]: stopped in /usr/local/DEVEL/NeuPorts/head/graphics/cairo/work/cairo-1.12.18 1 error make[2]: stopped in /usr/local/DEVEL/NeuPorts/head/graphics/cairo/work/cairo-1.12.18 ===> Compilation failed unexpectedly. Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to the maintainer. *** Error code 1 -- You are receiving this mail because: You are on the CC list for the bug.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-199042-7>