Hi,

On 2010年06月06日 15:21, Bill Allombert wrote:

Today circular dependencies in unstable reached an all-time low.

Excellent.

* libc6 libgcc1

This one is tricky, because it is an accurate reflection of the ELF headers. The gcc and glibc build processes actually jump through a lot of hoops to generate two libraries that have a circular dependency.

libgcc uses

- abort(), which is short and could be pulled in from libc_pic if we don't mind the code duplication

- memcpy() and memset(), which can be trivially reimplemented or pulled in from libc_pic

- malloc()/free()/realloc()/calloc(), which can be trivially implemented using mmap()/munmap()/memset() if chunks allocated here need not be freed by libc's free().

The other symbols from libgcc are weak references to pthread functions (i.e. no dependency there), and dl_iterate_phdr() from ld.so, which is supplied implicitly and ignored by dpkg-shlibdeps.

   Simon


--
To UNSUBSCRIBE, email to debian-devel-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/4c0cbe20.5070...@debian.org

Reply via email to