@@ -21,6 +21,10 @@ const execa = require('execa');
2121const Installer = require ( '../installer' ) ;
2222const { platform, unzip } = require ( '../common' ) ;
2323
24+ function buildURL ( builder ) {
25+ return `https://build.webkit.org/api/v2/builders/${ builder } /builds?limit=1&order=-number&property=got_revision&complete=true` ;
26+ }
27+
2428class JavaScriptCoreInstaller extends Installer {
2529 constructor ( ...args ) {
2630 super ( ...args ) ;
@@ -44,13 +48,15 @@ class JavaScriptCoreInstaller extends Installer {
4448 . then ( ( r ) => r . text ( ) )
4549 . then ( ( n ) => n . trim ( ) . replace ( '.zip' , '' ) ) ;
4650 case 'win32-x64' : {
47- const body = await fetch ( 'https://build.webkit.org/api/v2/builders/27/builds?limit=1&order=-number&property=got_revision&complete=true' )
48- . then ( ( r ) => r . json ( ) ) ;
51+ const body = await fetch ( buildURL ( 27 ) ) . then ( ( r ) => r . json ( ) ) ;
4952 return body . builds [ 0 ] . properties . got_revision [ 0 ] ;
5053 }
5154 case 'darwin-x64' : {
52- const body = await fetch ( 'https://build.webkit.org/api/v2/builders/54/builds?limit=1&order=-number&property=got_revision&complete=true' )
53- . then ( ( r ) => r . json ( ) ) ;
55+ const body = await fetch ( buildURL ( 54 ) ) . then ( ( r ) => r . json ( ) ) ;
56+ return body . builds [ 0 ] . properties . got_revision [ 0 ] ;
57+ }
58+ case 'darwin-arm64' : {
59+ const body = await fetch ( buildURL ( 29 ) ) . then ( ( r ) => r . json ( ) ) ;
5460 return body . builds [ 0 ] . properties . got_revision [ 0 ] ;
5561 }
5662 default :
@@ -64,6 +70,8 @@ class JavaScriptCoreInstaller extends Installer {
6470 switch ( platform ) {
6571 case 'darwin-x64' :
6672 return `https://s3-us-west-2.amazonaws.com/minified-archives.webkit.org/mac-catalina-x86_64-release/${ version } .zip` ;
73+ case 'darwin-arm64' :
74+ return `https://s3-us-west-2.amazonaws.com/minified-archives.webkit.org/mac-bigsur-x86_64%20arm64-release/${ version } .zip` ;
6775 case 'linux-ia32' :
6876 return `https://webkitgtk.org/jsc-built-products/x86_32/release/${ version } .zip` ;
6977 case 'linux-x64' :
@@ -81,7 +89,8 @@ class JavaScriptCoreInstaller extends Installer {
8189
8290 async install ( ) {
8391 switch ( platform ) {
84- case 'darwin-x64' : {
92+ case 'darwin-x64' :
93+ case 'darwin-arm64' : {
8594 await this . registerAssets ( 'Release/JavaScriptCore.framework/**' ) ;
8695 const jsc = await this . registerAsset ( 'Release/jsc' ) ;
8796 const source = `DYLD_FRAMEWORK_PATH="${ this . installPath } /Release" DYLD_LIBRARY_PATH="${ this . installPath } /Release" "${ jsc } "` ;
@@ -137,6 +146,7 @@ JavaScriptCoreInstaller.config = {
137146 'linux-x64' ,
138147 'win32-x64' ,
139148 'darwin-x64' ,
149+ 'darwin-arm64' ,
140150 ] ,
141151} ;
142152
0 commit comments