after reading ian's blog on cowstats i grabbed diego's git repo of cowstats and ran it on libplasma. it found four bytes of useless garbage which i got rid of, leaving us with 86 bytes that are in COW sections. virtually all of those are static variables in classes. it seems that using the K_GLOBAL_STATIC method for singletons claims 18 bytes on each usage; given the safety it grants, though, that's well worth the few extra bytes over more trivial and less safe approaches.
i just ran cowstats on libkdecore and libkdeui. libkdecore has 2000 bytes and libkdeui has 6675 of data in COW sections. that's not much at all, really, 8k per process. it turns out that a third of the likdeui count is in kstandardshortcuts itself. i wonder if we can cleverly get rid of that overhead somehow ... *hacks*