aboutsummaryrefslogtreecommitdiff
path: root/.pre-commit-config.yaml
diff options
context:
space:
mode:
Diffstat (limited to '.pre-commit-config.yaml')
-rw-r--r--.pre-commit-config.yaml92
1 files changed, 92 insertions, 0 deletions
diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
new file mode 100644
index 0000000000..108f84387c
--- /dev/null
+++ b/.pre-commit-config.yaml
@@ -0,0 +1,92 @@
+# Copyright (c) 2023 Arm Limited.
+#
+# SPDX-License-Identifier: MIT
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in all
+# copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+# SOFTWARE.
+fail_fast: false
+
+exclude: |
+ (?x)^(
+ data/.*|
+ include/.*|
+ src/CMakeLists.txt|
+ src/Bazel.build|
+ Android.bp|
+ src/core/NEON/kernels/convolution/.*|
+ src/core/NEON/kernels/arm_gemm/.*|
+ src/core/NEON/kernels/arm_conv/.*|
+ compute_kernel_writer/validation/.*
+ )$
+
+repos:
+ - repo: local
+ hooks:
+ - id: format-code
+ name: ACL Format Code Script
+ stages: [commit]
+ language: python
+ entry: python ./scripts/format_code.py --files=git-diff
+ pass_filenames: false
+ additional_dependencies: ['psutil==5.8.0', 'Jinja2==3.0.1']
+ - id: prepare-cmake-build-files
+ name: Prepare CMake build files
+ stages: [commit]
+ language: python
+ entry: python ./scripts/generate_build_files.py --cmake
+ pass_filenames: false
+ - id: prepare-bazel-build-files
+ name: Prepare Bazel build files
+ stages: [commit]
+ language: python
+ entry: python ./scripts/generate_build_files.py --bazel
+ pass_filenames: false
+ - id: fix-header-guards-ckw
+ name: Fix header guards in CKW
+ stages: [commit]
+ language: python
+ entry: python ./scripts/check_header_guards.py --extensions=h,hh,hpp,inl --comment_style=double_slash --prefix=CKW --include=compute_kernel_writer/ --add_extension --drop_outermost_subdir
+ pass_filenames: true
+ - id: fix-header-guards-acl
+ name: Fix header guards in ACL
+ stages: [commit]
+ language: python
+ entry: python ./scripts/check_header_guards.py --extensions=h,hh,hpp,inl --comment_style=double_slash --prefix=ACL --exclude=compute_kernel_writer/,src/core/NEON/kernels/convolution/,src/core/NEON/kernels/arm_gemm/,src/core/NEON/kernels/arm_conv/,include/ --add_extension
+ pass_filenames: true
+ - repo: https://github.com/pre-commit/mirrors-clang-format
+ rev: v14.0.6
+ hooks:
+ - id: clang-format
+ files: .*\.(cpp|h|hpp|hh|cc|inl|c)$
+ exclude: |
+ (?x)^(
+ tests/.*
+ )$
+ - repo: https://github.com/pre-commit/pre-commit-hooks
+ rev: v4.4.0
+ hooks:
+ - id: end-of-file-fixer
+ stages: [commit]
+ - id: trailing-whitespace
+ stages: [commit]
+ - id: mixed-line-ending
+ args: ['--fix=lf']
+ description: Forces to replace line ending by the UNIX 'lf' character.
+ - id: check-added-large-files
+ args: ['--maxkb=100']
+ stages: [commit]