c993b6059a
Also updates main CMakeLists.txt and CMakeLists.txt for unit tests, also adds additional build directories to .gitignore file
52 lines
1.1 KiB
Bash
Executable File
52 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -o errexit
|
|
set -o pipefail
|
|
|
|
if [ ${#} -eq 1 -a "${1}" = "VERBOSE" ]; then
|
|
VERBOSITY="-l debug"
|
|
else
|
|
VERBOSITY=""
|
|
fi
|
|
|
|
if [ "${CI}" ]; then
|
|
MODE="--check"
|
|
else
|
|
MODE="-i"
|
|
fi
|
|
|
|
# Runs the formatter in parallel on the code base.
|
|
# Return codes:
|
|
# - 1 there are files to be formatted
|
|
# - 0 everything looks fine
|
|
|
|
# Get CPU count
|
|
OS=$(uname)
|
|
NPROC=1
|
|
if [[ ${OS} = "Linux" ]] ; then
|
|
NPROC=$(nproc)
|
|
elif [[ ${OS} = "Darwin" ]] ; then
|
|
NPROC=$(sysctl -n hw.physicalcpu)
|
|
fi
|
|
|
|
# Discover clang-format
|
|
if ! type cmake-format 2> /dev/null ; then
|
|
echo "Required cmake-format not found"
|
|
exit 1
|
|
fi
|
|
|
|
find . -type d \( \
|
|
-path ./\*build -o \
|
|
-path ./deps/jansson -o \
|
|
-path ./plugins/decklink/\*/decklink-sdk -o \
|
|
-path ./plugins/enc-amf -o \
|
|
-path ./plugins/mac-syphon/syphon-framework -o \
|
|
-path ./plugins/obs-outputs/ftl-sdk -o \
|
|
-path ./plugins/obs-vst -o \
|
|
-path ./plugins/obs-browser -o \
|
|
-path ./plugins/win-dshow/libdshowcapture \
|
|
\) -prune -false -type f -o \
|
|
-name 'CMakeLists.txt' -or \
|
|
-name '*.cmake' \
|
|
| xargs -L10 -P ${NPROC} cmake-format ${MODE} ${VERBOSITY}
|