|Summary:||libbsd installs nlist.h, but it conflicts with the nlist.h provided by elfutils|
|Product:||libbsd||Reporter:||Kevin McCarthy <signals>|
|Component:||libbsd||Assignee:||Guillem Jover <guillem>|
|Status:||RESOLVED FIXED||QA Contact:|
|i915 platform:||i915 features:|
Description Kevin McCarthy 2011-02-22 08:08:12 UTC
The fd.o libbsd provides a BSD-compatible nlist function, but on most modern Linux systems there is already an nlist provided by elfutils. This causes a file collision when installing libbsd into the standard system directories. Since the BSD version works on a.out files, which are uncommon to say the least on modern Linux systems, I propose that it be moved to bsd/nlist.h to avoid this conflict. If any software really needs the a.out version provided in libbsd, it can include bsd/nlist.h.
Comment 1 Guillem Jover 2011-02-22 12:39:28 UTC
The BSD nlist works on both a.out and ELF, so it's more generic than the one provided by the libelf implementations, but yes I agree that's not much of selling point currently. Anyway I'm moving all headers from the base directory to /usr/include/bsd/. This will also allow downstreams to possibly install the headers directly under /usr/include/bsd/, instead of /usr/include/libbsd/bsd/. I'll be removing the obsolete headers which have been issuing warnings now for a long time.
Comment 2 Guillem Jover 2011-06-03 11:47:21 UTC
I didn't end up removing the file in this release, as that might have broken existing software. What I did instead was move it under <includedir>bsd/, and add deprecation warnings and make them errors when LIBBSD_DISABLE_DEPRECATED is defined so that users of the library can easily spot those. The deprecated file will be removed on 0.4.0.
Comment 3 Guillem Jover 2012-06-27 05:12:56 UTC
This was fixed in libbsd 0.4.0, closing now.