mirror of https://github.com/aminya/setup-cpp
feat: add support for lizard
This commit is contained in:
parent
19a213deb1
commit
118cfec161
18
README.md
18
README.md
|
@ -14,15 +14,15 @@ Setting up a **cross-platform** environment for building and testing C++/C proje
|
|||
|
||||
`setup-cpp` is **modular** and you can choose to install any of these tools:
|
||||
|
||||
| category | tools |
|
||||
| --------------------- | ------------------------------------------------------------------------------------------------ |
|
||||
| compiler and analyzer | llvm, gcc, msvc, apple-clang, vcvarsall, cppcheck, clang-tidy, clang-format, cpplint, flawfinder |
|
||||
| build system | cmake, ninja, meson, make, task, bazel, cmakelang, cmake-format, cmake-lint |
|
||||
| package manager | vcpkg, conan, choco, brew, nala |
|
||||
| cache | ccache, sccache |
|
||||
| documentation | doxygen, graphviz |
|
||||
| coverage | gcovr, opencppcoverage, kcov |
|
||||
| other | python, powershell, sevenzip |
|
||||
| category | tools |
|
||||
| --------------------- | -------------------------------------------------------------------------------------------------------- |
|
||||
| compiler and analyzer | llvm, gcc, msvc, apple-clang, vcvarsall, cppcheck, clang-tidy, clang-format, cpplint, flawfinder, lizard |
|
||||
| build system | cmake, ninja, meson, make, task, bazel, cmakelang, cmake-format, cmake-lint |
|
||||
| package manager | vcpkg, conan, choco, brew, nala |
|
||||
| cache | ccache, sccache |
|
||||
| documentation | doxygen, graphviz |
|
||||
| coverage | gcovr, opencppcoverage, kcov |
|
||||
| other | python, powershell, sevenzip |
|
||||
|
||||
`setup-cpp` automatically handles the dependencies of the selected tool (e.g., `python` is required for `conan`).
|
||||
|
||||
|
|
|
@ -61,6 +61,9 @@ inputs:
|
|||
flawfinder:
|
||||
description: "Wether to install flawfinder (true/false) or the specific version to install."
|
||||
required: false
|
||||
lizard:
|
||||
description: "Wether to install lizard (true/false) or the specific version to install."
|
||||
required: false
|
||||
clang-tidy:
|
||||
description: "Wether to install clang-tidy (true/false) or the specific version to install."
|
||||
required: false
|
||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -33,7 +33,8 @@ All the available tools:
|
|||
console.table(
|
||||
{
|
||||
"compiler and analyzer": {
|
||||
tools: "--llvm, --gcc, --msvc, --apple-clang, --vcvarsall, --cppcheck, --clang-tidy, --clang-format, --cpplint, --flawfinder",
|
||||
tools:
|
||||
"--llvm, --gcc, --msvc, --apple-clang, --vcvarsall, --cppcheck, --clang-tidy, --clang-format, --cpplint, --flawfinder, --lizard",
|
||||
},
|
||||
"build system": {
|
||||
tools: "--cmake, --ninja, --meson, --make, --task, --bazel, --cmakelang, --cmake-lint, --cmake-format",
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
import { ubuntuVersion } from "../../utils/env/ubuntu_version.js"
|
||||
import { testBin } from "../../utils/tests/test-helpers.js"
|
||||
import { getVersion } from "../../versions/versions.js"
|
||||
import { setupLizard } from "../lizard.js"
|
||||
|
||||
jest.setTimeout(300000)
|
||||
describe("setup-lizard", () => {
|
||||
it("should setup lizard", async () => {
|
||||
const installInfo = await setupLizard(getVersion("lizard", "true", await ubuntuVersion()), "", process.arch)
|
||||
await testBin("lizard", ["--version"], installInfo.binDir)
|
||||
})
|
||||
})
|
|
@ -0,0 +1,6 @@
|
|||
import { setupPipPack } from "../utils/setup/setupPipPack.js"
|
||||
|
||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
||||
export function setupLizard(version: string | undefined, _setupDir: string, _arch: string) {
|
||||
return setupPipPack("lizard", version)
|
||||
}
|
|
@ -6,11 +6,14 @@ import { setupCmake } from "./cmake/cmake.js"
|
|||
import { setupCmakelang } from "./cmakelang/cmakelang.js"
|
||||
import { setupConan } from "./conan/conan.js"
|
||||
import { setupCppcheck } from "./cppcheck/cppcheck.js"
|
||||
import { setupCpplint } from "./cpplint/cpplint.js"
|
||||
import { setupDoxygen } from "./doxygen/doxygen.js"
|
||||
import { setupFlawfinder } from "./flawfinder/flawfinder.js"
|
||||
import { setupGcc, setupMingw } from "./gcc/gcc.js"
|
||||
import { setupGcovr } from "./gcovr/gcovr.js"
|
||||
import { setupGraphviz } from "./graphviz/graphviz.js"
|
||||
import { setupKcov } from "./kcov/kcov.js"
|
||||
import { setupLizard } from "./lizard/lizard.js"
|
||||
import { setupAppleClang } from "./llvm/apple-clang.js"
|
||||
import { setupClangFormat, setupClangTools, setupLLVM } from "./llvm/llvm.js"
|
||||
import { setupMake } from "./make/make.js"
|
||||
|
@ -26,8 +29,6 @@ import { setupSevenZip } from "./sevenzip/sevenzip.js"
|
|||
import { setupTask } from "./task/task.js"
|
||||
import { setupVcpkg } from "./vcpkg/vcpkg.js"
|
||||
import { setupVCVarsall } from "./vcvarsall/vcvarsall.js"
|
||||
import { setupCpplint } from "./cpplint/cpplint.js"
|
||||
import { setupFlawfinder } from "./flawfinder/flawfinder.js"
|
||||
|
||||
export const llvmSetups = { llvm: setupLLVM, clang: setupLLVM, "clang++": setupLLVM } as const
|
||||
export const gccSetups = { gcc: setupGcc, "g++": setupGcc } as const
|
||||
|
@ -85,6 +86,7 @@ export const setups = {
|
|||
cppcheck: setupCppcheck,
|
||||
cpplint: setupCpplint,
|
||||
flawfinder: setupFlawfinder,
|
||||
lizard: setupLizard,
|
||||
"clang-tidy": setupClangTools,
|
||||
clangtidy: setupClangTools,
|
||||
"clang-format": setupClangFormat,
|
||||
|
|
Loading…
Reference in New Issue