pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
pkg/43928: pkgsrc cairo 1.10 128-bit integer division problem with gcc 4.1 on DragonFly BSD x86_64
>Number: 43928
>Category: pkg
>Synopsis: pkgsrc cairo 1.10 128-bit integer division problem with gcc
>4.1 on DragonFly BSD x86_64
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: pkg-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Wed Sep 29 15:40:00 +0000 2010
>Originator: David Shao
>Release: DragonFly BSD 2.7.3 with patches from Linux 2.6.34 drm
>Organization:
>Environment:
DragonFly 2.7-DEVELOPMENT DragonFly v2.7.3.940.g0b3b7-DEVELOPMENT #0: Sat Sep
25 00:06:50 UTC 2010 root@:/usr/obj/usr/src/sys/X86_64_GENERIC x86_64
>Description:
This bug is similar to one encountered by DragonFly BSD for gstreamer in NetBSD
Problem Report #43082.
128-bit integer division using gcc 4.1 on DragonFly BSD x86_64 is optimized to
use internal functions that are not actually defined, causing linkage errors
when trying to build say pango.
>How-To-Repeat:
pkgsrc git on DragonFly BSD latest commit
commit c60a0b325ed2e28931e45d849c6dbb2c093fe737
Date: Sat Sep 25 12:29:01 2010 +0000
I have not tested on i386 DragonFly BSD; however, the similar gstreamer bug
manifested itself only on x86_64.
>Fix:
The following is only a partial fix as it patches the configure script to
simply not set either HAVE_UINT128_T or HAVE___UINT128_T to 1 on
DragonFly BSD. It does not account for the difference between x86_64 and
i386; nor does it account for DragonFly BSD possibly switching someday to gcc
4.4+ as the default compiler.
diff --git a/graphics/cairo/distinfo b/graphics/cairo/distinfo
index 61fd9fa..b67edea 100644
--- a/graphics/cairo/distinfo
+++ b/graphics/cairo/distinfo
@@ -4,5 +4,5 @@ SHA1 (cairo-1.10.0.tar.gz) =
efe7e47408d5188690228ccadc8523652f6bf702
RMD160 (cairo-1.10.0.tar.gz) = fa65d4f3926308857d13f3ed0c100f89f075dc01
Size (cairo-1.10.0.tar.gz) = 24022822 bytes
SHA1 (patch-aa) = f211b2a5fce4ff65f280f79fbb78e1a530b9b165
-SHA1 (patch-ab) = cf6031bdbda5162ac6929be5cd2b8313882c75ed
+SHA1 (patch-ab) = f0f31b10d61600d1600b2a299b97d22e2462bd7b
SHA1 (patch-ac) = 76f29729c2b0ed3b1dc98960e1d9c9061a1b1440
diff --git a/graphics/cairo/patches/patch-ab b/graphics/cairo/patches/patch-ab
index 72d3df0..42dc6c8 100644
--- a/graphics/cairo/patches/patch-ab
+++ b/graphics/cairo/patches/patch-ab
@@ -2,9 +2,47 @@ $NetBSD$
Fix unportable test construct.
---- configure.orig 2010-09-13 11:08:31.000000000 +0000
+--- configure.orig 2010-09-06 16:16:46 +0000
+++ configure
-@@ -21447,7 +21447,7 @@ xlib_xcb_NONPKGCONFIG_LIBS="$ac_env_xlib
+@@ -18258,19 +18258,35 @@ fi
+ ac_fn_c_check_type "$LINENO" "uint128_t" "ac_cv_type_uint128_t"
"$ac_includes_default"
+ if test "x$ac_cv_type_uint128_t" = x""yes; then :
+
++case $host_os in
++dragonfly*)
++cat >>confdefs.h <<_ACEOF
++#define HAVE_UINT128_T 0
++_ACEOF
++;;
++*)
+ cat >>confdefs.h <<_ACEOF
+ #define HAVE_UINT128_T 1
+ _ACEOF
+-
++;;
++esac
+
+ fi
+ ac_fn_c_check_type "$LINENO" "__uint128_t" "ac_cv_type___uint128_t"
"$ac_includes_default"
+ if test "x$ac_cv_type___uint128_t" = x""yes; then :
+
++case $host_os in
++dragonfly*)
++cat >>confdefs.h <<_ACEOF
++#define HAVE___UINT128_T 0
++_ACEOF
++;;
++*)
+ cat >>confdefs.h <<_ACEOF
+ #define HAVE___UINT128_T 1
+ _ACEOF
+-
++;;
++esac
+
+ fi
+
+@@ -21447,7 +21463,7 @@ xlib_xcb_NONPKGCONFIG_LIBS="$ac_env_xlib
xlib_xcb_NONPKGCONFIG_EXTRA_LIBS="$ac_env_xlib_xcb_NONPKGCONFIG_EXTRA_LIBS_value"
@@ -13,7 +51,7 @@ Fix unportable test construct.
xlib_xcb_REQUIRES="x11-xcb"
pkg_failed=no
-@@ -21797,7 +21797,7 @@ xcb_shm_NONPKGCONFIG_LIBS="$ac_env_xcb_s
+@@ -21797,7 +21813,7 @@ xcb_shm_NONPKGCONFIG_LIBS="$ac_env_xcb_s
xcb_shm_NONPKGCONFIG_EXTRA_LIBS="$ac_env_xcb_shm_NONPKGCONFIG_EXTRA_LIBS_value"
@@ -22,7 +60,7 @@ Fix unportable test construct.
xcb_shm_REQUIRES="xcb-shm"
pkg_failed=no
-@@ -25203,7 +25203,7 @@ drm_xr_NONPKGCONFIG_LIBS="$ac_env_drm_xr
+@@ -25203,7 +25219,7 @@ drm_xr_NONPKGCONFIG_LIBS="$ac_env_drm_xr
drm_xr_NONPKGCONFIG_EXTRA_LIBS="$ac_env_drm_xr_NONPKGCONFIG_EXTRA_LIBS_value"
@@ -31,7 +69,7 @@ Fix unportable test construct.
drm_xr_REQUIRES="xorg-server >= 1.6 xproto xextproto >= 7.0.99.1
renderproto x11"
pkg_failed=no
-@@ -25845,7 +25845,7 @@ xcb_drm_NONPKGCONFIG_LIBS="$ac_env_xcb_d
+@@ -25845,7 +25861,7 @@ xcb_drm_NONPKGCONFIG_LIBS="$ac_env_xcb_d
xcb_drm_NONPKGCONFIG_EXTRA_LIBS="$ac_env_xcb_drm_NONPKGCONFIG_EXTRA_LIBS_value"
@@ -40,3 +78,14 @@ Fix unportable test construct.
xcb_drm_REQUIRES="xcb-dri2"
pkg_failed=no
+@@ -35496,6 +35512,10 @@ do
+ case $ac_option in
+ # Handling of the options.
+ -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
++ : Avoid regenerating within pkgsrc
++ exit 0
++ : Avoid regenerating within pkgsrc
++ exit 0
+ ac_cs_recheck=: ;;
+ --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
+ $as_echo "$ac_cs_version"; exit ;;
Home |
Main Index |
Thread Index |
Old Index