Commit Graph

151 Commits

Author SHA1 Message Date
Amin Yahyaabadi e05c1f4361
fix: update llvm to 17.0.6 2024-01-22 02:27:21 -08:00
Kefu Chai 3d4cc40549 fix: use higher priority when installing llvm alternatives
before this change, gcc and g++ are installed using `updateAptAlternatives()`
with the same priority of 40 when they are installed along with
ld and libstdc++ as the dependencies of clang and llvm. but both
gcc and clang are installed using the same priority of 40 on ubuntu,
and the same applies to g++ and clang++. this renders it impossible
to use the default compilers of cc and cxx when clang/llvm is installed
using setup-cpp on an ubuntu host, as gcc is always prefered over
clang by the update-alternatives, as their priorities are identical.

in this change, the "priority" parameter is added to the setupGcc(),
so that we can specify a different priority when installing llvm.
strictly speaking, this is not necessary. as we can just use a higher
priority when calling updateAptAlternatives() in llvm/llvm.ts. but by
making it more explicit, we can ensure that we always prefer llvm over
gcc when installing llvm.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
2024-01-22 14:25:47 +08:00
Amin Yahyaabadi 7987f9195b fix: use llvm 17.0.4 on Windows 2023-11-14 11:38:59 -08:00
Amin Yahyaabadi b532e97a17 fix: update llvm to 17.0.5 2023-11-14 11:15:00 -08:00
Iain Chesworth 0af408ae6a Add support for LLVM 17 on Windows, Linux. 2023-10-21 23:18:02 +11:00
Amin Yahyaabadi 17286fce04 fix: specify the major version for clang-format 2023-09-11 09:09:40 -07:00
Amin Yahyaabadi d3a4b94794 fix: choose clang-format before other patches 2023-09-11 00:28:17 -07:00
Amin Yahyaabadi 734bc14554 feat: support only installing clang-format on Ubuntu 2023-09-10 23:58:16 -07:00
Amin Yahyaabadi 4c53a2d376 fix: ensure constant initialization order 2023-08-21 21:41:17 -07:00
Amin Yahyaabadi 52047bd03a fix: add timeout for the LLVM installer call 2023-08-21 20:21:34 -07:00
Amin Yahyaabadi 99a4fe7118 fix: make llvm installer less verbose for non-debug 2023-08-21 19:29:23 -07:00
Amin Yahyaabadi bc25e4e3b4 perf: memoize setupLLVMWithoutActivation 2023-07-24 15:48:38 -07:00
Amin Yahyaabadi 10c725c53f test: remove some long-running duplicate tests for kcov/llvm 2023-07-24 15:48:23 -07:00
Amin Yahyaabadi f0d23edbf1 fix: update dependencies 2023-07-24 13:20:13 -07:00
Amin Yahyaabadi 5f5040c0c8 fix: handle libc++ conflicting packages for LLVM 2023-07-17 22:51:54 -07:00
Amin Yahyaabadi 2e790802d0 fix: fix conflicts between clang apt packages 2023-07-17 14:21:12 -07:00
Amin Yahyaabadi dd2f1139ce fix: catch the errors of setupLLVMApt correctly 2023-07-17 13:55:49 -07:00
Amin Yahyaabadi 3206aaa7c3 fix: fix passing the version number to the llvm installer 2023-07-17 13:44:34 -07:00
Amin Yahyaabadi da1eb59304 fix: install clang-tidy and clang-format as well 2023-07-17 13:29:53 -07:00
Amin Yahyaabadi 60eecceb8a fix: add the bin directory to the path for llvm installer 2023-07-17 11:44:40 -07:00
Amin Yahyaabadi c3a7043921 fix: pass the llvm version to the installer 2023-07-17 11:21:11 -07:00
Amin Yahyaabadi e7304e1143 fix: install the packages needed for the llvm installer 2023-07-17 11:01:22 -07:00
Amin Yahyaabadi 71e227aa5f fix: fix the path for the ubuntu LLVM installer 2023-07-17 10:15:53 -07:00
Amin Yahyaabadi b195200069 feat: support llvm 16.0.6 2023-07-16 23:52:38 -07:00
Amin Yahyaabadi dd9ff769c8 fix: refactor LLVM installation 2023-07-16 02:48:34 -07:00
Amin Yahyaabadi 70a091c663 feat: support installing llvm via apt on Ubuntu 2023-07-15 21:46:28 -07:00
Amin Yahyaabadi f708497511 fix: memoize ubuntuVersion and use it everywhere 2023-06-28 16:06:31 -07:00
Amin Yahyaabadi 11b44434f5 fix: fix all the linting errors 2023-05-24 14:57:08 -07:00
Amin Yahyaabadi b4b0e08b92 feat: print the supported versions when throwing errors 2023-05-23 21:19:15 -07:00
Amin Yahyaabadi 5c2a3415c5 feat: support llvm 16.0.4 2023-05-23 21:12:52 -07:00
Amin Yahyaabadi 5959d53e9f fix: do not set CPATH when using LLVM 2023-05-23 21:00:02 -07:00
Amin Yahyaabadi 00c09d28e6 fix: update path-exists 2023-04-23 01:09:38 -07:00
Amin Yahyaabadi 7052a18b1c Merge branch 'master' into esm 2023-04-23 01:03:19 -07:00
Amin Yahyaabadi ea04bfe6af fix: replace npmcli/ci-detect with ci-info 2023-04-22 02:31:04 -07:00
Amin Yahyaabadi d713a6703d fix: update execa 2023-04-22 02:19:33 -07:00
Amin Yahyaabadi 8f35efa1fd feat: support LLVM 16 2023-04-21 14:19:59 -07:00
Amin Yahyaabadi 9976e18629 fix: use gcc 12 for arch linux 2023-04-21 11:20:18 -07:00
Amin Yahyaabadi 477360fbee fix: rename the executable to `setup-cpp.js`
BREAKING CHANGE the executable is now `setup-cpp.js`
2023-01-17 21:40:21 -08:00
Amin Yahyaabadi 0e9ce85be9 fix: add the missing macos/windows versions 2022-12-06 21:05:40 -08:00
Amin Yahyaabadi 79523d501b feat: default to llvm 15 2022-12-06 20:53:02 -08:00
Amin Yahyaabadi cd3be8a4d2 feat: support up to LLVM 15.0.6 2022-12-06 20:46:52 -08:00
Amin Yahyaabadi 5528c08f49 fix: parallelize apt update alternatives 2022-11-22 22:11:47 -08:00
Amin Yahyaabadi dac72316df feat: parallelize the apt package installation chunks 2022-11-22 21:33:06 -08:00
Amin Yahyaabadi eea16aa8c7 fix: down-grade path-exists to v4.0.0 due to node:fs usage 2022-11-22 20:59:40 -08:00
Amin Yahyaabadi ebd90dd38d perf: parallelized checking of the file existence 2022-11-22 20:51:18 -08:00
Amin Yahyaabadi 9be6087e95 fix: install libtinfo5 for llvm 10 and older 2022-11-20 23:41:41 -08:00
Amin Yahyaabadi 44b95bad75 fix: use the os version when choosing gcc for llvm 2022-11-20 17:04:52 -08:00
Amin Yahyaabadi a1958c0408 fix: remove deprecated setOutput 2022-11-08 16:30:09 -08:00
Amin Yahyaabadi 4e382d504c fix: refactor llvm code into separate modules 2022-11-08 16:15:24 -08:00
Amin Yahyaabadi bd7b54ade4 perf: install LLVM and GCC in parallel 2022-11-08 15:51:15 -08:00