# Define test executable names based on platform
my $test_exe = $^O eq 'MSWin32' ? 'test_bit.exe' : 'test_bit';
my $bench_exe = $^O eq 'MSWin32' ? 'benchmark.exe' : 'benchmark';
my $openmp_exe = $^O eq 'MSWin32' ? 'openmp_bit.exe' : 'openmp_bit';
# Get full paths
my $test_path = $lib_dir->child($test_exe);
my $bench_path = $lib_dir->child($bench_exe);
my $openmp_path = $lib_dir->child($openmp_exe);
# Run main tests if available
if ( -x $test_path ) {
print "\n**************** Running Bit Tests ****************\n";
my $test_output = `$test_path 2>&1`;
print $test_output;
if ( $test_output =~ /All tests passed/m ) {
print
"\n**************** Bit tests passed successfully ****************\n";
}
else {
croak("Bit tests failed");
}
}
else {
print "Test executable not found at $test_path - skipping tests\n";
}
unlink $test_path; # Clean up test executable
# Run benchmarks if available
if ( -x $bench_path ) {
print
"\n**************** Running Bit Benchmarks ****************\n";
my $bench_output = `$bench_path 2>&1`;
print $bench_output;
unlink $bench_path; # Clean up benchmark executable
}
else {
print
"Benchmark executable not found at $bench_path - skipping benchmarks\n";
}
# Run OpenMP benchmarks if available
if ( -x $openmp_path ) {
print
"\n**************** Running Bit OpenMP Benchmarks ****************\n";
my $openmp_output = `$openmp_path 1024 1000 1000 4 2>&1`;
print $openmp_output;
unlink $openmp_path; # Clean up OpenMP benchmark executable
}
else {
print
"OpenMP benchmark executable not found at $openmp_path - skipping OpenMP benchmarks\n";
}
# delete object files that end in .o
my @object_files = $lib_dir->children(qr/\.o$/);
foreach my $obj_file (@object_files) {
$obj_file->remove;
print "Removed object file: ", $obj_file->basename, "\n";
}
};
2 POD Errors
The following errors were encountered while parsing the POD:
- Around line 110:
=pod directives shouldn't be over one line long! Ignoring all 4 lines of content
- Around line 180:
=pod directives shouldn't be over one line long! Ignoring all 24 lines of content