]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - make/utilities.pm
Don't force a rebuild after doing a Git commit.
[user/henk/code/inspircd.git] / make / utilities.pm
index 87aa46d6ea7b61956e2f99a54eecc3164d18bc50..48713fe9e9936bc7035ca718047c28296ebbe577 100644 (file)
@@ -34,8 +34,9 @@ use Fcntl;
 use File::Path;
 use File::Spec::Functions qw(rel2abs);
 use Getopt::Long;
+use POSIX;
 
-our @EXPORT = qw(module_installed prompt_bool prompt_dir prompt_string make_rpath pkgconfig_get_include_dirs pkgconfig_get_lib_dirs pkgconfig_check_version translate_functions promptstring);
+our @EXPORT = qw(module_installed prompt_bool prompt_dir prompt_string get_cpu_count make_rpath pkgconfig_get_include_dirs pkgconfig_get_lib_dirs pkgconfig_check_version translate_functions promptstring);
 
 # Parse the output of a *_config program,
 # such as pcre_config, take out the -L
@@ -87,6 +88,21 @@ sub prompt_string($$$) {
        return $answer ? $answer : $default;
 }
 
+sub get_cpu_count {
+       my $count = 1;
+       if ($^O =~ /bsd/) {
+               $count = `sysctl -n hw.ncpu`;
+       } elsif ($^O eq 'darwin') {
+               $count = `sysctl -n hw.activecpu`;
+       } elsif ($^O eq 'linux') {
+               $count = `getconf _NPROCESSORS_ONLN`;
+       } elsif ($^O eq 'solaris') {
+               $count = `psrinfo -p`;
+       }
+       chomp($count);
+       return $count;
+}
+
 sub promptstring($$$$$)
 {
        my ($prompt, $configitem, $default, $package, $commandlineswitch) = @_;