Benefits of using target_sources() on INTERFACE targets?

I’d personally add the headers to the add_library list. Adding them to target_sources adds them to all consumers of your library, which isn’t usually what you actually mean. Getting them to show up in the IDE generators is another benefit (though I don’t remember if INTERFACE targets show up there in the first place).