From 9fa8270564eecd03b0450a7304acc09e5ad89a8e Mon Sep 17 00:00:00 2001 From: kageru Date: Tue, 26 May 2020 18:18:21 +0200 Subject: [PATCH] Update release build script Default binaries are now compiled for haswell or higher because using FMA instructions results in a noticeable performance gain. --- build_release.sh | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/build_release.sh b/build_release.sh index aec8fd5..333919f 100755 --- a/build_release.sh +++ b/build_release.sh @@ -1,10 +1,13 @@ #!/bin/sh -# set rustflags as empty to make sure we’re not building for march=native, -# as these are public release builds -RUSTFLAGS="" cargo build --release --locked +# Set rustflags as empty to build for legacy hosts. +# I only build this for windows because Linux users on old machines can just compile their own binary RUSTFLAGS="" cargo build --release --target=x86_64-pc-windows-gnu --locked -mv target/release/libadaptivegrain_rs.so ./ +mv target/x86_64-pc-windows-gnu/release/adaptivegrain_rs.dll ./adaptivegrain_rs-no-fma.dll +RUSTFLAGS="-C target-cpu=haswell" cargo build --release --locked +RUSTFLAGS="-C target-cpu=haswell" cargo build --release --target=x86_64-pc-windows-gnu --locked mv target/x86_64-pc-windows-gnu/release/adaptivegrain_rs.dll ./ +mv target/release/libadaptivegrain_rs.so ./ strip libadaptivegrain_rs.so strip adaptivegrain_rs.dll +strip adaptivegrain_rs-no-fma.dll