Hello community,

here is the log from the commit of package systemtap for openSUSE:Factory 
checked in at 2012-07-30 09:47:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/systemtap (Old)
 and      /work/SRC/openSUSE:Factory/.systemtap.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "systemtap", Maintainer is "[email protected]"

Changes:
--------
--- /work/SRC/openSUSE:Factory/systemtap/systemtap-docs.changes 2012-06-25 
14:56:12.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.systemtap.new/systemtap-docs.changes    
2012-07-30 09:47:33.000000000 +0200
@@ -1,0 +2,5 @@
+Fri Jul 27 10:29:23 UTC 2012 - [email protected]
+
+- Fix build with glibc 2.16
+
+-------------------------------------------------------------------
--- /work/SRC/openSUSE:Factory/systemtap/systemtap.changes      2012-06-25 
14:56:12.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.systemtap.new/systemtap.changes 2012-07-30 
09:47:33.000000000 +0200
@@ -1,0 +2,5 @@
+Fri Jul 27 10:29:19 UTC 2012 - [email protected]
+
+- Fix build with glibc 2.16
+
+-------------------------------------------------------------------

New:
----
  systemtap-linux-types.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ systemtap-docs.spec ++++++
--- /var/tmp/diff_new_pack.megPf4/_old  2012-07-30 09:48:09.000000000 +0200
+++ /var/tmp/diff_new_pack.megPf4/_new  2012-07-30 09:48:09.000000000 +0200
@@ -37,6 +37,7 @@
 Patch1:         systemtap-docdir-fix.diff
 Patch2:         systemtap-xmlto-fop.diff
 Patch3:         systemtap-docs-autoconf-version.diff
+Patch4:         systemtap-linux-types.patch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildArch:      noarch
 
@@ -49,6 +50,7 @@
 %patch1 -p1
 %patch2 -p1
 %patch3 -p1
+%patch4 -p1
 
 %build
 # fix interpreter

++++++ systemtap.spec ++++++
--- /var/tmp/diff_new_pack.megPf4/_old  2012-07-30 09:48:09.000000000 +0200
+++ /var/tmp/diff_new_pack.megPf4/_new  2012-07-30 09:48:09.000000000 +0200
@@ -37,6 +37,7 @@
 Source2:        README-BEFORE-ADDING-PATCHES
 Source3:        stap-server.conf
 Patch0:         link-with-pthread.patch
+Patch4:         systemtap-linux-types.patch
 Obsoletes:      systemtap-client < 1.5
 Requires:       %{name}-runtime = %{version}-%{release}
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
@@ -84,6 +85,7 @@
 %prep
 %setup -q
 %patch0 -p1
+%patch4 -p1
 
 %build
 %configure --disable-docs --docdir=%{_docdir}/systemtap

++++++ systemtap-linux-types.patch ++++++
From: Josh Stone <[email protected]>
Subject: Fix build with glibc 2.16
Date: 2012-07-27
Upstream: yes 
Signed-Off-by: [email protected]

>From Fedora:
Squashed cherry-picks from upstream:

commit 037853b4644bb6ebd68e2f1fac11c3636f551d8e
Author: Josh Stone <[email protected]>
Date:   Mon Jul 9 12:07:48 2012 -0700

    Fix the build with glibc 2.16
    
    With our elevated compiler warnings as errors, we got:
    
      mainloop.c: In function 'stp_main_loop':
      mainloop.c:581:3: error: signed and unsigned type in conditional 
expression [-Werror=sign-compare]
      mainloop.c:581:3: error: signed and unsigned type in conditional 
expression [-Werror=sign-compare]
      mainloop.c:583:35: error: signed and unsigned type in conditional 
expression [-Werror=sign-compare]
      mainloop.c:583:35: error: signed and unsigned type in conditional 
expression [-Werror=sign-compare]
      mainloop.c:631:2: error: signed and unsigned type in conditional 
expression [-Werror=sign-compare]
      mainloop.c:631:2: error: signed and unsigned type in conditional 
expression [-Werror=sign-compare]
      cc1: all warnings being treated as errors
    
    This turns out to be a macro fight between glibc-2.16 and
    kernel-headers, via including linux/types.h.  We apparently don't
    even need that header, so removing it lets us proceed normally.
    
    Those curious can watch this bug to see how the conflict is resolved:
    https://bugzilla.redhat.com/show_bug.cgi?id=837641

commit d9b0c1c8712ff255d4b6171fdb0e1ec39f444501
Author: Josh Stone <[email protected]>
Date:   Wed Jul 18 18:33:12 2012 -0700

    Further tweak to glibc/kernel-headers workaround
    
    ... following commit 037853b4644bb6ebd68e2f1fac11c3636f551d8e, for
    https://bugzilla.redhat.com/show_bug.cgi?id=840902
    
    Seems it's not always possible to avoid linux/types.h for the conflict
    it presents with sys/select.h.  Now include linux/types.h very early, so
    glibc can stomp over it with #undef and #define, rather than vice versa.

diff --git a/runtime/staprun/staprun.h b/runtime/staprun/staprun.h
index d01a291..e9ce117 100644
--- a/runtime/staprun/staprun.h
+++ b/runtime/staprun/staprun.h
@@ -10,6 +10,11 @@
  * Copyright (C) 2005-2008 Red Hat Inc.
  */
 #define _FILE_OFFSET_BITS 64
+
+/* kernel-headers and glibc like to stomp on each other.  We include this early
+ * so we can ensure glibc's own definitions will win.  rhbz 837641 & 840902 */
+#include <linux/types.h>
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <ctype.h>
@@ -28,7 +33,6 @@
 #include <sys/poll.h>
 #include <pthread.h>
 #include <sys/socket.h>
-#include <linux/types.h>
 #include <linux/limits.h>
 #include <sys/wait.h>
 #include <sys/statfs.h>
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to