@@ -7,7 +7,7 @@ import { arm64, armv7, powerpc64le, sparc64, sparcv9, x86, x86_64 } from "../uti
7
7
import { hasDnf } from "../utils/env/hasDnf.js"
8
8
import { isUbuntu } from "../utils/env/isUbuntu.js"
9
9
import { ubuntuVersion } from "../utils/env/ubuntu_version.js"
10
- import { extractExe , extractTarByExe } from "../utils/setup/extract.js"
10
+ import { extractExe , extractTarByExe , getArchiveType , getExtractFunction } from "../utils/setup/extract.js"
11
11
import type { PackageInfo } from "../utils/setup/setupBin.js"
12
12
13
13
const dirname = typeof __dirname === "string" ? __dirname : path . dirname ( fileURLToPath ( import . meta. url ) )
@@ -26,7 +26,7 @@ export async function getLLVMPackageInfo(
26
26
binRelativeDir : "bin" ,
27
27
binFileName : addExeExt ( "clang" ) ,
28
28
extractFunction : platform === "win32"
29
- ? extractExe
29
+ ? getExtractFunction ( getArchiveType ( url ) )
30
30
: ( file : string , dest : string ) => {
31
31
return extractTarByExe ( file , dest , 1 )
32
32
} ,
@@ -83,6 +83,7 @@ async function getAssetKeywords(platform: string, arch: string) {
83
83
84
84
switch ( platform ) {
85
85
case "win32" : {
86
+ optionalKeywords . push ( ".exe" )
86
87
const osKeywordsChoice : string [ ] = [ "windows" , "Windows" ]
87
88
if ( x86_64 . includes ( arch ) ) {
88
89
osKeywordsChoice . push ( "win64" , "win64" , "win64" )
0 commit comments