source: webkit/trunk/Source/JavaScriptCore/DerivedSources.make@ 262203

Last change on this file since 262203 was 262203, checked in by Devin Rousso, 5 years ago

Web Inspector: replace featureGuard and availability with a combined condition that accepts any macro
https://bugs.webkit.org/show_bug.cgi?id=210014

Reviewed by Brian Burg.

Previously, the generated InspectorBackendCommands.js would include code for things that the
backend doesn't actually support. By using actual macros and preprocessing that file, we can
ensure that the frontend doesn't incorrectly think that something is supported by the page
being inspected:

  • the Canvas commands and events related to shader programs/pipelines should only exist when the corresponding context type exists, namely ENABLE(WEBGL) and ENABLE(WEBGPU).
  • iOS doesn't support showing rulers, so create a variant of DOM.setInspectModeEnabled that only exists for PLATFORM(IOS_FAMILY) that doesn't have the showRulers optional parameter, as well as removing Page.setShowRulers entirely.
  • setting the forced appearance should only be possible if dark mode is supported.
  • web archives only exist if CF is used.

Source/JavaScriptCore:

  • inspector/protocol/CPUProfiler.json:
  • inspector/protocol/Canvas.json:
  • inspector/protocol/DOM.json:
  • inspector/protocol/IndexedDB.json:
  • inspector/protocol/Inspector.json:
  • inspector/protocol/Memory.json:
  • inspector/protocol/Page.json:
  • inspector/protocol/ServiceWorker.json:
  • Scripts/generate-derived-sources.sh:

Set CC if it hasn't already been set.

  • DerivedSources.make:
  • DerivedSources-input.xcfilelist:

Preprocess InspectorBackendCommands.js.in to get an accurate InspectorBackendCommands.js
that follows the logic/description above.

  • CMakeLists.txt:

Create a new InspectorBackendCommands target now that InspectorBackendCommands.js is
generated seprately from the rest of the protocol files.

  • Configurations/FeatureDefines.xcconfig:

Add ENABLE_WEB_ARCHIVE since it's always enabled in wtf/PlatformEnableCocoa.h.

  • inspector/scripts/generate-inspector-protocol-bindings.py:

(generate_from_specification):
(generate_from_specification.load_specification):

  • inspector/scripts/codegen/generator.py:

(Generator.init):
(Generator.model):
(Generator.set_generator_setting):
(Generator.type_declarations_for_domain):
(Generator.commands_for_domain):
(Generator.events_for_domain):
(Generator.wrap_with_guard_for_condition): Added.
(Generator.platform): Deleted.
(Generator.can_generate_platform): Deleted.
(Generator.wrap_with_guard_for_domain): Deleted.
(Generator.wrap_with_guard): Deleted.

  • inspector/scripts/codegen/models.py:

(Frameworks):
(Protocol.parse_domain):
(Protocol.parse_type_declaration):
(Protocol.parse_command):
(Protocol.parse_event):
(Domain.init):
(TypeDeclaration.init):
(Command.init):
(Event.init):
(Platform): Deleted.
(Platform.init): Deleted.
(Platform.fromString): Deleted.
(Platforms): Deleted.
(Platforms.metaclass): Deleted.
(Platforms.metaclass.iter): Deleted.

  • inspector/scripts/codegen/generator_templates.py:

Remove platform as it is handled by condition.

  • inspector/scripts/codegen/preprocess.pl: Copied from Source/WebCore/bindings/scripts/preprocessor.pm.
  • inspector/scripts/codegen/generate_js_backend_commands.py:

(JSBackendCommandsGenerator.output_filename):
(JSBackendCommandsGenerator.generate_domain):
Output to InspectorBackendCommands.js.in that includes #if for preprocessing.

  • inspector/scripts/codegen/cpp_generator_templates.py:
  • inspector/scripts/codegen/generate_cpp_alternate_backend_dispatcher_header.py:

(CppAlternateBackendDispatcherHeaderGenerator.generate_output):
(CppAlternateBackendDispatcherHeaderGenerator._generate_handler_declarations_for_domain):
(CppAlternateBackendDispatcherHeaderGenerator._generate_handler_declaration_for_command):

  • inspector/scripts/codegen/generate_cpp_backend_dispatcher_header.py:

(CppBackendDispatcherHeaderGenerator._generate_alternate_handler_forward_declarations_for_domains.Alternate):
(CppBackendDispatcherHeaderGenerator._generate_handler_declarations_for_domain):
(CppBackendDispatcherHeaderGenerator._generate_handler_declaration_for_command):
(CppBackendDispatcherHeaderGenerator._generate_async_handler_declaration_for_command):
(CppBackendDispatcherHeaderGenerator._generate_dispatcher_declarations_for_domain):
(CppBackendDispatcherHeaderGenerator._generate_dispatcher_declaration_for_command):

  • inspector/scripts/codegen/generate_cpp_backend_dispatcher_implementation.py:

(CppBackendDispatcherImplementationGenerator.generate_output):
(CppBackendDispatcherImplementationGenerator._generate_handler_class_destructor_for_domain):
(CppBackendDispatcherImplementationGenerator._generate_dispatcher_implementations_for_domain):
(CppBackendDispatcherImplementationGenerator._generate_small_dispatcher_switch_implementation_for_domain):
(CppBackendDispatcherImplementationGenerator._generate_large_dispatcher_switch_implementation_for_domain):
(CppBackendDispatcherImplementationGenerator._generate_async_dispatcher_class_for_domain):
(CppBackendDispatcherImplementationGenerator._generate_dispatcher_implementation_for_command):

  • inspector/scripts/codegen/generate_cpp_frontend_dispatcher_header.py:

(CppFrontendDispatcherHeaderGenerator._generate_dispatcher_declarations_for_domain):
(CppFrontendDispatcherHeaderGenerator._generate_dispatcher_declaration_for_event):

  • inspector/scripts/codegen/generate_cpp_frontend_dispatcher_implementation.py:

(CppFrontendDispatcherImplementationGenerator._generate_dispatcher_implementations_for_domain):
(CppFrontendDispatcherImplementationGenerator._generate_dispatcher_implementation_for_event):

  • inspector/scripts/codegen/generate_cpp_protocol_types_header.py:

(CppProtocolTypesHeaderGenerator._generate_versions):

  • inspector/scripts/codegen/generate_cpp_protocol_types_implementation.py:

(CppProtocolTypesImplementationGenerator._generate_enum_conversion_methods_for_domain.generate_conversion_method_body):
(CppProtocolTypesImplementationGenerator._generate_enum_conversion_methods_for_domain):
(CppProtocolTypesImplementationGenerator._generate_open_field_names):
(CppProtocolTypesImplementationGenerator._generate_builders_for_domain):

  • inspector/scripts/codegen/objc_generator_templates.py:
  • inspector/scripts/codegen/generate_objc_backend_dispatcher_header.py:

(ObjCBackendDispatcherHeaderGenerator._generate_objc_handler_declarations_for_domain):
(ObjCBackendDispatcherHeaderGenerator._generate_objc_handler_declaration_for_command):

  • inspector/scripts/codegen/generate_objc_backend_dispatcher_implementation.py:

(ObjCBackendDispatcherImplementationGenerator._generate_handler_implementation_for_domain):
(ObjCBackendDispatcherImplementationGenerator._generate_handler_implementation_for_command):

  • inspector/scripts/codegen/generate_objc_header.py:

(add_newline):
(ObjCHeaderGenerator.generate_output):
(ObjCHeaderGenerator._generate_forward_declarations):
(ObjCHeaderGenerator._generate_enums):
(ObjCHeaderGenerator._generate_types):
(ObjCHeaderGenerator._generate_type_interface):
(ObjCHeaderGenerator._generate_command_protocols):
(ObjCHeaderGenerator._generate_single_command_protocol):
(ObjCHeaderGenerator._generate_event_interfaces):
(ObjCHeaderGenerator._generate_single_event_interface):
(ObjCHeaderGenerator._generate_enum_for_platforms): Deleted.

  • inspector/scripts/codegen/generate_objc_protocol_type_conversions_header.py:

(add_newline):
(ObjCProtocolTypeConversionsHeaderGenerator.generate_output):
(ObjCProtocolTypeConversionsHeaderGenerator._generate_enum_conversion_functions):
(ObjCProtocolTypeConversionsHeaderGenerator._generate_enum_conversion_for_platforms): Deleted.

  • inspector/scripts/codegen/generate_objc_protocol_type_conversions_implementation.py:

(add_newline):
(ObjCProtocolTypeConversionsImplementationGenerator._generate_type_factory_category_interface):
(ObjCProtocolTypeConversionsImplementationGenerator._generate_type_factory_method_declaration):
(ObjCProtocolTypeConversionsImplementationGenerator._generate_type_factory_category_implementation):
(ObjCProtocolTypeConversionsImplementationGenerator._generate_type_factory_method_implementation):

  • inspector/scripts/codegen/generate_objc_protocol_types_implementation.py:

(add_newline):
(ObjCProtocolTypesImplementationGenerator.generate_type_implementations):
(ObjCProtocolTypesImplementationGenerator.generate_type_implementation):
Wrap each domain, type, command, and event with the associated condition (if it exists).

  • inspector/scripts/tests/command-targetType-matching-domain-debuggableType.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/command-targetType-matching-domain-debuggableType.json.
  • inspector/scripts/tests/commands-with-async-attribute.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/commands-with-async-attribute.json.
  • inspector/scripts/tests/commands-with-optional-call-return-parameters.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/commands-with-optional-call-return-parameters.json.
  • inspector/scripts/tests/definitions-with-mac-platform.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/mac/definitions-with-mac-platform.json.
  • inspector/scripts/tests/domain-debuggableTypes.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/domain-debuggableTypes.json.
  • inspector/scripts/tests/domain-targetType-matching-domain-debuggableType.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/domain-targetType-matching-domain-debuggableType.json.
  • inspector/scripts/tests/domain-targetTypes.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/domain-targetTypes.json.
  • inspector/scripts/tests/domains-with-varying-command-sizes.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/domains-with-varying-command-sizes.json.
  • inspector/scripts/tests/enum-values.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/enum-values.json.
  • inspector/scripts/tests/event-targetType-matching-domain-debuggableType.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/event-targetType-matching-domain-debuggableType.json.
  • inspector/scripts/tests/events-with-optional-parameters.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/events-with-optional-parameters.json.
  • inspector/scripts/tests/expected/command-targetType-matching-domain-debuggableType.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/command-targetType-matching-domain-debuggableType.json-result.
  • inspector/scripts/tests/expected/commands-with-async-attribute.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/commands-with-async-attribute.json-result.
  • inspector/scripts/tests/expected/commands-with-optional-call-return-parameters.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/commands-with-optional-call-return-parameters.json-result.
  • inspector/scripts/tests/expected/definitions-with-mac-platform.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/mac/expected/definitions-with-mac-platform.json-result.
  • inspector/scripts/tests/expected/domain-debuggableTypes.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/domain-debuggableTypes.json-result.
  • inspector/scripts/tests/expected/domain-targetType-matching-domain-debuggableType.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/domain-targetType-matching-domain-debuggableType.json-result.
  • inspector/scripts/tests/expected/domain-targetTypes.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/domain-targetTypes.json-result.
  • inspector/scripts/tests/expected/domains-with-varying-command-sizes.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/domains-with-varying-command-sizes.json-result.
  • inspector/scripts/tests/expected/enum-values.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/enum-values.json-result.
  • inspector/scripts/tests/expected/event-targetType-matching-domain-debuggableType.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/event-targetType-matching-domain-debuggableType.json-result.
  • inspector/scripts/tests/expected/events-with-optional-parameters.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/events-with-optional-parameters.json-result.
  • inspector/scripts/tests/expected/fail-on-command-targetType-matching-domain-debuggableType.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-command-targetType-matching-domain-debuggableType.json-error.
  • inspector/scripts/tests/expected/fail-on-command-targetTypes-type.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-command-targetTypes-type.json-error.
  • inspector/scripts/tests/expected/fail-on-command-targetTypes-value.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-command-targetTypes-value.json-error.
  • inspector/scripts/tests/expected/fail-on-domain-debuggableTypes-type.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-domain-debuggableTypes-type.json-error.
  • inspector/scripts/tests/expected/fail-on-domain-debuggableTypes-value.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-domain-debuggableTypes-value.json-error.
  • inspector/scripts/tests/expected/fail-on-domain-targetType-matching-domain-debuggableType.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-domain-targetType-matching-domain-debuggableType.json-error.
  • inspector/scripts/tests/expected/fail-on-domain-targetTypes-type.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-domain-targetTypes-type.json-error.
  • inspector/scripts/tests/expected/fail-on-domain-targetTypes-value.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-domain-targetTypes-value.json-error.
  • inspector/scripts/tests/expected/fail-on-duplicate-command-call-parameter-names.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-duplicate-command-call-parameter-names.json-error.
  • inspector/scripts/tests/expected/fail-on-duplicate-command-return-parameter-names.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-duplicate-command-return-parameter-names.json-error.
  • inspector/scripts/tests/expected/fail-on-duplicate-event-parameter-names.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-duplicate-event-parameter-names.json-error.
  • inspector/scripts/tests/expected/fail-on-duplicate-type-declarations.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-duplicate-type-declarations.json-error.
  • inspector/scripts/tests/expected/fail-on-duplicate-type-member-names.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-duplicate-type-member-names.json-error.
  • inspector/scripts/tests/expected/fail-on-enum-with-no-values.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-enum-with-no-values.json-error.
  • inspector/scripts/tests/expected/fail-on-event-targetType-matching-domain-debuggableType.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-event-targetType-matching-domain-debuggableType.json-error.
  • inspector/scripts/tests/expected/fail-on-event-targetTypes-type.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-event-targetTypes-type.json-error.
  • inspector/scripts/tests/expected/fail-on-event-targetTypes-value.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-event-targetTypes-value.json-error.
  • inspector/scripts/tests/expected/fail-on-number-typed-optional-parameter-flag.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-number-typed-optional-parameter-flag.json-error.
  • inspector/scripts/tests/expected/fail-on-number-typed-optional-type-member.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-number-typed-optional-type-member.json-error.
  • inspector/scripts/tests/expected/fail-on-string-typed-optional-parameter-flag.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-string-typed-optional-parameter-flag.json-error.
  • inspector/scripts/tests/expected/fail-on-string-typed-optional-type-member.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-string-typed-optional-type-member.json-error.
  • inspector/scripts/tests/expected/fail-on-type-declaration-using-type-reference.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-type-declaration-using-type-reference.json-error.
  • inspector/scripts/tests/expected/fail-on-type-reference-as-primitive-type.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-type-reference-as-primitive-type.json-error.
  • inspector/scripts/tests/expected/fail-on-type-with-lowercase-name.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-type-with-lowercase-name.json-error.
  • inspector/scripts/tests/expected/fail-on-unknown-type-reference-in-type-declaration.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-unknown-type-reference-in-type-declaration.json-error.
  • inspector/scripts/tests/expected/fail-on-unknown-type-reference-in-type-member.json-error: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/fail-on-unknown-type-reference-in-type-member.json-error.
  • inspector/scripts/tests/expected/generate-domains-with-feature-guards.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/generate-domains-with-feature-guards.json-result.
  • inspector/scripts/tests/expected/same-type-id-different-domain.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/same-type-id-different-domain.json-result.
  • inspector/scripts/tests/expected/shadowed-optional-type-setters.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/shadowed-optional-type-setters.json-result.
  • inspector/scripts/tests/expected/should-strip-comments.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/should-strip-comments.json-result.
  • inspector/scripts/tests/expected/type-declaration-aliased-primitive-type.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-aliased-primitive-type.json-result.
  • inspector/scripts/tests/expected/type-declaration-array-type.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-array-type.json-result.
  • inspector/scripts/tests/expected/type-declaration-enum-type.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-enum-type.json-result.
  • inspector/scripts/tests/expected/type-declaration-object-type.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-declaration-object-type.json-result.
  • inspector/scripts/tests/expected/type-requiring-runtime-casts.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-requiring-runtime-casts.json-result.
  • inspector/scripts/tests/expected/type-with-open-parameters.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/type-with-open-parameters.json-result.
  • inspector/scripts/tests/expected/version.json-result: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/expected/version.json-result.
  • inspector/scripts/tests/fail-on-command-targetType-matching-domain-debuggableType.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-command-targetType-matching-domain-debuggableType.json.
  • inspector/scripts/tests/fail-on-command-targetTypes-type.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-command-targetTypes-type.json.
  • inspector/scripts/tests/fail-on-command-targetTypes-value.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-command-targetTypes-value.json.
  • inspector/scripts/tests/fail-on-domain-debuggableTypes-type.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-domain-debuggableTypes-type.json.
  • inspector/scripts/tests/fail-on-domain-debuggableTypes-value.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-domain-debuggableTypes-value.json.
  • inspector/scripts/tests/fail-on-domain-targetType-matching-domain-debuggableType.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-domain-targetType-matching-domain-debuggableType.json.
  • inspector/scripts/tests/fail-on-domain-targetTypes-type.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-domain-targetTypes-type.json.
  • inspector/scripts/tests/fail-on-domain-targetTypes-value.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-domain-targetTypes-value.json.
  • inspector/scripts/tests/fail-on-duplicate-command-call-parameter-names.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-duplicate-command-call-parameter-names.json.
  • inspector/scripts/tests/fail-on-duplicate-command-return-parameter-names.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-duplicate-command-return-parameter-names.json.
  • inspector/scripts/tests/fail-on-duplicate-event-parameter-names.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-duplicate-event-parameter-names.json.
  • inspector/scripts/tests/fail-on-duplicate-type-declarations.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-duplicate-type-declarations.json.
  • inspector/scripts/tests/fail-on-duplicate-type-member-names.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-duplicate-type-member-names.json.
  • inspector/scripts/tests/fail-on-enum-with-no-values.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-enum-with-no-values.json.
  • inspector/scripts/tests/fail-on-event-targetType-matching-domain-debuggableType.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-event-targetType-matching-domain-debuggableType.json.
  • inspector/scripts/tests/fail-on-event-targetTypes-type.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-event-targetTypes-type.json.
  • inspector/scripts/tests/fail-on-event-targetTypes-value.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-event-targetTypes-value.json.
  • inspector/scripts/tests/fail-on-number-typed-optional-parameter-flag.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-number-typed-optional-parameter-flag.json.
  • inspector/scripts/tests/fail-on-number-typed-optional-type-member.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-number-typed-optional-type-member.json.
  • inspector/scripts/tests/fail-on-string-typed-optional-parameter-flag.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-string-typed-optional-parameter-flag.json.
  • inspector/scripts/tests/fail-on-string-typed-optional-type-member.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-string-typed-optional-type-member.json.
  • inspector/scripts/tests/fail-on-type-declaration-using-type-reference.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-type-declaration-using-type-reference.json.
  • inspector/scripts/tests/fail-on-type-reference-as-primitive-type.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-type-reference-as-primitive-type.json.
  • inspector/scripts/tests/fail-on-type-with-lowercase-name.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-type-with-lowercase-name.json.
  • inspector/scripts/tests/fail-on-unknown-type-reference-in-type-declaration.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-unknown-type-reference-in-type-declaration.json.
  • inspector/scripts/tests/fail-on-unknown-type-reference-in-type-member.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/fail-on-unknown-type-reference-in-type-member.json.
  • inspector/scripts/tests/generate-domains-with-feature-guards.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/generate-domains-with-feature-guards.json.
  • inspector/scripts/tests/same-type-id-different-domain.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/same-type-id-different-domain.json.
  • inspector/scripts/tests/shadowed-optional-type-setters.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/shadowed-optional-type-setters.json.
  • inspector/scripts/tests/should-strip-comments.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/should-strip-comments.json.
  • inspector/scripts/tests/type-declaration-aliased-primitive-type.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/type-declaration-aliased-primitive-type.json.
  • inspector/scripts/tests/type-declaration-array-type.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/type-declaration-array-type.json.
  • inspector/scripts/tests/type-declaration-enum-type.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/type-declaration-enum-type.json.
  • inspector/scripts/tests/type-declaration-object-type.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/type-declaration-object-type.json.
  • inspector/scripts/tests/type-requiring-runtime-casts.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/type-requiring-runtime-casts.json.
  • inspector/scripts/tests/type-with-open-parameters.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/type-with-open-parameters.json.
  • inspector/scripts/tests/version.json: Renamed from Source/JavaScriptCore/inspector/scripts/tests/generic/version.json.
  • inspector/scripts/tests/generic/definitions-with-mac-platform.json: Removed.
  • inspector/scripts/tests/generic/expected/definitions-with-mac-platform.json-result: Removed.
  • inspector/scripts/tests/generic/fail-on-command-with-invalid-platform.json: Removed.
  • inspector/scripts/tests/generic/expected/fail-on-command-with-invalid-platform.json-error: Removed.
  • inspector/scripts/tests/generic/fail-on-type-with-invalid-platform.json: Removed.
  • inspector/scripts/tests/generic/expected/fail-on-type-with-invalid-platform.json-error: Removed.
  • inspector/scripts/tests/ios/definitions-with-mac-platform.json: Removed.
  • inspector/scripts/tests/ios/expected/definitions-with-mac-platform.json-result: Removed.
  • inspector/scripts/tests/all/definitions-with-mac-platform.json: Removed.
  • inspector/scripts/tests/all/expected/definitions-with-mac-platform.json-result: Removed.

Don't separate the inspector generator tests by platform.

Source/WebCore:

  • inspector/InspectorInstrumentation.h:
  • inspector/InspectorInstrumentation.cpp:
  • inspector/agents/InspectorCanvasAgent.h:
  • inspector/agents/InspectorCanvasAgent.cpp:

(WebCore::InspectorCanvasAgent::InspectorCanvasAgent):
(WebCore::InspectorCanvasAgent::enable):
(WebCore::InspectorCanvasAgent::startRecording):
(WebCore::InspectorCanvasAgent::reset):
(WebCore::InspectorCanvasAgent::unbindCanvas):

  • inspector/InspectorShaderProgram.h:
  • inspector/InspectorShaderProgram.cpp:

(WebCore::InspectorShaderProgram::requestShaderSource):
(WebCore::InspectorShaderProgram::updateShader):

  • inspector/agents/InspectorDOMAgent.h:
  • inspector/agents/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::setInspectModeEnabled):

  • inspector/agents/InspectorPageAgent.h:
  • inspector/agents/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::enable):
(WebCore::InspectorPageAgent::disable):
(WebCore::InspectorPageAgent::setForcedAppearance):
(WebCore::InspectorPageAgent::archive):

  • Configurations/FeatureDefines.xcconfig:

Add ENABLE_WEB_ARCHIVE since it's always enabled in wtf/PlatformEnableCocoa.h.

  • inspector/InspectorFrontendHost.idl:

Drive-by: replace the #if with the IDL [Conditional=].

Source/WebCore/PAL:

  • Configurations/FeatureDefines.xcconfig:

Add ENABLE_WEB_ARCHIVE since it's always enabled in wtf/PlatformEnableCocoa.h.

Source/WebInspectorUI:

  • CMakeLists.txt:

Add a dependency on the new InspectorBackendCommands target.

  • UserInterface/Base/Main.js:

(WI._updateDownloadTabBarButton):

Source/WebKit:

  • Configurations/FeatureDefines.xcconfig:

Add ENABLE_WEB_ARCHIVE since it's always enabled in wtf/PlatformEnableCocoa.h.

  • DerivedSources.make:
  • PlatformMac.cmake:

Remove platform as it is handled by condition.

  • UIProcess/Automation/Automation.json:

Source/WebKitLegacy/mac:

  • Configurations/FeatureDefines.xcconfig:

Add ENABLE_WEB_ARCHIVE since it's always enabled in wtf/PlatformEnableCocoa.h.

Tools:

  • Configurations/FeatureDefines.xcconfig:

Add ENABLE_WEB_ARCHIVE since it's always enabled in wtf/PlatformEnableCocoa.h.

  • Scripts/webkitpy/inspector/main.py:

(InspectorGeneratorTests.generate_from_json):
(InspectorGeneratorTests.run_tests):
(InspectorGeneratorTests.main):

  • Property svn:eol-style set to native
File size: 18.9 KB
Line 
1# Copyright (C) 2006, 2007, 2008, 2009, 2011, 2013, 2015 Apple Inc. All rights reserved.
2#
3# Redistribution and use in source and binary forms, with or without
4# modification, are permitted provided that the following conditions
5# are met:
6#
7# 1. Redistributions of source code must retain the above copyright
8# notice, this list of conditions and the following disclaimer.
9# 2. Redistributions in binary form must reproduce the above copyright
10# notice, this list of conditions and the following disclaimer in the
11# documentation and/or other materials provided with the distribution.
12# 3. Neither the name of Apple Inc. ("Apple") nor the names of
13# its contributors may be used to endorse or promote products derived
14# from this software without specific prior written permission.
15#
16# THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY
17# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19# DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY
20# DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
21# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
22# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
23# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26
27VPATH = \
28 $(JavaScriptCore) \
29 $(JavaScriptCore)/parser \
30 $(JavaScriptCore)/runtime \
31 $(JavaScriptCore)/interpreter \
32 $(JavaScriptCore)/jit \
33 $(JavaScriptCore)/builtins \
34 $(JavaScriptCore)/wasm/js \
35#
36
37PYTHON = python
38PERL = perl
39RUBY = ruby
40
41JavaScriptCore_SCRIPTS_DIR = $(JavaScriptCore)/Scripts
42
43ifeq ($(OS),Windows_NT)
44 DELETE = cmd //C del
45else
46 DELETE = rm -f
47endif
48
49PREPROCESSOR_DEFINES = $(FEATURE_DEFINES)
50
51FRAMEWORK_FLAGS = $(shell echo $(BUILT_PRODUCTS_DIR) $(FRAMEWORK_SEARCH_PATHS) $(SYSTEM_FRAMEWORK_SEARCH_PATHS) | perl -e 'print "-F " . join(" -F ", split(" ", <>));')
52HEADER_FLAGS = $(shell echo $(BUILT_PRODUCTS_DIR) $(HEADER_SEARCH_PATHS) $(SYSTEM_HEADER_SEARCH_PATHS) | perl -e 'print "-I" . join(" -I", split(" ", <>));')
53
54ifneq ($(SDKROOT),)
55 SDK_FLAGS=-isysroot $(SDKROOT)
56endif
57
58ifeq ($(USE_LLVM_TARGET_TRIPLES_FOR_CLANG),YES)
59 WK_CURRENT_ARCH=$(word 1, $(ARCHS))
60 TARGET_TRIPLE_FLAGS=-target $(WK_CURRENT_ARCH)-$(LLVM_TARGET_TRIPLE_VENDOR)-$(LLVM_TARGET_TRIPLE_OS_VERSION)$(LLVM_TARGET_TRIPLE_SUFFIX)
61endif
62
63ifeq ($(shell $(CC) -std=gnu++1z -x c++ -E -P -dM $(SDK_FLAGS) $(TARGET_TRIPLE_FLAGS) $(FRAMEWORK_FLAGS) $(HEADER_FLAGS) -include "wtf/Platform.h" /dev/null | grep ' WTF_PLATFORM_MAC ' | cut -d' ' -f3), 1)
64 PREPROCESSOR_DEFINES += WTF_PLATFORM_MAC
65endif
66
67ifeq ($(shell $(CC) -std=gnu++1z -x c++ -E -P -dM $(SDK_FLAGS) $(TARGET_TRIPLE_FLAGS) $(FRAMEWORK_FLAGS) $(HEADER_FLAGS) -include "wtf/Platform.h" /dev/null | grep ' WTF_PLATFORM_IOS_FAMILY ' | cut -d' ' -f3), 1)
68 PREPROCESSOR_DEFINES += WTF_PLATFORM_IOS_FAMILY
69endif
70
71ifeq ($(shell $(CC) -std=gnu++1z -x c++ -E -P -dM $(SDK_FLAGS) $(TARGET_TRIPLE_FLAGS) $(FRAMEWORK_FLAGS) $(HEADER_FLAGS) -include "wtf/Platform.h" /dev/null | grep ' USE_CF ' | cut -d' ' -f3), 1)
72 PREPROCESSOR_DEFINES += USE_CF
73endif
74
75ifeq ($(shell $(CC) -std=gnu++1z -x c++ -E -P -dM $(SDK_FLAGS) $(TARGET_TRIPLE_FLAGS) $(FRAMEWORK_FLAGS) $(HEADER_FLAGS) -include "wtf/Platform.h" /dev/null | grep HAVE_OS_DARK_MODE_SUPPORT | cut -d' ' -f3), 1)
76 PREPROCESSOR_DEFINES += HAVE_OS_DARK_MODE_SUPPORT
77else
78endif
79
80ifeq ($(PLATFORM_FEATURE_DEFINES),)
81ifeq ($(OS), Windows_NT)
82PLATFORM_FEATURE_DEFINES = $(WEBKIT_LIBRARIES)/tools/vsprops/FeatureDefines.props
83else
84PLATFORM_FEATURE_DEFINES = Configurations/FeatureDefines.xcconfig
85endif
86endif
87
88# --------
89
90.PHONY : all
91all : \
92 udis86_itab.h \
93 InjectedScriptSource.h \
94 JSCBuiltins.h \
95 Lexer.lut.h \
96 KeywordLookup.h \
97 RegExpJitTables.h \
98 UnicodePatternTables.h \
99 yarr/YarrCanonicalizeUnicode.cpp \
100 WasmOps.h \
101 WasmB3IRGeneratorInlines.h \
102#
103
104# JavaScript builtins.
105
106BUILTINS_GENERATOR_SCRIPTS = \
107 $(JavaScriptCore_SCRIPTS_DIR)/wkbuiltins/__init__.py \
108 $(JavaScriptCore_SCRIPTS_DIR)/wkbuiltins/wkbuiltins.py \
109 $(JavaScriptCore_SCRIPTS_DIR)/wkbuiltins/builtins_generator.py \
110 $(JavaScriptCore_SCRIPTS_DIR)/wkbuiltins/builtins_model.py \
111 $(JavaScriptCore_SCRIPTS_DIR)/wkbuiltins/builtins_templates.py \
112 $(JavaScriptCore_SCRIPTS_DIR)/wkbuiltins/builtins_generate_combined_header.py \
113 $(JavaScriptCore_SCRIPTS_DIR)/wkbuiltins/builtins_generate_combined_implementation.py \
114 $(JavaScriptCore_SCRIPTS_DIR)/wkbuiltins/builtins_generate_separate_header.py \
115 $(JavaScriptCore_SCRIPTS_DIR)/wkbuiltins/builtins_generate_separate_implementation.py \
116 ${JavaScriptCore_SCRIPTS_DIR}/wkbuiltins/builtins_generate_wrapper_header.py \
117 ${JavaScriptCore_SCRIPTS_DIR}/wkbuiltins/builtins_generate_wrapper_implementation.py \
118 ${JavaScriptCore_SCRIPTS_DIR}/wkbuiltins/builtins_generate_internals_wrapper_header.py \
119 ${JavaScriptCore_SCRIPTS_DIR}/wkbuiltins/builtins_generate_internals_wrapper_implementation.py \
120 $(JavaScriptCore_SCRIPTS_DIR)/generate-js-builtins.py \
121 $(JavaScriptCore_SCRIPTS_DIR)/lazywriter.py \
122#
123
124JavaScriptCore_BUILTINS_SOURCES = \
125 $(JavaScriptCore)/builtins/AsyncFromSyncIteratorPrototype.js \
126 $(JavaScriptCore)/builtins/ArrayConstructor.js \
127 $(JavaScriptCore)/builtins/ArrayIteratorPrototype.js \
128 $(JavaScriptCore)/builtins/ArrayPrototype.js \
129 $(JavaScriptCore)/builtins/AsyncIteratorPrototype.js \
130 $(JavaScriptCore)/builtins/AsyncFunctionPrototype.js \
131 $(JavaScriptCore)/builtins/AsyncGeneratorPrototype.js \
132 $(JavaScriptCore)/builtins/DatePrototype.js \
133 $(JavaScriptCore)/builtins/FunctionPrototype.js \
134 $(JavaScriptCore)/builtins/GeneratorPrototype.js \
135 $(JavaScriptCore)/builtins/GlobalObject.js \
136 $(JavaScriptCore)/builtins/GlobalOperations.js \
137 $(JavaScriptCore)/builtins/InspectorInstrumentationObject.js \
138 $(JavaScriptCore)/builtins/InternalPromiseConstructor.js \
139 $(JavaScriptCore)/builtins/IteratorHelpers.js \
140 $(JavaScriptCore)/builtins/IteratorPrototype.js \
141 $(JavaScriptCore)/builtins/MapIteratorPrototype.js \
142 $(JavaScriptCore)/builtins/MapPrototype.js \
143 $(JavaScriptCore)/builtins/ModuleLoader.js \
144 $(JavaScriptCore)/builtins/NumberConstructor.js \
145 $(JavaScriptCore)/builtins/ObjectConstructor.js \
146 $(JavaScriptCore)/builtins/PromiseConstructor.js \
147 $(JavaScriptCore)/builtins/PromiseOperations.js \
148 $(JavaScriptCore)/builtins/PromisePrototype.js \
149 $(JavaScriptCore)/builtins/ReflectObject.js \
150 $(JavaScriptCore)/builtins/RegExpPrototype.js \
151 ${JavaScriptCore}/builtins/RegExpStringIteratorPrototype.js \
152 $(JavaScriptCore)/builtins/SetIteratorPrototype.js \
153 $(JavaScriptCore)/builtins/SetPrototype.js \
154 $(JavaScriptCore)/builtins/StringConstructor.js \
155 $(JavaScriptCore)/builtins/StringIteratorPrototype.js \
156 $(JavaScriptCore)/builtins/StringPrototype.js \
157 $(JavaScriptCore)/builtins/TypedArrayConstructor.js \
158 $(JavaScriptCore)/builtins/TypedArrayPrototype.js \
159 $(JavaScriptCore)/builtins/WebAssembly.js \
160#
161
162# The combined output file depends on the contents of builtins and generator scripts, so
163# adding, modifying, or removing builtins or scripts will trigger regeneration of files.
164
165JavaScriptCore_BUILTINS_DEPENDENCIES_LIST : $(JavaScriptCore_SCRIPTS_DIR)/UpdateContents.py DerivedSources.make
166 $(PYTHON) $(JavaScriptCore_SCRIPTS_DIR)/UpdateContents.py '$(JavaScriptCore_BUILTINS_SOURCES) $(BUILTINS_GENERATOR_SCRIPTS)' $@
167
168JSCBuiltins.h: $(BUILTINS_GENERATOR_SCRIPTS) $(JavaScriptCore_BUILTINS_SOURCES) JavaScriptCore_BUILTINS_DEPENDENCIES_LIST
169 $(PYTHON) $(JavaScriptCore_SCRIPTS_DIR)/generate-js-builtins.py --combined --output-directory . --framework JavaScriptCore $(JavaScriptCore_BUILTINS_SOURCES)
170
171# Perfect hash lookup tables for JavaScript classes.
172
173OBJECT_LUT_HEADERS = \
174 AsyncFromSyncIteratorPrototype.lut.h \
175 ArrayConstructor.lut.h \
176 AsyncGeneratorPrototype.lut.h \
177 BigIntConstructor.lut.h \
178 BigIntPrototype.lut.h \
179 BooleanPrototype.lut.h \
180 DateConstructor.lut.h \
181 DatePrototype.lut.h \
182 ErrorPrototype.lut.h \
183 GeneratorPrototype.lut.h \
184 InspectorInstrumentationObject.lut.h \
185 IntlCollatorConstructor.lut.h \
186 IntlCollatorPrototype.lut.h \
187 IntlDateTimeFormatConstructor.lut.h \
188 IntlDateTimeFormatPrototype.lut.h \
189 IntlLocalePrototype.lut.h \
190 IntlNumberFormatConstructor.lut.h \
191 IntlNumberFormatPrototype.lut.h \
192 IntlObject.lut.h \
193 IntlPluralRulesConstructor.lut.h \
194 IntlPluralRulesPrototype.lut.h \
195 IntlRelativeTimeFormatConstructor.lut.h \
196 IntlRelativeTimeFormatPrototype.lut.h \
197 JSDataViewPrototype.lut.h \
198 JSGlobalObject.lut.h \
199 JSInternalPromiseConstructor.lut.h \
200 JSModuleLoader.lut.h \
201 JSONObject.lut.h \
202 JSPromiseConstructor.lut.h \
203 JSPromisePrototype.lut.h \
204 JSWebAssembly.lut.h \
205 MapPrototype.lut.h \
206 NumberConstructor.lut.h \
207 NumberPrototype.lut.h \
208 ObjectConstructor.lut.h \
209 ReflectObject.lut.h \
210 RegExpConstructor.lut.h \
211 SetPrototype.lut.h \
212 StringConstructor.lut.h \
213 StringPrototype.lut.h \
214 SymbolConstructor.lut.h \
215 SymbolPrototype.lut.h \
216 WebAssemblyCompileErrorConstructor.lut.h \
217 WebAssemblyCompileErrorPrototype.lut.h \
218 WebAssemblyGlobalConstructor.lut.h \
219 WebAssemblyGlobalPrototype.lut.h \
220 WebAssemblyInstanceConstructor.lut.h \
221 WebAssemblyInstancePrototype.lut.h \
222 WebAssemblyLinkErrorConstructor.lut.h \
223 WebAssemblyLinkErrorPrototype.lut.h \
224 WebAssemblyMemoryConstructor.lut.h \
225 WebAssemblyMemoryPrototype.lut.h \
226 WebAssemblyModuleConstructor.lut.h \
227 WebAssemblyModulePrototype.lut.h \
228 WebAssemblyRuntimeErrorConstructor.lut.h \
229 WebAssemblyRuntimeErrorPrototype.lut.h \
230 WebAssemblyTableConstructor.lut.h \
231 WebAssemblyTablePrototype.lut.h \
232#
233
234$(OBJECT_LUT_HEADERS): %.lut.h : %.cpp $(JavaScriptCore)/create_hash_table
235 $(PERL) $(JavaScriptCore)/create_hash_table $< > $@
236
237Lexer.lut.h: Keywords.table $(JavaScriptCore)/create_hash_table
238 $(PERL) $(JavaScriptCore)/create_hash_table $< > $@
239
240# character tables for Yarr
241
242RegExpJitTables.h: yarr/create_regex_tables
243 $(PYTHON) $^ > $@
244
245KeywordLookup.h: KeywordLookupGenerator.py Keywords.table
246 $(PYTHON) $^ > $@
247
248# udis86 instruction tables
249
250udis86_itab.h: $(JavaScriptCore)/disassembler/udis86/ud_itab.py $(JavaScriptCore)/disassembler/udis86/optable.xml
251 $(PYTHON) $(JavaScriptCore)/disassembler/udis86/ud_itab.py $(JavaScriptCore)/disassembler/udis86/optable.xml .
252
253# Bytecode files
254
255BYTECODE_FILES = \
256 Bytecodes.h \
257 BytecodeIndices.h \
258 BytecodeStructs.h \
259 InitBytecodes.asm \
260 WasmLLIntGeneratorInlines.h \
261 InitWasm.asm \
262 BytecodeDumperGenerated.cpp \
263#
264BYTECODE_FILES_PATTERNS = $(subst .,%,$(BYTECODE_FILES))
265
266all : $(BYTECODE_FILES)
267
268$(BYTECODE_FILES_PATTERNS): $(wildcard $(JavaScriptCore)/generator/*.rb) $(JavaScriptCore)/bytecode/BytecodeList.rb $(JavaScriptCore)/wasm/wasm.json
269 $(RUBY) $(JavaScriptCore)/generator/main.rb $(JavaScriptCore)/bytecode/BytecodeList.rb \
270 --bytecode_structs_h BytecodeStructs.h \
271 --init_bytecodes_asm InitBytecodes.asm \
272 --bytecodes_h Bytecodes.h \
273 --bytecode_indices_h BytecodeIndices.h \
274 --wasm_json $(JavaScriptCore)/wasm/wasm.json \
275 --wasm_llint_generator_h WasmLLIntGeneratorInlines.h \
276 --init_wasm_llint InitWasm.asm \
277 --bytecode_dumper BytecodeDumperGenerated.cpp \
278
279# Inspector interfaces
280
281INSPECTOR_DOMAINS := \
282 $(JavaScriptCore)/inspector/protocol/Animation.json \
283 $(JavaScriptCore)/inspector/protocol/ApplicationCache.json \
284 $(JavaScriptCore)/inspector/protocol/Audit.json \
285 $(JavaScriptCore)/inspector/protocol/Browser.json \
286 $(JavaScriptCore)/inspector/protocol/CPUProfiler.json \
287 $(JavaScriptCore)/inspector/protocol/CSS.json \
288 $(JavaScriptCore)/inspector/protocol/Canvas.json \
289 $(JavaScriptCore)/inspector/protocol/Console.json \
290 $(JavaScriptCore)/inspector/protocol/DOM.json \
291 $(JavaScriptCore)/inspector/protocol/DOMDebugger.json \
292 $(JavaScriptCore)/inspector/protocol/DOMStorage.json \
293 $(JavaScriptCore)/inspector/protocol/Database.json \
294 $(JavaScriptCore)/inspector/protocol/Debugger.json \
295 $(JavaScriptCore)/inspector/protocol/GenericTypes.json \
296 $(JavaScriptCore)/inspector/protocol/Heap.json \
297 $(JavaScriptCore)/inspector/protocol/IndexedDB.json \
298 $(JavaScriptCore)/inspector/protocol/Inspector.json \
299 $(JavaScriptCore)/inspector/protocol/LayerTree.json \
300 $(JavaScriptCore)/inspector/protocol/Memory.json \
301 $(JavaScriptCore)/inspector/protocol/Network.json \
302 $(JavaScriptCore)/inspector/protocol/Page.json \
303 $(JavaScriptCore)/inspector/protocol/Recording.json \
304 $(JavaScriptCore)/inspector/protocol/Runtime.json \
305 $(JavaScriptCore)/inspector/protocol/ScriptProfiler.json \
306 $(JavaScriptCore)/inspector/protocol/Security.json \
307 $(JavaScriptCore)/inspector/protocol/ServiceWorker.json \
308 $(JavaScriptCore)/inspector/protocol/Target.json \
309 $(JavaScriptCore)/inspector/protocol/Timeline.json \
310 $(JavaScriptCore)/inspector/protocol/Worker.json \
311#
312
313INSPECTOR_GENERATOR_SCRIPTS = \
314 $(JavaScriptCore)/inspector/scripts/codegen/__init__.py \
315 $(JavaScriptCore)/inspector/scripts/codegen/cpp_generator_templates.py \
316 $(JavaScriptCore)/inspector/scripts/codegen/cpp_generator.py \
317 $(JavaScriptCore)/inspector/scripts/codegen/generate_cpp_backend_dispatcher_header.py \
318 $(JavaScriptCore)/inspector/scripts/codegen/generate_cpp_backend_dispatcher_implementation.py \
319 $(JavaScriptCore)/inspector/scripts/codegen/generate_cpp_frontend_dispatcher_header.py \
320 $(JavaScriptCore)/inspector/scripts/codegen/generate_cpp_frontend_dispatcher_implementation.py \
321 $(JavaScriptCore)/inspector/scripts/codegen/generate_cpp_protocol_types_header.py \
322 $(JavaScriptCore)/inspector/scripts/codegen/generate_cpp_protocol_types_implementation.py \
323 $(JavaScriptCore)/inspector/scripts/codegen/generate_js_backend_commands.py \
324 $(JavaScriptCore)/inspector/scripts/codegen/generator_templates.py \
325 $(JavaScriptCore)/inspector/scripts/codegen/generator.py \
326 $(JavaScriptCore)/inspector/scripts/codegen/models.py \
327 $(JavaScriptCore)/inspector/scripts/codegen/preprocess.pl \
328 $(JavaScriptCore)/inspector/scripts/generate-inspector-protocol-bindings.py \
329 $(JavaScriptCore_SCRIPTS_DIR)/generate-combined-inspector-json.py \
330#
331
332# TODO: Is there some way to not hardcode this? Can we get it from
333# generate-inspector-protocol-bindings.py and ./CombinedDomains.json?
334INSPECTOR_DISPATCHER_FILES = \
335 inspector/InspectorAlternateBackendDispatchers.h \
336 inspector/InspectorBackendDispatchers.cpp \
337 inspector/InspectorBackendDispatchers.h \
338 inspector/InspectorFrontendDispatchers.cpp \
339 inspector/InspectorFrontendDispatchers.h \
340 inspector/InspectorProtocolObjects.cpp \
341 inspector/InspectorProtocolObjects.h \
342#
343INSPECTOR_DISPATCHER_FILES_PATTERNS = $(subst .,%,$(INSPECTOR_DISPATCHER_FILES))
344
345all : $(INSPECTOR_DISPATCHER_FILES) inspector/InspectorBackendCommands.js
346
347# The combined JSON file depends on the actual set of domains and their file contents, so that
348# adding, modifying, or removing domains will trigger regeneration of inspector files.
349
350.PHONY: force
351EnabledInspectorDomains : $(JavaScriptCore_SCRIPTS_DIR)/UpdateContents.py force
352 $(PYTHON) $(JavaScriptCore_SCRIPTS_DIR)/UpdateContents.py '$(INSPECTOR_DOMAINS)' $@
353
354CombinedDomains.json : $(JavaScriptCore_SCRIPTS_DIR)/generate-combined-inspector-json.py $(INSPECTOR_DOMAINS) EnabledInspectorDomains
355 $(PYTHON) $(JavaScriptCore_SCRIPTS_DIR)/generate-combined-inspector-json.py $(INSPECTOR_DOMAINS) > ./CombinedDomains.json
356
357# Inspector Backend Dispatchers, Frontend Dispatchers, Type Builders
358$(INSPECTOR_DISPATCHER_FILES_PATTERNS) : CombinedDomains.json $(INSPECTOR_GENERATOR_SCRIPTS)
359 $(PYTHON) $(JavaScriptCore)/inspector/scripts/generate-inspector-protocol-bindings.py --framework JavaScriptCore --outputDir inspector ./CombinedDomains.json
360
361inspector/InspectorBackendCommands.js : CombinedDomains.json $(INSPECTOR_GENERATOR_SCRIPTS) $(PLATFORM_FEATURE_DEFINES)
362 $(PYTHON) $(JavaScriptCore)/inspector/scripts/generate-inspector-protocol-bindings.py --framework WebInspectorUI --outputDir inspector ./CombinedDomains.json
363 @echo Pre-processing InspectorBackendCommands...
364 $(PERL) $(JavaScriptCore)/inspector/scripts/codegen/preprocess.pl --input inspector/InspectorBackendCommands.js.in --defines "$(PREPROCESSOR_DEFINES)" --output inspector/InspectorBackendCommands.js
365 $(DELETE) inspector/InspectorBackendCommands.js.in
366
367InjectedScriptSource.h : inspector/InjectedScriptSource.js $(JavaScriptCore_SCRIPTS_DIR)/jsmin.py $(JavaScriptCore_SCRIPTS_DIR)/xxd.pl
368 echo "//# sourceURL=__InjectedScript_InjectedScriptSource.js" > ./InjectedScriptSource.min.js
369 $(PYTHON) $(JavaScriptCore_SCRIPTS_DIR)/jsmin.py < $(JavaScriptCore)/inspector/InjectedScriptSource.js >> ./InjectedScriptSource.min.js
370 $(PERL) $(JavaScriptCore_SCRIPTS_DIR)/xxd.pl InjectedScriptSource_js ./InjectedScriptSource.min.js InjectedScriptSource.h
371 $(DELETE) InjectedScriptSource.min.js
372
373AIR_OPCODE_FILES = \
374 AirOpcode.h \
375 AirOpcodeUtils.h \
376 AirOpcodeGenerated.h \
377#
378AIR_OPCODE_FILES_PATTERNS = $(subst .,%,$(AIR_OPCODE_FILES))
379
380all : $(AIR_OPCODE_FILES)
381
382$(AIR_OPCODE_FILES_PATTERNS) : $(JavaScriptCore)/b3/air/opcode_generator.rb $(JavaScriptCore)/b3/air/AirOpcode.opcodes
383 $(RUBY) $^
384
385UnicodePatternTables.h: $(JavaScriptCore)/yarr/generateYarrUnicodePropertyTables.py $(JavaScriptCore)/yarr/hasher.py $(JavaScriptCore)/ucd/DerivedBinaryProperties.txt $(JavaScriptCore)/ucd/DerivedCoreProperties.txt $(JavaScriptCore)/ucd/DerivedNormalizationProps.txt $(JavaScriptCore)/ucd/PropList.txt $(JavaScriptCore)/ucd/PropertyAliases.txt $(JavaScriptCore)/ucd/PropertyValueAliases.txt $(JavaScriptCore)/ucd/ScriptExtensions.txt $(JavaScriptCore)/ucd/Scripts.txt $(JavaScriptCore)/ucd/UnicodeData.txt $(JavaScriptCore)/ucd/emoji-data.txt
386 $(PYTHON) $(JavaScriptCore)/yarr/generateYarrUnicodePropertyTables.py $(JavaScriptCore)/ucd ./UnicodePatternTables.h
387
388yarr/YarrCanonicalizeUnicode.cpp: $(JavaScriptCore)/yarr/generateYarrCanonicalizeUnicode $(JavaScriptCore)/ucd/CaseFolding.txt
389 $(PYTHON) $(JavaScriptCore)/yarr/generateYarrCanonicalizeUnicode $(JavaScriptCore)/ucd/CaseFolding.txt ./yarr/YarrCanonicalizeUnicode.cpp
390
391WasmOps.h: $(JavaScriptCore)/wasm/generateWasmOpsHeader.py $(JavaScriptCore)/wasm/generateWasm.py $(JavaScriptCore)/wasm/wasm.json
392 $(PYTHON) $(JavaScriptCore)/wasm/generateWasmOpsHeader.py $(JavaScriptCore)/wasm/wasm.json ./WasmOps.h
393
394WasmB3IRGeneratorInlines.h: $(JavaScriptCore)/wasm/generateWasmB3IRGeneratorInlinesHeader.py $(JavaScriptCore)/wasm/generateWasm.py $(JavaScriptCore)/wasm/wasm.json
395 $(PYTHON) $(JavaScriptCore)/wasm/generateWasmB3IRGeneratorInlinesHeader.py $(JavaScriptCore)/wasm/wasm.json ./WasmB3IRGeneratorInlines.h
396
397# Dynamically-defined targets are listed below. Static targets belong up top.
398
399all : \
400 $(OBJECT_LUT_HEADERS) \
401#
Note: See TracBrowser for help on using the repository browser.