Source: device-tree-compiler Version: 1.7.2-2 Severity: serious Tags: ftbfs sid forky patch Justification: Policy 4.9 User: [email protected] Usertags: swig-4.5.0
Dear Maintainer, The device-tree-compiler package FTBFS with swig 4.5.0, which is currently in unstable. An excerpt of the build log is shown below. This is due to the removal of the Python 2 compatibility macros in version 4.5.0. According to the SWIG authors, these macros were retained in the generated code (pyhead.swg) solely for user typemaps. Any typemap using these macros must be updated to call the Python 3 C API directly. A patch for fixing the issue is available at the upstream Git repository: https://git.kernel.org/pub/scm/utils/dtc/dtc.git/commit/?id=5008d1d6a356b8d0a78060da2e1021507d529cff BTW, Upstream has released version 1.8.0, which contains the above patch, Isn't it time to update the package? Best, Rafael Laboissière ##### Build log excerpt running build_ext building '_libfdt' extension swigging <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt.i to <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt_wrap.c swig -python -I<<BUILD-DIR>>/device-tree-compiler-1.7.2/./libfdt -o <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt_wrap.c <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt.i creating build/temp.linux-x86_64-cpython-314<<BUILD-DIR>>/device-tree-compiler-1.7.2/pylibfdt x86_64-linux-gnu-gcc -g -Os -fPIC -Werror -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=<<BUILD-DIR>>/device-tree-compiler-1.7.2=. -fstack-protector-strong -fstack-clash-protection -Wformat -Wer ror=format-security -fcf-protection -Wno-error -I/usr/include/valgrind -Wno-error -Wdate-time -D_FORTIFY_SOURCE=2 -I libfdt -I . -fPIC -DPY_SSIZE_T_CLEAN -I<<BUILD-DIR>>/device-tree-compiler-1.7.2/./libfdt -I/us r/include/python3.14 -c <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt_wrap.c -o build/temp.linux-x86_64-cpython-314<<BUILD-DIR>>/device-tree-compiler-1.7.2/pylibfdt/libfdt_wrap.o <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt_wrap.c: In function ‘_wrap_fdt_next_node’: <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt_wrap.c:5555:20: error: implicit declaration of function ‘PyInt_AsLong’; did you mean ‘PyLong_AsLong’? [-Wimplicit-function-declaration] 5555 | depth3 = (int) PyInt_AsLong(swig_obj[2]); | ^~~~~~~~~~~~ | PyLong_AsLong <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt_wrap.c: In function ‘_wrap_fdt_get_property_by_offset’: <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt_wrap.c:6606:19: error: implicit declaration of function ‘PyString_FromString’; did you mean ‘PyLong_FromString’? [-Wimplicit-function-declaration] 6606 | resultobj = PyString_FromString( | ^~~~~~~~~~~~~~~~~~~ | PyLong_FromString <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt_wrap.c:6606:17: error: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 6606 | resultobj = PyString_FromString( | ^ <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt_wrap.c: In function ‘_wrap_fdt_get_property_by_offset_w’: <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt_wrap.c:6660:17: error: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 6660 | resultobj = PyString_FromString( | ^ <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt_wrap.c: In function ‘_wrap_fdt_get_property’: <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt_wrap.c:6723:17: error: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 6723 | resultobj = PyString_FromString( | ^ <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt_wrap.c: In function ‘_wrap_fdt_get_property_w’: <<BUILD-DIR>>/device-tree-compiler-1.7.2/./pylibfdt/libfdt_wrap.c:6788:17: error: assignment to ‘PyObject *’ {aka ‘struct _object *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion] 6788 | resultobj = PyString_FromString( | ^ error: command '/usr/bin/x86_64-linux-gnu-gcc' failed with exit code 1 make[3]: *** [pylibfdt/Makefile.pylibfdt:21: pylibfdt/_libfdt.so] Error 1

