Public bug reported:

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

** Affects: device-tree-compiler (Ubuntu)
     Importance: Undecided
     Assignee: Christian Ehrhardt  (paelzer)
         Status: In Progress

** Affects: device-tree-compiler (Ubuntu Cosmic)
     Importance: Undecided
         Status: Won't Fix

** Affects: device-tree-compiler (Ubuntu Disco)
     Importance: Undecided
         Status: Won't Fix

** Description changed:

  libfdt 1.5.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.
  
- [1]:
- https://github.com/dgibson/dtc/commit/eac2ad495b29f15d78daa2a7226653f36515cd7a
+ 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

** Changed in: device-tree-compiler (Ubuntu)
     Assignee: (unassigned) => Christian Ehrhardt  (paelzer)

** Description changed:

- libfdt 1.5.7-3 as currently in C/D/E defines some functions that it then 
fails to export.
+ 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

** Also affects: device-tree-compiler (Ubuntu Disco)
   Importance: Undecided
       Status: New

** Also affects: device-tree-compiler (Ubuntu Cosmic)
   Importance: Undecided
       Status: New

** 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

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1834143

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

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/device-tree-compiler/+bug/1834143/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to