As in bug 719314 for sys-auth/oath-toolkit the media-libs/libmetalink build process ignores -Wl,--as-needed for some libraries it builds and so links in a ton of unnecessary dependent libraries. The linking command that make / libtool uses is: x86_64-pc-linux-gnu-gcc -shared -fPIC -DPIC .libs/metalink_types.o .libs/metalink_pstm.o .libs/metalink_pstate.o .libs/metalink_pstate_v3.o .libs/metalink_pstate_v4.o .libs/metalink_pctrl.o .libs/metalink_parser_common.o .libs/metalink_session_data.o .libs/metalink_stack.o .libs/metalink_list.o .libs/metalink_string_buffer.o .libs/metalink_helper.o .libs/libxml2_metalink_parser.o -lxml2 -lz -llzma -licui18n -licuuc -licudata -lm -ldl -O3 -march=znver1 -Wl,-O1 -Wl,--as-needed -Wl,-soname -Wl,libmetalink.so.3 -o .libs/libmetalink.so.3.1.0 readelf -a .libs/libmetalink.so.3.1.0 | grep NEEDE 0x0000000000000001 (NEEDED) Shared library: [libxml2.so.2] 0x0000000000000001 (NEEDED) Shared library: [libz.so.1] 0x0000000000000001 (NEEDED) Shared library: [liblzma.so.5] 0x0000000000000001 (NEEDED) Shared library: [libicui18n.so.66] 0x0000000000000001 (NEEDED) Shared library: [libicuuc.so.66] 0x0000000000000001 (NEEDED) Shared library: [libicudata.so.66] 0x0000000000000001 (NEEDED) Shared library: [libm.so.6] 0x0000000000000001 (NEEDED) Shared library: [libdl.so.2] 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] After moving the "-Wl,--as-needed" parameter to a position before depended libraries are specified a much cleaner library is built instead: x86_64-pc-linux-gnu-gcc -shared -fPIC -DPIC .libs/metalink_types.o .libs/metalink_pstm.o .libs/metalink_pstate.o .libs/metalink_pstate_v3.o .libs/metalink_pstate_v4.o .libs/metalink_pctrl.o .libs/metalink_parser_common.o .libs/metalink_session_data.o .libs/metalink_stack.o .libs/metalink_list.o .libs/metalink_string_buffer.o .libs/metalink_helper.o .libs/libxml2_metalink_parser.o -Wl,--as-needed -lxml2 -lz -llzma -licui18n -licuuc -licudata -lm -ldl -O3 -march=znver1 -Wl,-O1 -Wl,-soname -Wl,libmetalink.so.3 -o .libs/libmetalink.so.3.1.0 readelf -a .libs/libmetalink.so.3.1.0 | grep NEEDE 0x0000000000000001 (NEEDED) Shared library: [libxml2.so.2] 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] This bug causes the package to require a (unnecessary) manual rebuild after a dev-libs/icu update: >>> package: dev-libs/icu-66.1 * - /usr/lib32/libicudata.so.65 * - /usr/lib32/libicudata.so.65.1 * used by /usr/lib32/libmetalink.so.3.1.0 (media-libs/libmetalink-0.1.3-r1) * - /usr/lib32/libicui18n.so.65 * - /usr/lib32/libicui18n.so.65.1 * used by /usr/lib32/libmetalink.so.3.1.0 (media-libs/libmetalink-0.1.3-r1) * - /usr/lib32/libicuuc.so.65 * - /usr/lib32/libicuuc.so.65.1 * used by /usr/lib32/libmetalink.so.3.1.0 (media-libs/libmetalink-0.1.3-r1) * - /usr/lib64/libicudata.so.65 * - /usr/lib64/libicudata.so.65.1 * used by /usr/lib64/libmetalink.so.3.1.0 (media-libs/libmetalink-0.1.3-r1) * - /usr/lib64/libicui18n.so.65 * - /usr/lib64/libicui18n.so.65.1 * used by /usr/lib64/libmetalink.so.3.1.0 (media-libs/libmetalink-0.1.3-r1) * - /usr/lib64/libicuuc.so.65 * - /usr/lib64/libicuuc.so.65.1 * used by /usr/lib64/libmetalink.so.3.1.0 (media-libs/libmetalink-0.1.3-r1)
confirming the automagic dependency on dev-libs/icu
*** Bug 917622 has been marked as a duplicate of this bug. ***