53 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/bash
 | 
						|
 | 
						|
set -o errexit -o nounset
 | 
						|
 | 
						|
usage () {
 | 
						|
  printf "\
 | 
						|
usage: ./users/bcat/compile.sh [-c] [-j N]
 | 
						|
 | 
						|
Compiles all keyboards for which bcat maintains keymaps.
 | 
						|
 | 
						|
optional arguments:
 | 
						|
  -c                    performs a clean build
 | 
						|
  -j N                  runs N make tasks in parallel
 | 
						|
  -v                    shows verbose output
 | 
						|
"
 | 
						|
}
 | 
						|
 | 
						|
compile () {
 | 
						|
    local keyboard=$1 layout=${2:-}
 | 
						|
    FORCE_LAYOUT="$layout" SILENT="$opt_silent" make -j "$opt_parallel" "$keyboard":bcat
 | 
						|
}
 | 
						|
 | 
						|
opt_parallel=1
 | 
						|
opt_silent=true
 | 
						|
 | 
						|
while getopts :chj:v opt; do
 | 
						|
  case $opt in
 | 
						|
    c) opt_clean=1 ;;
 | 
						|
    j) opt_parallel=$OPTARG ;;
 | 
						|
    v) opt_silent=false ;;
 | 
						|
    h) usage; exit 0 ;;
 | 
						|
    \?) usage >&2; exit 2 ;;
 | 
						|
  esac
 | 
						|
done
 | 
						|
 | 
						|
if [[ -n ${opt_clean:-} ]]; then
 | 
						|
  SILENT="$opt_silent" make clean
 | 
						|
fi
 | 
						|
 | 
						|
compile 9key
 | 
						|
compile ai03/polaris 60_tsangan_hhkb
 | 
						|
compile cannonkeys/an_c 60_tsangan_hhkb
 | 
						|
compile cannonkeys/instant60 60_tsangan_hhkb
 | 
						|
compile crkbd/rev1 split_3x6_3
 | 
						|
compile dz60 60_ansi_split_bs_rshift
 | 
						|
compile dz60 60_tsangan_hhkb
 | 
						|
compile eco/rev2
 | 
						|
compile kbdfans/kbd67/hotswap 65_ansi_blocker_split_bs
 | 
						|
compile keebio/bdn9/rev1
 | 
						|
compile keebio/quefrency/rev1
 | 
						|
compile lily58/rev1
 | 
						|
compile yanghu/unicorne/f411
 |