Files
TinyORM/tools/qa-lint-tinyorm-qt6.ps1.example
T
silverqx 773f5459ef tools changed DriversType to Loadable by default
- also updated HelpMessage
2024-04-07 18:12:27 +02:00

67 lines
2.4 KiB
PowerShell

#!/usr/bin/env pwsh
Param(
[Parameter(Position = 0,
HelpMessage = 'Specifies the cpp files to be processed, is joined with the | character ' +
'and used in the parenthesized regex eg. (file1|file2).')]
[ValidateNotNullOrEmpty()]
[string[]] $Files,
[Parameter(HelpMessage = 'Specifies subfolders to lint. The pattern value is used ' +
'in regular expression, eg. (drivers|examples|src|tests|tom).')]
[AllowEmptyString()]
[string] $InSubFoldersPattern = '(?:drivers|examples|src|tests|tom)',
[Parameter(
HelpMessage = 'Specifies the files paths to be processed, is joined with by the | ' +
'character and used in the parenthesized regex eg. (folder1|folder2).')]
[ValidateNotNullOrEmpty()]
[string[]] $FilesPaths,
[Parameter(HelpMessage = 'Skip Clang Tidy analyzes.')]
[switch] $SkipClangTidy,
[Parameter(HelpMessage = 'Skip Clazy standalone analyzes.')]
[switch] $SkipClazy,
[Parameter(HelpMessage = 'Clean CMake build (remove everything inside the -BuildPath).')]
[switch] $CleanBuild,
[Parameter(HelpMessage = 'Specifies the CMake build type.')]
[ValidateSet('Debug', 'Release', 'RelWithDebInfo', 'MinSizeRel')]
[ValidateNotNullOrEmpty()]
[string] $BuildType = 'Debug',
[Parameter(
HelpMessage = 'Specifies the checks filter, when not specified, use clang-tidy default ' +
'(eg. -*,readability-magic-numbers to run only a specific check).')]
[ValidateNotNullOrEmpty()]
[string[]] $ClangTidyChecks,
[Parameter(HelpMessage = 'Specifies the number of tidy instances to be run in parallel.')]
[ValidateNotNull()]
[int] $Parallel,
[Parameter(HelpMessage = 'Build TinyORM database drivers that replaces QtSql module.')]
[switch] $BuildDrivers,
[Parameter(HelpMessage = 'Build TinyDrivers database driver (core/common code) ' +
'(default: Loadable).')]
[ValidateSet('Shared', 'Loadable', 'Static')]
[ValidateNotNullOrEmpty()]
[string] $DriversType = 'Loadable'
)
Set-StrictMode -Version 3.0
Clear-Host
$Script:TinyORMMainPath = $env:TINYORM_MAIN_DIR ?? '<your_path_here>'
Lint-TinyORM.ps1 `
-SourcePath "$Script:TinyORMMainPath\TinyORM" `
-BuildPath "$Script:TinyORMMainPath\TinyORM-builds-cmake\build-lint-qt6" `
-QtVersion 6 `
-Verbose:$VerbosePreference `
@PSBoundParameters