dev
sh 33 lines 985 Bytes
Raw
1 #!/bin/bash
2
3 detect_sed() {
4 if sed --version 2>/dev/null | grep -q "GNU"; then
5 SED_TYPE="GNU"
6 else
7 SED_TYPE="BSD"
8 fi
9 }
10
11 universal_sed() {
12 local expression=$1
13 local file=$2
14
15 if [[ "$SED_TYPE" == "GNU" ]]; then
16 sed -i "$expression" "$file"
17 else
18 sed -i '' "$expression" "$file"
19 fi
20 }
21
22 detect_sed
23
24 if [[ "$(uname)" == "Linux" ]];
25 then
26 export MAKE_JOB_COUNT="$(expr $(printf '%s\n%s' $(( $(grep MemTotal: /proc/meminfo | cut -d: -f2 | cut -dk -f1) * 4 / (1048576 * 9) )) $(nproc) | sort -n | head -n1) '|' 1)"
27 elif [[ "$(uname)" == "Darwin" ]];
28 then
29 export MAKE_JOB_COUNT="$(expr $(printf '%s\n%s' $(( $(sysctl -n hw.memsize) * 4 / (1073741824 * 9) )) $(sysctl -n hw.logicalcpu) | sort -n | head -n1) '|' 1)"
30 else
31 # Assume windows eh?
32 export MAKE_JOB_COUNT="$(expr $(printf '%s\n%s' $(( $(grep MemTotal: /proc/meminfo | cut -d: -f2 | cut -dk -f1) * 4 / (1048576 * 9) )) $(nproc) | sort -n | head -n1) '|' 1)"
33 fi