mirror of https://github.com/aminya/setup-cpp
feat: add support for flawfinder
This commit is contained in:
parent
aae4991f09
commit
19a213deb1
|
@ -15,8 +15,8 @@ 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:
|
`setup-cpp` is **modular** and you can choose to install any of these tools:
|
||||||
|
|
||||||
| category | tools |
|
| category | tools |
|
||||||
| --------------------- | ------------------------------------------------------------------------------------ |
|
| --------------------- | ------------------------------------------------------------------------------------------------ |
|
||||||
| compiler and analyzer | llvm, gcc, msvc, apple-clang, vcvarsall, cppcheck, clang-tidy, clang-format, cpplint |
|
| 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 |
|
| build system | cmake, ninja, meson, make, task, bazel, cmakelang, cmake-format, cmake-lint |
|
||||||
| package manager | vcpkg, conan, choco, brew, nala |
|
| package manager | vcpkg, conan, choco, brew, nala |
|
||||||
| cache | ccache, sccache |
|
| cache | ccache, sccache |
|
||||||
|
|
|
@ -58,6 +58,9 @@ inputs:
|
||||||
cpplint:
|
cpplint:
|
||||||
description: "Wether to install cpplint (true/false) or the specific version to install."
|
description: "Wether to install cpplint (true/false) or the specific version to install."
|
||||||
required: false
|
required: false
|
||||||
|
flawfinder:
|
||||||
|
description: "Wether to install flawfinder (true/false) or the specific version to install."
|
||||||
|
required: false
|
||||||
clang-tidy:
|
clang-tidy:
|
||||||
description: "Wether to install clang-tidy (true/false) or the specific version to install."
|
description: "Wether to install clang-tidy (true/false) or the specific version to install."
|
||||||
required: false
|
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,7 @@ All the available tools:
|
||||||
console.table(
|
console.table(
|
||||||
{
|
{
|
||||||
"compiler and analyzer": {
|
"compiler and analyzer": {
|
||||||
tools: "--llvm, --gcc, --msvc, --apple-clang, --vcvarsall, --cppcheck, --clang-tidy, --clang-format, --cpplint",
|
tools: "--llvm, --gcc, --msvc, --apple-clang, --vcvarsall, --cppcheck, --clang-tidy, --clang-format, --cpplint, --flawfinder",
|
||||||
},
|
},
|
||||||
"build system": {
|
"build system": {
|
||||||
tools: "--cmake, --ninja, --meson, --make, --task, --bazel, --cmakelang, --cmake-lint, --cmake-format",
|
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 { setupFlawfinder } from "../flawfinder.js"
|
||||||
|
|
||||||
|
jest.setTimeout(300000)
|
||||||
|
describe("setup-flawfinder", () => {
|
||||||
|
it("should setup flawfinder", async () => {
|
||||||
|
const installInfo = await setupFlawfinder(getVersion("flawfinder", "true", await ubuntuVersion()), "", process.arch)
|
||||||
|
await testBin("flawfinder", ["--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 setupFlawfinder(version: string | undefined, _setupDir: string, _arch: string) {
|
||||||
|
return setupPipPack("flawfinder", version)
|
||||||
|
}
|
|
@ -27,6 +27,7 @@ import { setupTask } from "./task/task.js"
|
||||||
import { setupVcpkg } from "./vcpkg/vcpkg.js"
|
import { setupVcpkg } from "./vcpkg/vcpkg.js"
|
||||||
import { setupVCVarsall } from "./vcvarsall/vcvarsall.js"
|
import { setupVCVarsall } from "./vcvarsall/vcvarsall.js"
|
||||||
import { setupCpplint } from "./cpplint/cpplint.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 llvmSetups = { llvm: setupLLVM, clang: setupLLVM, "clang++": setupLLVM } as const
|
||||||
export const gccSetups = { gcc: setupGcc, "g++": setupGcc } as const
|
export const gccSetups = { gcc: setupGcc, "g++": setupGcc } as const
|
||||||
|
@ -83,6 +84,7 @@ export const setups = {
|
||||||
graphviz: setupGraphviz,
|
graphviz: setupGraphviz,
|
||||||
cppcheck: setupCppcheck,
|
cppcheck: setupCppcheck,
|
||||||
cpplint: setupCpplint,
|
cpplint: setupCpplint,
|
||||||
|
flawfinder: setupFlawfinder,
|
||||||
"clang-tidy": setupClangTools,
|
"clang-tidy": setupClangTools,
|
||||||
clangtidy: setupClangTools,
|
clangtidy: setupClangTools,
|
||||||
"clang-format": setupClangFormat,
|
"clang-format": setupClangFormat,
|
||||||
|
|
Loading…
Reference in New Issue