]> gitweb @ CieloNegro.org - build-hc-pkg.git/blobdiff - build-hc-pkg
Use autotools' idea of the canonical name of platform as-is.
[build-hc-pkg.git] / build-hc-pkg
index 51b56f19d3e7d9f11c5999cf1461a31a284ce132..14ef15e5ade04e1f67f5fea489476bcd65e9722d 100755 (executable)
@@ -4,17 +4,22 @@ set -e
 function detect_platform_type () {
     local -r canon_name="canon-name/src/canon-name"
 
-    if [[ ! -x "$canon_name" ]]; then
-        gmake -f mk/canon-name.mk
+    if ! gmake --question --file="mk/canon-name.mk" >/dev/null 2>&1; then
+        gmake --file="mk/canon-name.mk" >&2
     fi
 
     "$canon_name"
 }
 
 function detect_number_of_cpus () {
-    case "$(detect_platform_type)" in
-        *-*-darwin)
-            ioreg -r -c IOCPU | fgrep -c IOCPUNumber
+    local -r platform=$(detect_platform_type)
+
+    case "$platform" in
+        *-*-darwin*)
+            ioreg -r -c IOCPU | fgrep -c \"IOCPUNumber\"
+            ;;
+        *-*-netbsd*)
+            cat /proc/cpuinfo | grep -cE 'processor[[:space:]]*:'
             ;;
         *)
             echo "WARNING: I don't know how to detect the number of processors on this platform." >&2
@@ -38,6 +43,7 @@ function detect_gnu_tar () {
 function say_hello () {
     local -r platform=$(detect_platform_type)
     local -r n_cpus=$(detect_number_of_cpus)
+
     echo "This is build-hc-pkg, running on $platform with $n_cpus processors."
 }