2008/4/23 Cristian Rodríguez:
Currenlty an rpmlint check is being done to report this excess of dependencies, but there are many possible causes.
a) libtool "la" files and/or libtool itself that still sets link_all_deplibs=yes or link_all_deplibs=unknown instead of "no". in short , libtool is broken, but that aint big news.
b) broken pkg-config scripts that does not distinguish between "Libs" and "Libs.private" there is a HUGE LOT of them, I fixed several , but for a single person is waay to much work.
c) Broken foobar-config scripts that used with the --libs option injects unneeded dependencies, probably this scripts are not worth the hassle, we should just remove them if possible.
d) We cannot use -Wl,--as-needed everywhere, because there are A LOT of packages that use a wrong linking order in Makefiles or simple dont obey LDFLAGS.
And this one? cdrdao package has problems because: - vorbisfile.pc suffers from 'b' - ao.pc suffers from 'b' - the pacage itself has an unneeded dep against libnsl but after correcting them I still end with a dep against libm that I don't want. It happens only with the files compiled with g++, the one that uses gcc is ok. But how a file compiled with "g++ -g -O2 -o toc2cue toc2cue.o -L../trackdb -ltrackdb -lvorbisfile -lao" can end with a dep against libm???