Fix which benchmarks are compile

This prevents errors with redefinitions, the lzy way
This commit is contained in:
David Venhoff 2025-09-12 11:53:53 +02:00
parent f9b0bf0b5f
commit 9a08103872
4 changed files with 9 additions and 14 deletions

View File

@ -6,10 +6,10 @@ use std::{env, fs};
const BENCHMARKS: &[&str] = &[ const BENCHMARKS: &[&str] = &[
"src/ud/libud.c", "src/ud/libud.c",
// "src/wikisort/libwikisort.c", Error: undefined reference to rand_beebs "src/wikisort/libwikisort.c",
"src/nbody/nbody.c", "src/nbody/nbody.c",
"src/edn/libedn.c", "src/edn/libedn.c",
"src/st/libst.c", // "src/st/libst.c", Collides with matmult-int
"src/aha-mont64/mont64.c", "src/aha-mont64/mont64.c",
"src/matmult-int/matmult-int.c", "src/matmult-int/matmult-int.c",
"src/slre/libslre.c", "src/slre/libslre.c",
@ -20,7 +20,7 @@ const BENCHMARKS: &[&str] = &[
"src/minver/libminver.c", "src/minver/libminver.c",
"src/statemate/libstatemate.c", "src/statemate/libstatemate.c",
"src/crc32/crc_32.c", "src/crc32/crc_32.c",
"src/picojpeg/libpicojpeg.c", // "src/picojpeg/libpicojpeg.c", Contains multiple source fails, maybe a todo if relevant
"src/cubic/basicmath_small.c", "src/cubic/basicmath_small.c",
"src/md5sum/md5.c", "src/md5sum/md5.c",
"src/qrduino/qrtest.c", "src/qrduino/qrtest.c",
@ -49,13 +49,13 @@ fn main() {
let path = embench_dir.join(benchmark_file); let path = embench_dir.join(benchmark_file);
let dir = path.parent().unwrap(); let dir = path.parent().unwrap();
let benchmark_name = dir.file_name().unwrap().to_string_lossy().replace("-", "_"); let benchmark_name = dir.file_name().unwrap().to_string_lossy().replace("-", "_");
println!("cargo:warning={path:?}");
let mut build = cc::Build::new(); let mut build = cc::Build::new();
build build
.include(embench_dir.join("support")) .include(embench_dir.join("support"))
.file(embench_dir.join("support/beebsc.c")) .file(embench_dir.join("support/beebsc.c"))
.file(&path) .file(&path)
.warnings(false)
// Just use some roughly accurate value, it just influences how long each benchmark runs // Just use some roughly accurate value, it just influences how long each benchmark runs
.define("CPU_MHZ", "2700"); .define("CPU_MHZ", "2700");

View File

@ -1,5 +0,0 @@
use client::program;
fn main() {
program::<client::embench_sys::picojpeg>();
}

View File

@ -1,5 +0,0 @@
use client::program;
fn main() {
program::<client::embench_sys::st>();
}

View File

@ -0,0 +1,5 @@
use client::program;
fn main() {
program::<client::embench_sys::wikisort>();
}