I don't know if this can be implemented, but from my perspective the ideal solution would be to keep read_only, allow both read_only and use_application_options on a library and treat the library as read-only for every compile where the application options did not change. If the application options change, then the read-only indicator on a library would be ignored for the next compile.