commons-daemon-1.0.1 doesn't compile with LDFLAGS="-Wl,--as-needed", because it puts "-lfoo" directives in LDFLAGS instead of a separate variables. Hence the order of the arguments given to the linker is wrong, libs are skipped, and libservice has unresolved symbols. The attached patch fixes that.
Created attachment 86358 [details, diff] files/commons-daemon-1.0.1-as-needed.patch
Created attachment 86359 [details, diff] commons-daemon-1.0.1-ebuild.patch
Have you also submitted these patches upstream? They should also be included there so that we are not stuck with maintaining them.
Fix committed to Portage and reported upstream: http://issues.apache.org/bugzilla/show_bug.cgi?id=39569