X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;f=build-hc-pkg;h=c70fb5db8a3698057f8d132e1bb254a577db4b32;hb=082333fbdae7c6f466de7e9b07d31c412e2043e6;hp=27bf1fdd72d420a763af6375c0704badc56c53b0;hpb=24ecd4063af8f36ea8c9cb45d1cae4406240be80;p=build-hc-pkg.git diff --git a/build-hc-pkg b/build-hc-pkg index 27bf1fd..c70fb5d 100755 --- a/build-hc-pkg +++ b/build-hc-pkg @@ -4,29 +4,19 @@ 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 () { - 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 - echo "WARNING: GHC will be built using only 1 processor. Expect some slowdown." >&2 - echo 1 - ;; - esac + if ! sysctl -n hw.ncpu; then + echo "WARNING: I don't know how to detect the number of processors on this platform." >&2 + echo "WARNING: GHC will be built using only 1 processor. Expect some slowdown." >&2 + echo 1 + fi } function detect_gnu_tar () { @@ -44,7 +34,12 @@ 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." + echo -n "This is "$(basename "$0")", running on $platform with $n_cpus " + if (( $n_cpus == 1 )); then + echo "processor." + else + echo "processors." + fi } function srcpath () {