[webkit-changes] [WebKit/WebKit] 506d7f: build-jsc should have a --rosetta option

Keith Miller noreply at github.com
Fri Apr 26 15:00:01 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 506d7f9b1b39eea4d58b6ba9befeda94877e1d8d
      https://github.com/WebKit/WebKit/commit/506d7f9b1b39eea4d58b6ba9befeda94877e1d8d
  Author: Keith Miller <keith_miller at apple.com>
  Date:   2024-04-26 (Fri, 26 Apr 2024)

  Changed paths:
    M Source/JavaScriptCore/Scripts/process-entitlements.sh
    M Source/WTF/wtf/PlatformHave.h
    M Tools/Scripts/webkitperl/BuildSubproject.pm

  Log Message:
  -----------
  build-jsc should have a --rosetta option
https://bugs.webkit.org/show_bug.cgi?id=273338
rdar://127131119

Reviewed by Yusuke Suzuki.

Right now if you try to run an x86_64 build of JSC under rosetta it won't have JIT.
This is because Rosetta doesn't play nice with some of the security entitlements we
use. Additionally, for historical perfomance reasons we disabled JIT when in a translated
process. This patch adds a new option to build-jsc (--rosetta). The --rosetta option sets
a flag in `process-entitlements.sh` to stop adding the bad entitlements for `jsc` and
other JSC test binaries. The --rosetta option also sets `HAVE_CPU_TRANSLATION_CAPABILITY=0`
making JSC think it's actually running natively.

Also, pass --makeArgs as `GCC_PREPROCESSOR_ADDITONS` in `build-jsc` when building with xcodebuild.
Lastly, do a little code cleanup in buildUpToProject as well.

* Source/JavaScriptCore/Scripts/process-entitlements.sh:
* Source/WTF/wtf/PlatformHave.h:
* Tools/Scripts/webkitperl/BuildSubproject.pm:
(buildUpToProject):

Canonical link: https://commits.webkit.org/278059@main



To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications


More information about the webkit-changes mailing list