File indexing completed on 2024-12-01 04:29:47
0001 #!/bin/bash 0002 0003 # SPDX-License-Identifier: BSD-2-Clause 0004 # SPDX-FileCopyrightText: Nicolas Carion <french.ebook.lover@gmail.com> 0005 0006 if [ -f compile_commands.json ]; then 0007 echo "Using the existing compilation db" 0008 else 0009 echo "Generating the compile db" 0010 cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON . 0011 fi 0012 0013 echo "Retrieving the list of files to process..." 0014 git ls-files > file_list 0015 touch to_process 0016 touch headers 0017 0018 echo "Cleaning the list of files to process..." 0019 for file in `cat file_list`; 0020 do 0021 if grep -Fq "${file}" compile_commands.json 0022 then 0023 echo $file >> to_process 0024 fi 0025 if echo $file | grep -q "\.[ih][p]*$" 0026 then 0027 echo $file >> headers 0028 fi 0029 done; 0030 0031 echo "Formatting source files" 0032 parallel -j 8 clang-format -i -style=file {} :::: to_process 0033 echo "Formatting header files" 0034 parallel -j 8 clang-format -i -style=file {} :::: headers 0035 0036 echo "Linting" 0037 parallel -j 8 clang-tidy -fix -config="" {} :::: to_process 0038 0039 echo "Reformatting source files" 0040 parallel -j 8 clang-format -i -style=file {} :::: to_process 0041 echo "Reformatting header files" 0042 parallel -j 8 clang-format -i -style=file {} :::: headers 0043 0044 rm file_list 0045 rm to_process 0046 rm headers