1.4.7-3 defines (header) but doesn't export some functions

Bug #1834143 reported by Christian Ehrhardt 
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
device-tree-compiler (Ubuntu)
Fix Released
Undecided
Christian Ehrhardt 
Cosmic
Won't Fix
Undecided
Unassigned
Disco
Won't Fix
Undecided
Unassigned

Bug Description

libfdt 1.4.7-3 as currently in C/D/E defines some functions that it then fails to export.
Due to that programs build against its headers might fail later on.

For example qemu:
cc -pthread -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -pthread -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -fPIE -DPIE -m64 -mcx16 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wall -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -std=gnu99 -g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/qemu-4.0+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wexpansion-to-defined -Wendif-labels -Wno-shift-negative-value -Wno-missing-include-dirs -Wempty-body -Wnested-externs -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wold-style-declaration -Wold-style-definition -Wtype-limits -fstack-protector-strong -I/usr/include/p11-kit-1 -I/usr/include/libpng16 -o config-temp/qemu-conf.exe config-temp/qemu-conf.c -Wl,-z,relro -Wl,-z,now -pie -m64 -g -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,--as-needed -lfdt
/usr/bin/ld: /tmp/cck74tTE.o: in function `main':
./b/qemu/config-temp/qemu-conf.c:3: undefined reference to `fdt_check_full'

A fix to that is already upstream [1] and should be an easy backport that also "only" adds symbols - so it should be rather SRU safe.

We haven't seen this in the wild because almost no project has yet picked up to use the new function.
Hence I'm not sure we really need SRUs, but for Eoan and forward we will need that as e.g. qemu did so in [2] and therfore is FTBFS without the fix. Over the time more projects might be like that so lets fix it in Eoan (and not the others) for now.

[1]: https://github.com/dgibson/dtc/commit/eac2ad495b29f15d78daa2a7226653f36515cd7a
[2]: https://git.qemu.org/?p=qemu.git;a=commit;h=fea35ca4b8e68b4fae5df7a13d8f300d9abfb40a

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

FYI: No Debian bug needed as 1.5 (with fix) is already waiting in experimental for post-Buster.

description: updated
Changed in device-tree-compiler (Ubuntu):
assignee: nobody → Christian Ehrhardt  (paelzer)
description: updated
Changed in device-tree-compiler (Ubuntu Cosmic):
status: New → Won't Fix
Changed in device-tree-compiler (Ubuntu Disco):
status: New → Won't Fix
Changed in device-tree-compiler (Ubuntu):
status: New → In Progress
Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

I have already built and tested this change in a PPA last week for other reasons, so I think this is an exception and insta-ready for an upload to Eoan.

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

Well other than expected this even came after 1.5 so let me file a Debian bug as well.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package device-tree-compiler - 1.4.7-3ubuntu2

---------------
device-tree-compiler (1.4.7-3ubuntu2) eoan; urgency=medium

  * d/control: run update maintainer that was forgotten on the former upload,
    but required when deriving from Debian.

 -- Christian Ehrhardt <email address hidden> Tue, 25 Jun 2019 09:54:00 +0200

Changed in device-tree-compiler (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.