From 3c9bc4dbdb8878d3bd3e2ad9034a25e2e50b53cd Mon Sep 17 00:00:00 2001
From: Daniel Dunbar
@@ -625,6 +626,34 @@ individual enumerators.
Query for this feature with __has_extension(enumerator_attributes).
+ +Clang provides a mechanism by which frameworks can be built in such a way +that they will always be treated as being 'system frameworks', even if they are +not present in a system framework directory. This can be useful to system +framework developers who want to be able to test building other applications +with development builds of their framework, including the manner in which the +compiler changes warning behavior for system headers.
+ +Framework developers can opt-in to this mechanism by creating a +'.system_framework' file at the top-level of their framework. That is, the +framework should have contents like:
+ ++ .../TestFramework.framework + .../TestFramework.framework/.system_framework + .../TestFramework.framework/Headers + .../TestFramework.framework/Headers/TestFramework.h + ... ++ +
Clang will treat the presence of this file as an indicator that the framework +should be treated as a system framework, regardless of how it was found in the +framework search path. For consistency, we recommend that such files never be +included in installed versions of the framework.
+