Skip to content

Commit 0ac162d

Browse files
committed
Added windows support, renaming binaries in a better way
1 parent 7ed4f49 commit 0ac162d

File tree

2 files changed

+46
-18
lines changed

2 files changed

+46
-18
lines changed

cpg-language-typescript/build.gradle.kts

+35-12
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,25 @@ mavenPublishing {
3838
}
3939
}
4040

41-
val compileMacOSx8664 =
42-
tasks.register<RunDenoTask>("compileMacOSAmd64") {
41+
val compileWindowsX8664 =
42+
tasks.register<RunDenoTask>("compileWindowsX8664") {
43+
dependsOn(tasks.installDeno)
44+
command(
45+
"compile",
46+
"-E",
47+
"-R",
48+
"--target",
49+
"x86_64-pc-windows-msvc",
50+
"-o",
51+
"build/resources/main/typescript/parser-windows-x86_64",
52+
"src/main/typescript/src/parser.ts",
53+
)
54+
outputs.dir("build/resources/main/typescript")
55+
outputs.cacheIf { true }
56+
}
57+
58+
val compileMacOSX8664 =
59+
tasks.register<RunDenoTask>("compileMacOSX8664") {
4360
dependsOn(tasks.installDeno)
4461
command(
4562
"compile",
@@ -48,15 +65,15 @@ val compileMacOSx8664 =
4865
"--target",
4966
"x86_64-apple-darwin",
5067
"-o",
51-
"build/resources/main/typescript/parser-macos-amd64",
68+
"build/resources/main/typescript/parser-macos-x86_64",
5269
"src/main/typescript/src/parser.ts",
5370
)
5471
outputs.dir("build/resources/main/typescript")
5572
outputs.cacheIf { true }
5673
}
5774

58-
val compileMacOSArm64 =
59-
tasks.register<RunDenoTask>("compileMacOSArm64") {
75+
val compileMacOSAarch64 =
76+
tasks.register<RunDenoTask>("compileMacOSAarch64") {
6077
dependsOn(tasks.installDeno)
6178
command(
6279
"compile",
@@ -65,15 +82,15 @@ val compileMacOSArm64 =
6582
"--target",
6683
"aarch64-apple-darwin",
6784
"-o",
68-
"build/resources/main/typescript/parser-macos-arm64",
85+
"build/resources/main/typescript/parser-macos-aarch64",
6986
"src/main/typescript/src/parser.ts",
7087
)
7188
outputs.dir("build/resources/main/typescript")
7289
outputs.cacheIf { true }
7390
}
7491

7592
val compileLinuxX8664 =
76-
tasks.register<RunDenoTask>("compileLinuxAmd64") {
93+
tasks.register<RunDenoTask>("compileLinuxX8664") {
7794
dependsOn(tasks.installDeno)
7895
command(
7996
"compile",
@@ -82,15 +99,15 @@ val compileLinuxX8664 =
8299
"--target",
83100
"x86_64-unknown-linux-gnu",
84101
"-o",
85-
"build/resources/main/typescript/parser-linux-amd64",
102+
"build/resources/main/typescript/parser-linux-x86_64",
86103
"src/main/typescript/src/parser.ts",
87104
)
88105
outputs.dir("build/resources/main/typescript")
89106
outputs.cacheIf { true }
90107
}
91108

92-
val compileLinuxArm64 =
93-
tasks.register<RunDenoTask>("compileLinuxArm64") {
109+
val compileLinuxAarch64 =
110+
tasks.register<RunDenoTask>("compileLinuxAarch64") {
94111
dependsOn(tasks.installDeno)
95112
command(
96113
"compile",
@@ -99,13 +116,19 @@ val compileLinuxArm64 =
99116
"--target",
100117
"aarch64-unknown-linux-gnu",
101118
"-o",
102-
"build/resources/main/typescript/parser-linux-arm64",
119+
"build/resources/main/typescript/parser-linux-aarch64",
103120
"src/main/typescript/src/parser.ts",
104121
)
105122
outputs.dir("build/resources/main/typescript")
106123
outputs.cacheIf { true }
107124
}
108125

109126
tasks.processResources {
110-
dependsOn(compileMacOSx8664, compileMacOSArm64, compileLinuxX8664, compileLinuxArm64)
127+
dependsOn(
128+
compileWindowsX8664,
129+
compileMacOSX8664,
130+
compileMacOSAarch64,
131+
compileLinuxX8664,
132+
compileLinuxAarch64,
133+
)
111134
}

cpg-language-typescript/src/main/kotlin/de/fraunhofer/aisec/cpg/frontends/typescript/TypeScriptLanguageFrontend.kt

+11-6
Original file line numberDiff line numberDiff line change
@@ -74,13 +74,18 @@ class TypeScriptLanguageFrontend(
7474
private val parserFile: File = createTempFile("parser", "")
7575

7676
init {
77-
val arch =
78-
System.getProperty("os.arch").replace("aarch64", "arm64").replace("x86_64", "amd64")
77+
val arch = System.getProperty("os.arch")
7978
val os: String =
80-
if (System.getProperty("os.name").startsWith("Mac")) {
81-
"macos"
82-
} else {
83-
"linux"
79+
when {
80+
System.getProperty("os.name").startsWith("Mac") -> {
81+
"macos"
82+
}
83+
System.getProperty("os.name").startsWith("Linux") -> {
84+
"linux"
85+
}
86+
else -> {
87+
"windows"
88+
}
8489
}
8590

8691
val link = this::class.java.getResourceAsStream("/typescript/parser-$os-$arch")

0 commit comments

Comments
 (0)