The reason is that LDFLAGS should _not_ be used for libraries, as it has to be positioned before the list of objects to link together, while libraries should go after. This mistake in commandline is what causes as-needed to either fail or not apply at all (if LDFLAGS are put at the end). Please fix your package not to pass libraries through LDFLAGS.
Updated to latest stable; cleaned up older versions (shooting for getting 2.39 stable as soon as we can).