[Keyboard] rebuild info.json for ep tf_longeboye (#7560)
[jackhill/qmk/firmware.git] / util / rules_cleaner.sh
1 #!/bin/bash
2
3 # This script finds all rules.mk files in keyboards/ subdirectories,
4 # and deletes the build option filesize impacts from them.
5
6 # Print an error message with the word "ERROR" in red.
7 echo_error() {
8 echo -e "[\033[0;91mERROR\033[m]: $1"
9 }
10
11 # If we've been started from util/, we want to be in qmk_firmware/
12 [[ "$PWD" == *util ]] && cd ..
13
14 # The root qmk_firmware/ directory should have a subdirectory called quantum/
15 if [ ! -d "quantum" ]; then
16 echo_error "Could not detect the QMK firmware directory!"
17 echo_error "Are you sure you're in the right place?"
18 exit 1
19 fi
20
21 # Set the inplace editing parameter for sed.
22 # macOS/BSD sed expects a file extension immediately following -i.
23 set_sed_i() {
24 sed_i=(-i)
25
26 case $(uname -a) in
27 *Darwin*) sed_i=(-i "")
28 esac
29 }
30 set_sed_i
31
32 # Exclude keyamps/ directories
33 files=$(find keyboards -type f -name 'rules.mk' -not \( -path '*/keymaps*' -prune \))
34
35 # Edit rules.mk files
36 for file in $files; do
37 sed "${sed_i[@]}" -e "s/(+[0-9].*)$//g" "$file"
38 done
39
40 echo "Cleaned up rules.mk files."