Skip to content

Commit

Permalink
fix: support activation of old gcc
Browse files Browse the repository at this point in the history
  • Loading branch information
aminya committed Dec 7, 2021
1 parent fa01e81 commit 9d3670c
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 9 deletions.
2 changes: 1 addition & 1 deletion dist/setup_cpp.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion dist/setup_cpp.js.map

Large diffs are not rendered by default.

28 changes: 21 additions & 7 deletions src/gcc/gcc.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,20 +34,30 @@ export async function setupGcc(version: string, _setupDir: string, arch: string)
}
case "linux": {
if (arch === "x64") {
await setupAptPack("gcc", version, [
"'deb http://dk.archive.ubuntu.com/ubuntu/ xenial mai'",
"'deb http://dk.archive.ubuntu.com/ubuntu/ xenial universe'",
"ppa:ubuntu-toolchain-r/test",
])
binDir = (
await setupAptPack("g++", version, [
"ppa:ubuntu-toolchain-r/test",
"'deb http://dk.archive.ubuntu.com/ubuntu/ xenial mai'",
"'deb http://dk.archive.ubuntu.com/ubuntu/ xenial universe'",
"ppa:ubuntu-toolchain-r/test",
])
).binDir
} else {
info(`Install g++-multilib because gcc for ${arch} was requested`)
await setupAptPack("gcc-multilib", version, [
"'deb http://dk.archive.ubuntu.com/ubuntu/ xenial mai'",
"'deb http://dk.archive.ubuntu.com/ubuntu/ xenial universe'",
"ppa:ubuntu-toolchain-r/test",
])
binDir = (
await setupAptPack("g++-multilib", version, [
"ppa:ubuntu-toolchain-r/test",
"'deb http://dk.archive.ubuntu.com/ubuntu/ xenial mai'",
"'deb http://dk.archive.ubuntu.com/ubuntu/ xenial universe'",
"ppa:ubuntu-toolchain-r/test",
])
).binDir
}
Expand All @@ -58,9 +68,9 @@ export async function setupGcc(version: string, _setupDir: string, arch: string)
// case "none": {
// if (arch === "arm" || arch === "arm64") {
// return setupAptPack("gcc-arm-none-eabi", version, [
// "ppa:ubuntu-toolchain-r/test",
// "'deb http://dk.archive.ubuntu.com/ubuntu/ xenial mai'",
// "'deb http://dk.archive.ubuntu.com/ubuntu/ xenial universe'",
// "ppa:ubuntu-toolchain-r/test",
// ])
// } else {
// throw new Error(`Unsupported platform for ${arch}`)
Expand All @@ -78,8 +88,6 @@ export async function setupGcc(version: string, _setupDir: string, arch: string)
}

async function activateGcc(version: string, binDir: string) {
const majorVersion = semverMajor(semverCoerce(version) ?? version)

// TODO
// const ld = process.env.LD_LIBRARY_PATH ?? ""
// const dyld = process.env.DYLD_LIBRARY_PATH ?? ""
Expand All @@ -93,8 +101,14 @@ async function activateGcc(version: string, binDir: string) {
exportVariable("CC", `${binDir}/gcc`)
exportVariable("CXX", `${binDir}/g++`)
} else {
exportVariable("CC", `${binDir}/gcc-${majorVersion}`)
exportVariable("CXX", `${binDir}/g++-${majorVersion}`)
const majorVersion = semverMajor(semverCoerce(version) ?? version)
if (majorVersion >= 5) {
exportVariable("CC", `${binDir}/gcc-${majorVersion}`)
exportVariable("CXX", `${binDir}/g++-${majorVersion}`)
} else {
exportVariable("CC", `${binDir}/gcc-${version}`)
exportVariable("CXX", `${binDir}/g++-${version}`)
}
}

await setupMacOSSDK()
Expand Down

0 comments on commit 9d3670c

Please sign in to comment.