| #!/bin/bash |
| |
| # Generate a list of headers that aren't formatted yet |
| |
| if [ -z "${CLANG_FORMAT}" ]; then |
| CLANG_FORMAT=clang-format |
| fi |
| |
| rm libcxx/utils/data/ignore_format.txt |
| # This uses the same matches as the check-format CI step. |
| # |
| # Since it's hard to match empty extensions the following |
| # method is used, remove all files with an extension, then |
| # add the list of extensions that should be formatted. |
| for file in $(find libcxx/{benchmarks,include,src} -type f -not -name '*.*' -or \( \ |
| -name "*.h" -or -name "*.hpp" -or \ |
| -name "*.c" -or -name "*.cpp" -or \ |
| -name "*.inc" -or -name "*.ipp" \ |
| \) ); do |
| |
| ${CLANG_FORMAT} --Werror --dry-run ${file} >& /dev/null |
| if [ $? != 0 ]; then |
| echo ${file} >> libcxx/utils/data/ignore_format.txt |
| fi |
| done |
| |
| # Force sorting not to depend on the system's locale. |
| LC_ALL=C sort libcxx/utils/data/ignore_format.txt -d -o libcxx/utils/data/ignore_format.txt |