Currently, an archfilter() can be used to filter out wording placed inside of a spec file. Implementation of a vendorfilter(), osfilter(), and distfilter() would create a more fertile environment for binary packages that span across a range of application platforms.
Actively changing the static dependency content in packages is already underway. E.g., rpm-4.4.7 is using RPMTAG_DIRNAMES and RPMTAG_FILELINKTOS to synthesize dependencies, and rpm-4.4.3 and later permits macros (which can be run-time probes returning a boolean value) in dependencies, and adds dependency name spaces like cpuinfo(), getconf(), and more. I'm not sure that vendorfilter(), osfilter() or distfilter() to choose a per-install subset of static dependencies makes sense any more, run-time probes are more reliable and easier to QA. E.g. generating the mass of glop necessary for per-vendor dependency subsets within a spec file for static inclusion in a package header is probably impossible to maintain for most package monkeys.