# This file is generated by the generate-xcfilelists script.
$(PROJECT_DIR)/../TestRunnerShared/UIScriptContext/Bindings/UIScriptController.idl
$(PROJECT_DIR)/InjectedBundle/Bindings/AccessibilityController.idl
$(PROJECT_DIR)/InjectedBundle/Bindings/AccessibilityTextMarker.idl
$(PROJECT_DIR)/InjectedBundle/Bindings/AccessibilityTextMarkerRange.idl
$(PROJECT_DIR)/InjectedBundle/Bindings/AccessibilityUIElement.idl
$(PROJECT_DIR)/InjectedBundle/Bindings/CodeGeneratorTestRunner.pm
$(PROJECT_DIR)/InjectedBundle/Bindings/EventSendingController.idl
$(PROJECT_DIR)/InjectedBundle/Bindings/GCController.idl
$(PROJECT_DIR)/InjectedBundle/Bindings/TestRunner.idl
$(PROJECT_DIR)/InjectedBundle/Bindings/TextInputController.idl
$(WEBCORE_PRIVATE_HEADERS_DIR)/CodeGenerator.pm
$(WEBCORE_PRIVATE_HEADERS_DIR)/IDLAttributes.json
$(WEBCORE_PRIVATE_HEADERS_DIR)/IDLParser.pm
$(WEBCORE_PRIVATE_HEADERS_DIR)/generate-bindings.pl
