Hello community,

here is the log from the commit of package sparse for openSUSE:Factory checked 
in at 2012-10-29 20:13:25
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sparse (Old)
 and      /work/SRC/openSUSE:Factory/.sparse.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

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

Changes:
--------
--- /work/SRC/openSUSE:Factory/sparse/sparse.changes    2012-02-14 
11:27:21.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.sparse.new/sparse.changes       2012-10-29 
20:15:20.000000000 +0100
@@ -1,0 +2,8 @@
+Sat Oct 27 10:11:08 UTC 2012 - [email protected]
+
+- Add sparse-0.4.4-add_error_to_ignore.patch: Ignore __error__
+- Add sparse-0.4.4-add_leaf_to_ignore.patch: Ignore __leaf__
+- Add sparse-0.4.4-add_vector_size_to_ignore.patch: Ignore __vector_size__
+- Add sparse-0.4.4-add_m64_support.patch: Fix m32/m64 support.
+
+-------------------------------------------------------------------

New:
----
  sparse-0.4.4-add_error_to_ignore.patch
  sparse-0.4.4-add_leaf_to_ignore.patch
  sparse-0.4.4-add_m64_support.patch
  sparse-0.4.4-add_vector_size_to_ignore.patch

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

Other differences:
------------------
++++++ sparse.spec ++++++
--- /var/tmp/diff_new_pack.TC7Iwd/_old  2012-10-29 20:15:21.000000000 +0100
+++ /var/tmp/diff_new_pack.TC7Iwd/_new  2012-10-29 20:15:21.000000000 +0100
@@ -16,7 +16,6 @@
 #
 
 
-
 Name:           sparse
 Summary:        A semantic parser of source files
 License:        SUSE-OSL-1.1
@@ -25,10 +24,17 @@
 Release:        0
 Url:            https://sparse.wiki.kernel.org/index.php/Main_Page
 Source:         
http://www.kernel.org/pub/software/devel/sparse/dist/sparse-%{version}.tar.xz
+
+Patch0:         sparse-0.4.4-add_leaf_to_ignore.patch
+Patch1:         sparse-0.4.4-add_vector_size_to_ignore.patch
+Patch2:         sparse-0.4.4-add_error_to_ignore.patch
+Patch3:         sparse-0.4.4-add_m64_support.patch
+
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  gtk2-devel
 BuildRequires:  libxml2-devel
-BuildRequires:  pkg-config xz
+BuildRequires:  pkg-config
+BuildRequires:  xz
 
 %description
 Sparse is a semantic parser of source files: it's neither a compiler
@@ -71,6 +77,11 @@
 %prep
 %setup -q
 
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+
 %build
 make %{?_smp_mflags} PREFIX=%{_prefix} LIBDIR=%{_libdir} MANDIR=%{_mandir} \
        PKGCONFIGDIR=%{_datadir}/pkgconfig CFLAGS="%{optflags}"

++++++ sparse-0.4.4-add_error_to_ignore.patch ++++++
commit 0a04210cc856267d8371592dc55f8b8bb7596ecc
Author:     KOSAKI Motohiro <[email protected]>
AuthorDate: Mon Jun 25 02:47:20 2012 -0700
Commit:     Christopher Li <[email protected]>
CommitDate: Mon Jun 25 02:47:20 2012 -0700

    sparse: Add 'error' to ignored attributes
    
    Add some more ignored attributes which are used in glibc header files.  It
    silences the warnings such as the following:
    
    /usr/include/bits/fcntl2.h:36:1: error: attribute '__error__': unknown 
attribute
    
    Signed-off-by: KOSAKI Motohiro <[email protected]>
    Signed-off-by: Dan Carpenter <[email protected]>
    Signed-off-by: Christopher Li <[email protected]>
---
 ident-list.h | 1 +
 parse.c      | 2 ++
 2 files changed, 3 insertions(+)

diff --git a/ident-list.h b/ident-list.h
index 5bdfa90..e00cd96 100644
--- a/ident-list.h
+++ b/ident-list.h
@@ -90,6 +90,7 @@ IDENT(restrict); IDENT(__restrict);
 IDENT(artificial); IDENT(__artificial__);
 IDENT(leaf); IDENT(__leaf__);
 IDENT(vector_size); IDENT(__vector_size__);
+IDENT(error); IDENT(__error__);
 
 
 /* Preprocessor idents.  Direct use of __IDENT avoids mentioning the keyword
diff --git a/parse.c b/parse.c
index 44eae3d..99f2ba8 100644
--- a/parse.c
+++ b/parse.c
@@ -509,6 +509,8 @@ const char *ignored_attributes[] = {
        "__dllexport__",
        "dllimport",
        "__dllimport__",
+       "error",
+       "__error__",
        "externally_visible",
        "__externally_visible__",
        "fastcall",
++++++ sparse-0.4.4-add_leaf_to_ignore.patch ++++++
commit b0b4886be5f668959b8c75c9c811059e07b1073a
Author:     Ethan Jackson <[email protected]>
AuthorDate: Tue Jan 17 14:47:11 2012 -0800
Commit:     Christopher Li <[email protected]>
CommitDate: Wed Jan 18 17:44:36 2012 -0800

    sparse: Add 'leaf' to ignored attributes.
    
    This patch adds the 'leaf' GCC attribute to the list of ignored
    attributes.  Glibc uses this attribute causing the following
    warnings in userspace projects:
    
      /usr/include/stdlib.h:514:26: error: attribute '__leaf__': unknown 
attribute
    
    Signed-off-by: Ethan Jackson <[email protected]>
    Acked-by: Pekka Enberg <[email protected]>
    Signed-off-by: Christopher Li <[email protected]>
---
 ident-list.h | 2 ++
 parse.c      | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/ident-list.h b/ident-list.h
index b12d172..35ac6bd 100644
--- a/ident-list.h
+++ b/ident-list.h
@@ -88,6 +88,8 @@ IDENT(dllimport); IDENT(__dllimport__);
 IDENT(dllexport); IDENT(__dllexport__);
 IDENT(restrict); IDENT(__restrict);
 IDENT(artificial); IDENT(__artificial__);
+IDENT(leaf); IDENT(__leaf__);
+
 
 /* Preprocessor idents.  Direct use of __IDENT avoids mentioning the keyword
  * itself by name, preventing these tokens from expanding when compiling
diff --git a/parse.c b/parse.c
index bd42180..f8ade3e 100644
--- a/parse.c
+++ b/parse.c
@@ -519,6 +519,8 @@ const char *ignored_attributes[] = {
        "__format_arg__",
        "hot",
        "__hot__",
+        "leaf",
+        "__leaf__",
        "l1_text",
        "__l1_text__",
        "l1_data",
++++++ sparse-0.4.4-add_m64_support.patch ++++++
commit 7aa79f8401f08ff9dd56088e8cbc394e646e3389
Author:     Christopher Li <[email protected]>
AuthorDate: Fri Mar 23 02:58:20 2012 -0700
Commit:     Christopher Li <[email protected]>
CommitDate: Fri Mar 23 10:50:54 2012 -0700

    Adding default for m64/m32 handle
    
    This is improved version of Pekka Enberg's patch
    "Fix including glibc headers on x86-64".
    
    To avoid setting 64 bit define in the -m32 case,
    the 64 bit initialization needs to delay until all
    arguments are handled.
    
    Signed-off-by: Christopher Li <[email protected]>
---
 lib.c | 43 +++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 41 insertions(+), 2 deletions(-)

diff --git a/lib.c b/lib.c
index 30ffd89..b4d3944 100644
--- a/lib.c
+++ b/lib.c
@@ -224,6 +224,15 @@ static enum { STANDARD_C89,
               STANDARD_GNU89,
               STANDARD_GNU99, } standard = STANDARD_GNU89;
 
+#ifdef __x86_64__
+#define ARCH_M64_DEFAULT 1
+#else
+#define ARCH_M64_DEFAULT 0
+#endif
+
+int arch_m64 = ARCH_M64_DEFAULT;
+int arch_msize_long = 0;
+
 #define CMDLINE_INCLUDE 20
 int cmdline_include_nr = 0;
 struct cmdline_include cmdline_include[CMDLINE_INCLUDE];
@@ -344,19 +353,47 @@ static char **handle_switch_M(char *arg, char **next)
 static char **handle_switch_m(char *arg, char **next)
 {
        if (!strcmp(arg, "m64")) {
+               arch_m64 = 1;
+       } else if (!strcmp(arg, "m32")) {
+               arch_m64 = 0;
+       } else if (!strcmp(arg, "msize-long")) {
+               arch_msize_long = 1;
+       }
+       return next;
+}
+
+static void handle_arch_m64_finalize(void)
+{
+       if (arch_m64) {
                bits_in_long = 64;
                max_int_alignment = 8;
                bits_in_pointer = 64;
                pointer_alignment = 8;
                size_t_ctype = &ulong_ctype;
                ssize_t_ctype = &long_ctype;
-       } else if (!strcmp(arg, "msize-long")) {
+#ifdef __x86_64__
+               add_pre_buffer("#weak_define x86_64 1\n");
+               add_pre_buffer("#weak_define __x86_64 1\n");
+               add_pre_buffer("#weak_define __x86_64__ 1\n");
+#endif
+       }
+}
+
+static void handle_arch_msize_long_finalize(void)
+{
+       if (arch_msize_long) {
                size_t_ctype = &ulong_ctype;
                ssize_t_ctype = &long_ctype;
        }
-       return next;
 }
 
+static void handle_arch_finalize(void)
+{
+       handle_arch_m64_finalize();
+       handle_arch_msize_long_finalize();
+}
+
+
 static char **handle_switch_o(char *arg, char **next)
 {
        if (!strcmp (arg, "o")) {       // "-o foo"
@@ -934,6 +971,8 @@ struct symbol_list *sparse_initialize(int argc, char 
**argv, struct string_list
        handle_switch_W_finalize();
        handle_switch_v_finalize();
 
+       handle_arch_finalize();
+
        list = NULL;
        if (!ptr_list_empty(filelist)) {
                // Initialize type system
++++++ sparse-0.4.4-add_vector_size_to_ignore.patch ++++++
commit 2313167a83c397e8acc14d10706a7235f60fc497
Author:     KOSAKI Motohiro <[email protected]>
AuthorDate: Mon Jun 25 02:42:58 2012 -0700
Commit:     Christopher Li <[email protected]>
CommitDate: Mon Jun 25 02:46:20 2012 -0700

    sparse: Add '__vector_size__' to ignored attributes
    
    We already had "vector_size" but we also need __vector_size__ to silence
    some warnings in glibc:
    
    /usr/include/bits/link.h:67:45: error: attribute '__vector_size__': unknown 
attribute
    
    Signed-off-by: KOSAKI Motohiro <[email protected]>
    Signed-off-by: Dan Carpenter <[email protected]>
    Signed-off-by: Christopher Li <[email protected]>
---
 ident-list.h | 1 +
 parse.c      | 1 +
 2 files changed, 2 insertions(+)

diff --git a/ident-list.h b/ident-list.h
index 35ac6bd..5bdfa90 100644
--- a/ident-list.h
+++ b/ident-list.h
@@ -89,6 +89,7 @@ IDENT(dllexport); IDENT(__dllexport__);
 IDENT(restrict); IDENT(__restrict);
 IDENT(artificial); IDENT(__artificial__);
 IDENT(leaf); IDENT(__leaf__);
+IDENT(vector_size); IDENT(__vector_size__);
 
 
 /* Preprocessor idents.  Direct use of __IDENT avoids mentioning the keyword
diff --git a/parse.c b/parse.c
index 8fbba6b..44eae3d 100644
--- a/parse.c
+++ b/parse.c
@@ -570,6 +570,7 @@ const char *ignored_attributes[] = {
        "used",
        "__used__",
        "vector_size",
+       "__vector_size__",
        "visibility",
        "__visibility__",
        "warn_unused_result",

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to