Every so often I find myself wanting to debug UIKit and other system frameworks as part of tracking down an issue originally reported in WebKit. Although it is possible to build such system frameworks into the same build products directory as WebKit, subsequent builds of WebKit may fail due to compiler warnings (WebKit treats warnings as errors) when using headers from these frameworks. This is because Xcode treats all frameworks found in the build products directory as normal frameworks as opposed to system frameworks. I propose we establish a convention that frameworks placed under $(BUILT_PRODUCTS_DIR)/System/Library/Frameworks are treated as system frameworks and are preferred when building WebKit as a way to make it straightforward to build and debug WebKit with debug versions of other system frameworks.
Created attachment 349047 [details] Patch
Who builds things into $(BUILT_PRODUCTS_DIR)/System/Library/Frameworks? That's rather odd.
Even better, treat all frameworks in the built product directory as system frameworks.
Created attachment 349081 [details] Patch (Does not work)
(In reply to Daniel Bates from comment #3) > Even better, treat all frameworks in the built product directory as system > frameworks. This does not work out :( WebKit's additional error options, such as -Wundef, are applied to headers included from other frameworks built into the build products directory.
I also tried passing --system-header-prefix=< instead of adding $(BUILT_PRODUCTS_DIR)/System/Library/Frameworks to SYSTEM_FRAMEWORK_SEARCH_PATHS. This did to work.
(In reply to Daniel Bates from comment #6) > I also tried passing --system-header-prefix=< instead of adding > $(BUILT_PRODUCTS_DIR)/System/Library/Frameworks to > SYSTEM_FRAMEWORK_SEARCH_PATHS. This did to work. *This did not work.
I'll try to pester the LLDB folks (if I remember) to fix this issue.