[SM-Commit] GIT changes to master grimoire by Juuso Alasuutari (6fb52f034ac6e40736738d2a2bfb1ad3b954522c)

Juuso Alasuutari scm at sourcemage.org
Fri Sep 21 15:23:04 EDT 2007


GIT changes to master grimoire by Juuso Alasuutari <iuso at sourcemage.org>:

 devel/valgrind/DEPENDS            |    6 
 devel/valgrind/HISTORY            |    5 
 devel/valgrind/PRE_BUILD          |    7 +
 devel/valgrind/glibc_2.6_fix.diff |  266 ++++++++++++++++++++++++++++++++++++++
 4 files changed, 284 insertions(+)

New commits:
commit 6fb52f034ac6e40736738d2a2bfb1ad3b954522c
Author: Juuso Alasuutari <iuso at sourcemage.org>
Commit: Juuso Alasuutari <iuso at sourcemage.org>

    valgrind: fix build with glibc 2.6

diff --git a/devel/valgrind/DEPENDS b/devel/valgrind/DEPENDS
index 5ecc1a8..be283f1 100755
--- a/devel/valgrind/DEPENDS
+++ b/devel/valgrind/DEPENDS
@@ -2,4 +2,10 @@ if [[ $VALGRIND_SVN == y ]]
 then
   depends  automake    &&
   depends  subversion
+else
+  #
+  # only needed for glibc_2.6_fix.diff
+  #
+  depends  autoconf      &&
+  depends  automake-1.9
 fi
diff --git a/devel/valgrind/HISTORY b/devel/valgrind/HISTORY
index d91e8fb..db66973 100644
--- a/devel/valgrind/HISTORY
+++ b/devel/valgrind/HISTORY
@@ -1,3 +1,8 @@
+2007-09-21 Juuso Alasuutari <iuso at sourcemage.org>
+	* PRE_BUILD: Added patch to fix build with glibc 2.6.
+	* glibc_2.6_fix.diff: Added.
+	* DEPENDS: Added depends autoconf & automake-1.9 for above patch.
+
 2007-04-11 Juuso Alasuutari <iuso at sourcemage.org>
 	* DETAILS: Updated to 3.2.3, updated descriptions.
 	* PRE_INSTALL: Deleted, since 2.4.0 Valgrind no longer features
diff --git a/devel/valgrind/PRE_BUILD b/devel/valgrind/PRE_BUILD
index e0c30a1..fe682d1 100755
--- a/devel/valgrind/PRE_BUILD
+++ b/devel/valgrind/PRE_BUILD
@@ -4,4 +4,11 @@ cd  "$SOURCE_DIRECTORY"  &&
 if [[ $VALGRIND_SVN == y ]]
 then
   NOCONFIGURE=Y  ./autogen.sh
+else
+  #
+  # to fix build with glibc 2.6
+  #
+  patch -p1 < "$SCRIPT_DIRECTORY/glibc_2.6_fix.diff"  &&
+  autoconf                                            &&
+  automake-1.9
 fi
diff --git a/devel/valgrind/glibc_2.6_fix.diff b/devel/valgrind/glibc_2.6_fix.diff
new file mode 100644
index 0000000..4499db5
--- /dev/null
+++ b/devel/valgrind/glibc_2.6_fix.diff
@@ -0,0 +1,266 @@
+--- a/configure.in	2007-01-29 21:42:52.000000000 +0200
++++ b/configure.in	2007-09-21 21:51:26.000000000 +0300
+@@ -359,6 +359,16 @@
+ ],
+ glibc="2.5")
+ 
++AC_EGREP_CPP([GLIBC_26], [
++#include <features.h>
++#ifdef __GNU_LIBRARY__
++ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ == 6)
++  GLIBC_26
++ #endif
++#endif
++],
++glibc="2.6")
++
+ AC_MSG_CHECKING([the glibc version])
+ 
+ case "${glibc}" in
+@@ -386,9 +396,15 @@
+ 	DEFAULT_SUPP="glibc-2.5.supp ${DEFAULT_SUPP}"
+ 	;;
+ 
++     2.6)
++	AC_MSG_RESULT(2.6 family)
++	AC_DEFINE([GLIBC_2_6], 1, [Define to 1 if you're using glibc 2.6.x])
++	DEFAULT_SUPP="glibc-2.6.supp ${DEFAULT_SUPP}"
++	;;
++
+      *)
+ 	AC_MSG_RESULT(unsupported version)
+-	AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.5])
++	AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.6])
+ 	;;
+ esac
+ 
+--- a/glibc-2.6.supp	1970-01-01 02:00:00.000000000 +0200
++++ b/glibc-2.6.supp	2007-09-21 21:44:01.000000000 +0300
+@@ -0,0 +1,216 @@
++
++##----------------------------------------------------------------------##
++
++# Errors to suppress by default with glibc 2.4.x
++
++# Format of this file is:
++# {
++#     name_of_suppression
++#     tool_name:supp_kind
++#     (optional extra info for some suppression types)
++#     caller0 name, or /name/of/so/file.so
++#     caller1 name, or ditto
++#     (optionally: caller2 name)
++#     (optionally: caller3 name)
++#  }
++#
++# For Memcheck, the supp_kinds are:
++#
++#     Param Value1 Value2 Value4 Value8 Value16
++#     Free Addr1 Addr2 Addr4 Addr8 Addr16
++#     Cond (previously known as Value0)
++#
++# and the optional extra info is:
++#     if Param: name of system call param
++#     if Free: name of free-ing fn)
++
++{
++   dl-hack1
++   Memcheck:Cond
++   fun:_dl_start
++   fun:_start
++}
++
++{
++   dl-hack2
++   Memcheck:Cond
++   obj:/lib*/ld-2.6*.so
++   obj:/lib*/ld-2.6*.so
++   obj:/lib*/ld-2.6*.so
++   obj:/lib*/ld-2.6*.so
++}
++
++{
++   dl-hack3
++   Memcheck:Cond
++   obj:/lib*/ld-2.6*so*
++   obj:/lib*/ld-2.6*so*
++   obj:/lib*/ld-2.6*so*
++}
++
++##----------------------------------------------------------------------##
++{
++   glibc-2.5.x-on-SUSE-10.2-(PPC)-1
++   Memcheck:Cond
++   fun:_dl_start_final
++   fun:_dl_start
++   fun:_start
++}
++{
++   glibc-2.5.x-on-SUSE-10.2-(PPC)-2a
++   Memcheck:Cond
++   fun:index
++   obj:*ld-2.6.*.so
++}
++{
++   glibc-2.5.x-on-SuSE-10.2-(PPC)-2b
++   Memcheck:Addr4
++   fun:index
++   fun:expand_dynamic_string_token
++}
++{
++   glibc-2.5.5-on-SuSE-10.2-(PPC)-2c
++   Memcheck:Addr4
++   fun:index
++   obj:*ld-2.6.*.so
++}
++{
++   glibc-2.3.5-on-SuSE-10.1-(PPC)-3
++   Memcheck:Addr4
++   fun:*wordcopy_fwd_dest_aligned*
++   fun:mem*cpy
++   obj:*lib*2.6.*.so
++}
++
++##----------------------------------------------------------------------##
++## Various structure padding things on SUSE 10.2
++##
++{
++   X11-64bit-padding-1a
++   Memcheck:Param
++   write(buf)
++   fun:__write_nocancel
++   obj:/usr/lib*/libX11.so*
++   obj:/usr/lib*/libX11.so*
++   fun:X*
++}
++{
++   X11-64bit-padding-1b
++   Memcheck:Param
++   write(buf)
++   fun:__write_nocancel
++   obj:/usr/lib*/libX11.so*
++   obj:/usr/lib*/libX11.so*
++   fun:_X*
++}
++{
++   X11-64bit-padding-1c
++   Memcheck:Param
++   write(buf)
++   fun:__write_nocancel
++   obj:/usr/lib*/libX11.so*
++   obj:/usr/lib*/libX11.so*
++   obj:/usr/lib*/libX11.so*
++}
++{
++   X11-64bit-padding-1d
++   Memcheck:Param
++   write(buf)
++   fun:__write_nocancel
++   obj:/usr/lib*/libICE.so*
++   obj:/usr/lib*/libICE.so*
++   obj:/usr/lib*/libICE.so*
++}
++{
++   X11-64bit-padding-2a
++   Memcheck:Param
++   writev(vector[...])
++   fun:do_writev
++   obj:/usr/lib*/libX11.so*
++   obj:/usr/lib*/libX11.so*
++   obj:/usr/lib*/libX11.so*
++}
++{
++   X11-64bit-padding-2b
++   Memcheck:Param
++   writev(vector[...])
++   fun:do_writev
++   fun:writev
++   obj:/usr/lib*/libX11.so*
++   obj:/usr/lib*/libX11.so*
++}
++
++{
++   glibc24-64bit-padding-1a
++   Memcheck:Param
++   socketcall.sendto(msg)
++   fun:send
++   fun:get_mapping
++   fun:__nscd_get_map_ref
++   fun:nscd*
++}
++{
++   glibc24-64bit-padding-1b
++   Memcheck:Param
++   socketcall.sendto(msg)
++   fun:__sendto_nocancel
++   obj:/*libc-2.6.so
++   obj:/*libc-2.6.so
++   obj:/*libc-2.6.so
++}
++{
++   glibc24-64bit-padding-1c
++   Memcheck:Param
++   socketcall.send(msg)
++   fun:send
++   fun:__nscd_get_map_ref
++   fun:nscd_get*_r
++   fun:*nscd*
++   obj:/*libc-2.6.so
++}
++
++
++{
++   X11-64bit-padding-3a
++   Memcheck:Param
++   write(buf)
++   obj:/*libpthread-2.4.so*
++   obj:/usr/lib*/libX11.so*
++   obj:/usr/lib*/libX11.so*
++   obj:/usr/lib*/libX11.so*
++}
++
++{
++   X11-64bit-padding-4a
++   Memcheck:Param
++   socketcall.sendto(msg)
++   fun:send
++   obj:/*libc-2.6.so
++   obj:/*libc-2.6.so
++   obj:/*libc-2.6.so
++}
++{
++   X11-64bit-padding-4b
++   Memcheck:Param
++   socketcall.send(msg)
++   fun:send
++   obj:/*libc-2.6.so
++   obj:/*libc-2.6.so
++   obj:/*libc-2.6.so
++}
++
++##----------------------------------------------------------------------##
++# MontaVista Linux 4.0.1 on ppc32
++{
++    MVL-401-linuxthreads-pthread_create
++    Memcheck:Param
++    write(buf)
++    fun:pthread_create
++}
++{
++   MVL-401-linuxthreads-pthread_create
++   Memcheck:Param
++   write(buf)
++   obj:/lib/libpthread-0.10.so
++   fun:pthread_create
++}
+--- a/Makefile.am	2007-01-02 16:52:30.000000000 +0200
++++ b/Makefile.am	2007-09-21 21:44:01.000000000 +0300
+@@ -17,7 +17,7 @@
+ DIST_SUBDIRS  = $(SUBDIRS)
+ 
+ SUPP_FILES = \
+-	glibc-2.2.supp glibc-2.3.supp glibc-2.4.supp glibc-2.5.supp \
++	glibc-2.2.supp glibc-2.3.supp glibc-2.4.supp glibc-2.5.supp glibc-2.6.supp \
+ 	xfree-3.supp xfree-4.supp
+ 
+ dist_val_DATA = $(SUPP_FILES) default.supp



More information about the SM-Commit mailing list