On Fri, Aug 24, 2007, Sven Arvidsson wrote: > Anyway, between 2.2.9 and 2.2.10, strcasecmp and strncasecmp was > removed. In 2.2.9 they don't show up in any header file, but do show up > on an objdump run (if I haven't misunderstood, this should give a list > of public symbols); > $ objdump -T libgmime-2.0.so.2.2.9 | grep .text > [...] > 0000ea20 g DF .text 000000ac Base strncasecmp > [...] > 0000ead0 g DF .text 00000093 Base strcasecmp > Is this ABI breakage?
It's an ABI change, but it's more a bug fix than an ABI breakage; these functions should never have been exported, and I can imagine they would have caused bugs in the past. Perhaps some programs actually use strncasecmp and strcasecmp and were linked against libgmime instead of libc and started crashing when libgmime didn't have the symbols anymore? In this case, we should rebuild such packages. Do you think you could build a list of such packages? Any package with a -lgmime and a binary referencing strncasecmp or strcasecmp is a candidate, so you could for example write a small shell script to: 1) search packages build-depending on libgmime-dev (recursively, that is packages build-depending on something depending on libgmime-dev should be included) 2) download the .deb files of such packages for i386 3) run objdump on all binaries of the .deb files and search for strcasecmp or strncasecmp The results could be sent to the release team to schedule bin NMUs (rebuilds). If the list in 1) is small, you could skip the next steps and request all packages to be rebuilt. -- Loïc Minier _______________________________________________ balsa-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/balsa-list
