Today I was preparing a new package for Debian, pinot, a Xapian (and other engines) based full-text search engine, when I noticed of the real difference in generated dependencies passing -Wl,--as-needed to the linker (via LDFLAGS) or not. Here it is a table which summarizes the result:

LDFLAGS="" LDFLAGS="-Wl,--as-needed"
libatk1.0-0 (>= 1.20.0)
libc6 (>= 2.7-1) libc6 (>= 2.7-1)
libcairo2 (>= 1.4.0)
libcairomm-1.0-1 (>= 1.4.0)
libcomerr2 (>= 1.33-3)
libcurl3 (>= 7.16.2-1) libcurl3 (>= 7.16.2-1)
libdbus-1-3 (>= 1.1.1) libdbus-1-3 (>= 1.1.1)
libdbus-glib-1-2 (>= 0.74) libdbus-glib-1-2 (>= 0.74)
libfontconfig1 (>= 2.4.0)
libfreetype6 (>= 2.3.5)
libgcc1 (>= 1:4.1.1-21) libgcc1 (>= 1:4.1.1-21)
libglib2.0-0 (>= 2.12.0) libglib2.0-0 (>= 2.12.0)
libglibmm-2.4-1c2a (>= 2.14.0) libglibmm-2.4-1c2a (>= 2.14.0)
libgmime-2.0-2 libgmime-2.0-2
libgtk2.0-0 (>= 2.12.0) libgtk2.0-0 (>= 2.12.0)
libgtkmm-2.4-1c2a (>= 2.12.0) libgtkmm-2.4-1c2a (>= 2.12.0)
libidn11 (>= 0.5.18)
libkrb53 (>= 1.6.dfsg.2)
libldap-2.4-2 (>= 2.4.7)
libpango1.0-0 (>= 1.19.3)
libpng12-0 (>= 1.2.13-4)
libsigc++-2.0-0c2a (>= 2.0.2) libsigc++-2.0-0c2a (>= 2.0.2)
libsqlite3-0 (>= 3.5.4) libsqlite3-0 (>= 3.5.4)
libssh2-1
libssl0.9.8 (>= 0.9.8f-5) libssl0.9.8 (>= 0.9.8f-5)
libstdc++6 (>= 4.2.1-4) libstdc++6 (>= 4.2.1-4)
libtag1c2a (>= 1.4) libtag1c2a (>= 1.4)
libtextcat0 libtextcat0
libx11-6
libxapian15 libxapian15
libxml++2.6-2 (>= 2.20.0) libxml++2.6-2 (>= 2.20.0)
libxml2 (>= 2.6.27) libxml2 (>= 2.6.27)
libxrender1
zlib1g zlib1g
34 20

We removed 14 useless dependencies!