diff --git a/src/app/util/config.h b/src/app/util/config.h index 072e6d89a0223f..23064eec714e7d 100644 --- a/src/app/util/config.h +++ b/src/app/util/config.h @@ -17,6 +17,10 @@ #pragma once +#include + +#if !CHIP_CONFIG_SKIP_APP_SPECIFIC_GENERATED_HEADER_INCLUDES + // include generated configuration information from AppBuilder. // ZA_GENERATED_HEADER is defined in the project file #ifdef ZA_GENERATED_HEADER @@ -31,6 +35,8 @@ #include #endif +#endif // !CHIP_CONFIG_SKIP_APP_SPECIFIC_GENERATED_HEADER_INCLUDES + // User options for plugin Binding Table Library // TODO: Make this a CHIP_CONFIG value. #ifndef EMBER_BINDING_TABLE_SIZE diff --git a/src/app/util/privilege-storage.cpp b/src/app/util/privilege-storage.cpp index 17315ae8fe3622..f2493bcbb2e5b1 100644 --- a/src/app/util/privilege-storage.cpp +++ b/src/app/util/privilege-storage.cpp @@ -15,9 +15,13 @@ * limitations under the License. */ +#include + #include "privilege-storage.h" +#if !CHIP_CONFIG_SKIP_APP_SPECIFIC_GENERATED_HEADER_INCLUDES #include +#endif // !CHIP_CONFIG_SKIP_APP_SPECIFIC_GENERATED_HEADER_INCLUDES #include diff --git a/src/darwin/Framework/Matter.xcodeproj/project.pbxproj b/src/darwin/Framework/Matter.xcodeproj/project.pbxproj index 406bd64a9552f8..30546060ca618a 100644 --- a/src/darwin/Framework/Matter.xcodeproj/project.pbxproj +++ b/src/darwin/Framework/Matter.xcodeproj/project.pbxproj @@ -1522,7 +1522,6 @@ "$(CHIP_ROOT)/third_party/editline/repo/include", "$(CHIP_ROOT)/src/include", "$(CONFIGURATION_TEMP_DIR)/Matter.build/out/gen/include", - "$(CHIP_ROOT)/zzz_generated/darwin/controller-clusters", "$(CHIP_ROOT)/third_party/inipp/repo/inipp", "$(CHIP_ROOT)/third_party/editline/include", "$(CHIP_ROOT)/examples/chip-tool", @@ -1571,7 +1570,6 @@ "$(CHIP_ROOT)/third_party/editline/repo/include", "$(CHIP_ROOT)/src/include", "$(CONFIGURATION_TEMP_DIR)/Matter.build/out/gen/include", - "$(CHIP_ROOT)/zzz_generated/darwin/controller-clusters", "$(SRCROOT)/darwin-framework-tool", "$(CHIP_ROOT)/third_party/inipp/repo/inipp", "$(CHIP_ROOT)/third_party/editline/include", @@ -1678,6 +1676,7 @@ "$(inherited)", "MTR_NEWLY_AVAILABLE=", "MTR_NEWLY_DEPRECATED(message)=", + "CHIP_CONFIG_SKIP_APP_SPECIFIC_GENERATED_HEADER_INCLUDES=1", ); HEADER_SEARCH_PATHS = ( "$(CHIP_ROOT)/src", @@ -1692,8 +1691,6 @@ "$(TEMP_DIR)/out/gen/include", "$(CHIP_ROOT)/zzz_generated/", "$(CHIP_ROOT)/zzz_generated/app-common", - "$(CHIP_ROOT)/zzz_generated/controller-clusters", - "$(CHIP_ROOT)/zzz_generated/darwin/controller-clusters", ); INFOPLIST_FILE = CHIP/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; @@ -1831,6 +1828,7 @@ "$(inherited)", "MTR_NEWLY_AVAILABLE=", "MTR_NEWLY_DEPRECATED(message)=", + "CHIP_CONFIG_SKIP_APP_SPECIFIC_GENERATED_HEADER_INCLUDES=1", ); HEADER_SEARCH_PATHS = ( "$(CHIP_ROOT)/src", @@ -1845,8 +1843,6 @@ "$(TEMP_DIR)/out/gen/include", "$(CHIP_ROOT)/zzz_generated/", "$(CHIP_ROOT)/zzz_generated/app-common", - "$(CHIP_ROOT)/zzz_generated/controller-clusters", - "$(CHIP_ROOT)/zzz_generated/darwin/controller-clusters", ); INFOPLIST_FILE = CHIP/Info.plist; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; diff --git a/src/lib/core/CHIPConfig.h b/src/lib/core/CHIPConfig.h index 961db5250e7d63..bc368912e2965c 100644 --- a/src/lib/core/CHIPConfig.h +++ b/src/lib/core/CHIPConfig.h @@ -1423,6 +1423,20 @@ extern const char CHIP_NON_PRODUCTION_MARKER[]; #define CHIP_CONFIG_MAX_SCENES_CONCURRENT_ITERATORS 2 #endif +/** + * @def CHIP_CONFIG_SKIP_APP_SPECIFIC_GENERATED_HEADER_INCLUDES + * + * @brief Controls whether core data model code will try to include app-specific generated headers. + * + * If this is set to true, data model code will be compiled with no client or + * server clusters enabled and all required access control levels set to their + * defaults: (view for all attribute/event reads, operate for all writes and + * invokes). + */ +#ifndef CHIP_CONFIG_SKIP_APP_SPECIFIC_GENERATED_HEADER_INCLUDES +#define CHIP_CONFIG_SKIP_APP_SPECIFIC_GENERATED_HEADER_INCLUDES 0 +#endif + /** * @} */