Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package dtc for openSUSE:Factory checked in 
at 2025-02-11 21:20:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/dtc (Old)
 and      /work/SRC/openSUSE:Factory/.dtc.new.19470 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "dtc"

Tue Feb 11 21:20:59 2025 rev:43 rq:1244773 version:1.7.2

Changes:
--------
--- /work/SRC/openSUSE:Factory/dtc/dtc.changes  2025-02-06 22:02:06.517935650 
+0100
+++ /work/SRC/openSUSE:Factory/.dtc.new.19470/dtc.changes       2025-02-11 
21:21:25.430314083 +0100
@@ -1,0 +2,13 @@
+Fri Feb  7 15:24:23 UTC 2025 - Guillaume GARDET <guillaume.gar...@opensuse.org>
+
+- Update to 1.7.2:
+  * pylibfdt: Don't emit warnings from swig generate C code
+  * fdtoverlay: provide better error message for missing /__symbols__
+  * pylibfdt/libfdt.i: Use SWIG_AppendOutput
+  * Escape spaces in depfile with backslashes.
+  * libfdt.h: whitespace consistency fixups
+  * libfdt.h: typo and consistency fixes
+- Revert previous commit and use upstream fix for glibc 2.41:
+  * ce1d858.patch
+
+-------------------------------------------------------------------

Old:
----
  dtc-1.7.1.tar.gz
  dtc-1.7.1.tar.sign

New:
----
  ce1d858.patch
  dtc-1.7.2.tar.gz
  dtc-1.7.2.tar.sign

BETA DEBUG BEGIN:
  New:- Revert previous commit and use upstream fix for glibc 2.41:
  * ce1d858.patch
BETA DEBUG END:

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

Other differences:
------------------
++++++ dtc.spec ++++++
--- /var/tmp/diff_new_pack.ecAWCB/_old  2025-02-11 21:21:26.086341145 +0100
+++ /var/tmp/diff_new_pack.ecAWCB/_new  2025-02-11 21:21:26.086341145 +0100
@@ -18,7 +18,7 @@
 
 %define         sover 1
 Name:           dtc
-Version:        1.7.1
+Version:        1.7.2
 Release:        0
 Summary:        Device-tree compiler
 License:        GPL-2.0-or-later
@@ -28,6 +28,8 @@
 Source20:       baselibs.conf
 # From http://gibson.dropbear.id.au/
 Source21:       dtc.keyring
+# PATCH-FIX-UPSTREAM - https://github.com/dgibson/dtc/commit/ce1d858
+Patch1:         ce1d858.patch
 BuildRequires:  bison
 BuildRequires:  flex
 BuildRequires:  libyaml-devel
@@ -59,7 +61,7 @@
 This package provides development files for libfdt
 
 %prep
-%setup -q
+%autosetup -p1
 
 %build
 %make_build EXTRA_CFLAGS="%{optflags} -pie" LDFLAGS="%{optflags}"
@@ -72,7 +74,6 @@
 
 %check
 export EXTRA_CFLAGS="%{optflags}"
-export CC="gcc -Wa,--noexecstack"
 %make_build check
 
 %files

++++++ ce1d858.patch ++++++
>From ce1d8588880aecd7af264e422a16a8b33617cef7 Mon Sep 17 00:00:00 2001
From: David Gibson <da...@gibson.dropbear.id.au>
Date: Wed, 5 Feb 2025 13:39:43 +1100
Subject: [PATCH] tests: When building .so from -O asm output mark as
 non-executable stack

For certain tests, we take the output from dtc -O asm and build it into
a .so shared library which we then dlopen() for further tests.  Because we
don't mark it otherwise, it's treated as requiring an executable stack,
which dlopen() refuses to open as of glibc-2.41.

Of course, the library is pure data, no code, so it certainly doesn't need
an executable stack.  Add the -znoexecstack linker option to avoid the
error.

Fixes: https://github.com/dgibson/dtc/issues/163

Reported-by: Xi Ruoyao <xry...@xry111.site>
Signed-off-by: David Gibson <da...@gibson.dropbear.id.a>
---
 tests/run_tests.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tests/run_tests.sh b/tests/run_tests.sh
index 937b1288..f0b51c04 100755
--- a/tests/run_tests.sh
+++ b/tests/run_tests.sh
@@ -201,7 +201,7 @@ run_dtc_test () {
 }
 
 asm_to_so () {
-    $CC -shared -o $1.test.so "$SRCDIR/data.S" $1.test.s
+    $CC -shared -Wl,-znoexecstack -o $1.test.so "$SRCDIR/data.S" $1.test.s
 }
 
 asm_to_so_test () {

++++++ dtc-1.7.1.tar.gz -> dtc-1.7.2.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dtc-1.7.1/VERSION.txt new/dtc-1.7.2/VERSION.txt
--- old/dtc-1.7.1/VERSION.txt   2024-08-17 10:22:16.000000000 +0200
+++ new/dtc-1.7.2/VERSION.txt   2024-11-06 04:01:37.000000000 +0100
@@ -1 +1 @@
-1.7.1
+1.7.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dtc-1.7.1/dtc.c new/dtc-1.7.2/dtc.c
--- old/dtc-1.7.1/dtc.c 2024-08-17 10:22:16.000000000 +0200
+++ new/dtc-1.7.2/dtc.c 2024-11-06 04:01:37.000000000 +0100
@@ -289,7 +289,9 @@
                if (!depfile)
                        die("Couldn't open dependency file %s: %s\n", depname,
                            strerror(errno));
-               fprintf(depfile, "%s:", outname);
+
+               fprint_path_escaped(depfile, outname);
+               fputc(':', depfile);
        }
 
        if (inform == NULL)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dtc-1.7.1/fdtoverlay.c new/dtc-1.7.2/fdtoverlay.c
--- old/dtc-1.7.1/fdtoverlay.c  2024-08-17 10:22:16.000000000 +0200
+++ new/dtc-1.7.2/fdtoverlay.c  2024-11-06 04:01:37.000000000 +0100
@@ -46,6 +46,7 @@
        char *tmp = NULL;
        char *tmpo;
        int ret;
+       bool has_symbols;
 
        /*
         * We take copies first, because a failed apply can trash
@@ -62,6 +63,8 @@
                                fdt_strerror(ret));
                        goto fail;
                }
+               ret = fdt_path_offset(tmp, "/__symbols__");
+               has_symbols = ret >= 0;
 
                memcpy(tmpo, overlay, fdt_totalsize(overlay));
 
@@ -74,6 +77,11 @@
        if (ret) {
                fprintf(stderr, "\nFailed to apply '%s': %s\n",
                        name, fdt_strerror(ret));
+               if (!has_symbols) {
+                       fprintf(stderr,
+                               "base blob does not have a '/__symbols__' node, 
"
+                               "make sure you have compiled the base blob with 
'-@' option\n");
+               }
                goto fail;
        }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dtc-1.7.1/libfdt/libfdt.h 
new/dtc-1.7.2/libfdt/libfdt.h
--- old/dtc-1.7.1/libfdt/libfdt.h       2024-08-17 10:22:16.000000000 +0200
+++ new/dtc-1.7.2/libfdt/libfdt.h       2024-11-06 04:01:37.000000000 +0100
@@ -14,7 +14,7 @@
 #endif
 
 #define FDT_FIRST_SUPPORTED_VERSION    0x02
-#define FDT_LAST_COMPATIBLE_VERSION 0x10
+#define FDT_LAST_COMPATIBLE_VERSION    0x10
 #define FDT_LAST_SUPPORTED_VERSION     0x11
 
 /* Error codes: informative error codes */
@@ -285,7 +285,7 @@
 
 /**
  * fdt_header_size_ - internal function to get header size from a version 
number
- * @version: devicetree version number
+ * @version: device tree version number
  *
  * Return: size of DTB header in bytes
  */
@@ -554,7 +554,7 @@
  *     -FDT_ERR_BADPATH, given path does not begin with '/' and the first
  *             component is not a valid alias
  *     -FDT_ERR_NOTFOUND, if the requested node does not exist
- *      -FDT_ERR_BADMAGIC,
+ *     -FDT_ERR_BADMAGIC,
  *     -FDT_ERR_BADVERSION,
  *     -FDT_ERR_BADSTATE,
  *     -FDT_ERR_BADSTRUCTURE,
@@ -599,7 +599,7 @@
  *     structure block offset of the property (>=0), on success
  *     -FDT_ERR_NOTFOUND, if the requested node has no properties
  *     -FDT_ERR_BADOFFSET, if nodeoffset did not point to an FDT_BEGIN_NODE tag
- *      -FDT_ERR_BADMAGIC,
+ *     -FDT_ERR_BADMAGIC,
  *     -FDT_ERR_BADVERSION,
  *     -FDT_ERR_BADSTATE,
  *     -FDT_ERR_BADSTRUCTURE,
@@ -620,7 +620,7 @@
  *     structure block offset of the next property (>=0), on success
  *     -FDT_ERR_NOTFOUND, if the given property is the last in its node
  *     -FDT_ERR_BADOFFSET, if nodeoffset did not point to an FDT_PROP tag
- *      -FDT_ERR_BADMAGIC,
+ *     -FDT_ERR_BADMAGIC,
  *     -FDT_ERR_BADVERSION,
  *     -FDT_ERR_BADSTATE,
  *     -FDT_ERR_BADSTRUCTURE,
@@ -764,7 +764,7 @@
  * to within the device blob itself, not a copy of the value).  If
  * lenp is non-NULL, the length of the property value is also
  * returned, in the integer pointed to by lenp.  If namep is non-NULL,
- * the property's namne will also be returned in the char * pointed to
+ * the property's name will also be returned in the char * pointed to
  * by namep (this will be a pointer to within the device tree's string
  * block, not a new copy of the name).
  *
@@ -772,7 +772,7 @@
  *     pointer to the property's value
  *             if lenp is non-NULL, *lenp contains the length of the property
  *             value (>=0)
- *             if namep is non-NULL *namep contiains a pointer to the property
+ *             if namep is non-NULL *namep contains a pointer to the property
  *             name.
  *     NULL, on error
  *             if lenp is non-NULL, *lenp contains an error code (<0):
@@ -866,7 +866,7 @@
 /**
  * fdt_get_alias_namelen - get alias based on substring
  * @fdt: pointer to the device tree blob
- * @name: name of the alias th look up
+ * @name: name of the alias to look up
  * @namelen: number of characters of name to consider
  *
  * Identical to fdt_get_alias(), but only examine the first @namelen
@@ -883,7 +883,7 @@
 /**
  * fdt_get_alias - retrieve the path referenced by a given alias
  * @fdt: pointer to the device tree blob
- * @name: name of the alias th look up
+ * @name: name of the alias to look up
  *
  * fdt_get_alias() retrieves the value of a given alias.  That is, the
  * value of the property named @name in the node /aliases.
@@ -1259,8 +1259,8 @@
  *
  * returns:
  *     0 <= n < FDT_MAX_NCELLS, on success
- *      2, if the node has no #address-cells property
- *      -FDT_ERR_BADNCELLS, if the node has a badly formatted or invalid
+ *     2, if the node has no #address-cells property
+ *     -FDT_ERR_BADNCELLS, if the node has a badly formatted or invalid
  *             #address-cells property
  *     -FDT_ERR_BADMAGIC,
  *     -FDT_ERR_BADVERSION,
@@ -1280,8 +1280,8 @@
  *
  * returns:
  *     0 <= n < FDT_MAX_NCELLS, on success
- *      1, if the node has no #size-cells property
- *      -FDT_ERR_BADNCELLS, if the node has a badly formatted or invalid
+ *     1, if the node has no #size-cells property
+ *     -FDT_ERR_BADNCELLS, if the node has a badly formatted or invalid
  *             #size-cells property
  *     -FDT_ERR_BADMAGIC,
  *     -FDT_ERR_BADVERSION,
@@ -1698,7 +1698,7 @@
  * @len: length of the property value
  * @prop_data: return pointer to property data
  *
- * fdt_setprop_placeholer() allocates the named property in the given node.
+ * fdt_setprop_placeholder() allocates the named property in the given node.
  * If the property exists it is resized. In either case a pointer to the
  * property data is returned.
  *
@@ -2059,7 +2059,7 @@
  * @nodeoffset: offset of the node whose property to nop
  * @name: name of the property to nop
  *
- * fdt_del_property() will delete the given property.
+ * fdt_delprop() will delete the given property.
  *
  * This function will delete data from the blob, and will therefore
  * change the offsets of some existing nodes.
@@ -2111,8 +2111,7 @@
  * change the offsets of some existing nodes.
  *
  * returns:
- *     structure block offset of the created nodeequested subnode (>=0), on
- *             success
+ *     structure block offset of the created subnode (>=0), on success
  *     -FDT_ERR_NOTFOUND, if the requested subnode does not exist
  *     -FDT_ERR_BADOFFSET, if parentoffset did not point to an FDT_BEGIN_NODE
  *             tag
@@ -2122,7 +2121,7 @@
  *             blob to contain the new node
  *     -FDT_ERR_NOSPACE
  *     -FDT_ERR_BADLAYOUT
- *      -FDT_ERR_BADMAGIC,
+ *     -FDT_ERR_BADMAGIC,
  *     -FDT_ERR_BADVERSION,
  *     -FDT_ERR_BADSTATE,
  *     -FDT_ERR_BADSTRUCTURE,
@@ -2167,7 +2166,7 @@
  * returns:
  *     0, on success
  *     -FDT_ERR_NOSPACE, there's not enough space in the base device tree
- *     -FDT_ERR_NOTFOUND, the overlay points to some inexistant nodes or
+ *     -FDT_ERR_NOTFOUND, the overlay points to some nonexistent nodes or
  *             properties in the base DT
  *     -FDT_ERR_BADPHANDLE,
  *     -FDT_ERR_BADOVERLAY,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dtc-1.7.1/pylibfdt/Makefile.pylibfdt 
new/dtc-1.7.2/pylibfdt/Makefile.pylibfdt
--- old/dtc-1.7.1/pylibfdt/Makefile.pylibfdt    2024-08-17 10:22:16.000000000 
+0200
+++ new/dtc-1.7.2/pylibfdt/Makefile.pylibfdt    2024-11-06 04:01:37.000000000 
+0100
@@ -15,6 +15,7 @@
 SETUPFLAGS += --quiet
 endif
 
+$(PYMODULE): WARNINGS =  # suppress warnings from generated code
 $(PYMODULE): $(PYLIBFDT_srcs) $(LIBFDT_archive) $(SETUP)
        @$(VECHO) PYMOD $@
        CFLAGS="$(CFLAGS) -Wno-error" $(PYTHON) $(SETUP) $(SETUPFLAGS) build_ext
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dtc-1.7.1/pylibfdt/libfdt.i 
new/dtc-1.7.2/pylibfdt/libfdt.i
--- old/dtc-1.7.1/pylibfdt/libfdt.i     2024-08-17 10:22:16.000000000 +0200
+++ new/dtc-1.7.2/pylibfdt/libfdt.i     2024-11-06 04:01:37.000000000 +0100
@@ -1137,7 +1137,7 @@
                        fdt_string(fdt1, fdt32_to_cpu($1->nameoff)));
                buff = PyByteArray_FromStringAndSize(
                        (const char *)($1 + 1), fdt32_to_cpu($1->len));
-               resultobj = SWIG_Python_AppendOutput(resultobj, buff);
+               resultobj = SWIG_AppendOutput(resultobj, buff);
        }
 }
 
@@ -1178,7 +1178,7 @@
 
 %typemap(argout) int *depth {
         PyObject *val = Py_BuildValue("i", *arg$argnum);
-        resultobj = SWIG_Python_AppendOutput(resultobj, val);
+        resultobj = SWIG_AppendOutput(resultobj, val);
 }
 
 %apply int *depth { int *depth };
@@ -1190,7 +1190,7 @@
 
 %typemap(argout) uint64_t * {
         PyObject *val = PyLong_FromUnsignedLongLong(*arg$argnum);
-        resultobj = SWIG_Python_AppendOutput(resultobj, val);
+        resultobj = SWIG_AppendOutput(resultobj, val);
 }
 
 %include "cstring.i"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dtc-1.7.1/srcpos.c new/dtc-1.7.2/srcpos.c
--- old/dtc-1.7.1/srcpos.c      2024-08-17 10:22:16.000000000 +0200
+++ new/dtc-1.7.2/srcpos.c      2024-11-06 04:01:37.000000000 +0100
@@ -160,8 +160,10 @@
                            strerror(errno));
        }
 
-       if (depfile)
-               fprintf(depfile, " %s", fullname);
+       if (depfile) {
+               fputc(' ', depfile);
+               fprint_path_escaped(depfile, fullname);
+       }
 
        if (fullnamep)
                *fullnamep = fullname;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dtc-1.7.1/util.c new/dtc-1.7.2/util.c
--- old/dtc-1.7.1/util.c        2024-08-17 10:22:16.000000000 +0200
+++ new/dtc-1.7.2/util.c        2024-11-06 04:01:37.000000000 +0100
@@ -23,6 +23,22 @@
 #include "util.h"
 #include "version_gen.h"
 
+void fprint_path_escaped(FILE *fp, const char *path)
+{
+       const char *p = path;
+
+       while (*p) {
+               if (*p == ' ') {
+                       fputc('\\', fp);
+                       fputc(' ', fp);
+               } else {
+                       fputc(*p, fp);
+               }
+
+               p++;
+       }
+}
+
 char *xstrdup(const char *s)
 {
        int len = strlen(s) + 1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/dtc-1.7.1/util.h new/dtc-1.7.2/util.h
--- old/dtc-1.7.1/util.h        2024-08-17 10:22:16.000000000 +0200
+++ new/dtc-1.7.2/util.h        2024-11-06 04:01:37.000000000 +0100
@@ -42,6 +42,11 @@
        exit(1);
 }
 
+/**
+ * Writes path to fp, escaping spaces with a backslash.
+ */
+void fprint_path_escaped(FILE *fp, const char *path);
+
 static inline void *xmalloc(size_t len)
 {
        void *new = malloc(len);

Reply via email to