Skip to content

Commit bd095a8

Browse files
authored
Merge pull request #120 from TheBlueMatt/main
Enable X-Lang LTO for extra builds/windows builds
2 parents a998260 + 7c58eb8 commit bd095a8

File tree

2 files changed

+11
-2
lines changed

2 files changed

+11
-2
lines changed
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
#!/bin/bash
2-
clang -target x86_64-pc-windows-gnu -L/usr/lib/gcc/x86_64-w64-mingw32/12-win32/ "$@"
2+
clang -fembed-bitcode -fuse-ld=lld -target x86_64-pc-windows-gnu "$@"

genbindings.sh

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -552,6 +552,7 @@ fi
552552

553553
EXTRA_TARGETS=( $LDK_C_BINDINGS_EXTRA_TARGETS )
554554
EXTRA_CCS=( $LDK_C_BINDINGS_EXTRA_TARGET_CCS )
555+
EXTRA_LINK_LTO=( $LDK_C_BINDINGS_EXTRA_TARGET_LINK_LTO )
555556

556557
if [ ${#EXTRA_TARGETS[@]} != ${#EXTRA_CCS[@]} ]; then
557558
echo "LDK_C_BINDINGS_EXTRA_TARGETS and LDK_C_BINDINGS_EXTRA_TARGET_CCS didn't have the same number of elements!"
@@ -562,7 +563,15 @@ for IDX in ${!EXTRA_TARGETS[@]}; do
562563
EXTRA_ENV_TARGET=$(echo "${EXTRA_TARGETS[$IDX]}" | sed 's/-/_/g')
563564
export CFLAGS_$EXTRA_ENV_TARGET="$BASE_CFLAGS"
564565
export CC_$EXTRA_ENV_TARGET=${EXTRA_CCS[$IDX]}
565-
RUSTFLAGS="$BASE_RUSTFLAGS -C embed-bitcode=yes -C lto -C linker=${EXTRA_CCS[$IDX]}" CARGO_PROFILE_RELEASE_LTO=true cargo build $CARGO_BUILD_ARGS -v --release --target "${EXTRA_TARGETS[$IDX]}"
566+
EXTRA_RUSTFLAGS=""
567+
case "$EXTRA_ENV_TARGET" in
568+
"x86_64"*)
569+
export CFLAGS_$EXTRA_ENV_TARGET="$BASE_CFLAGS -march=sandybridge -mtune=sandybridge"
570+
EXTRA_RUSTFLAGS="-C target-cpu=sandybridge"
571+
;;
572+
esac
573+
[ "${EXTRA_LINK_LTO[$IDX]}" != "" ] && EXTRA_RUSTFLAGS="-C linker-plugin-lto"
574+
RUSTFLAGS="$BASE_RUSTFLAGS -C embed-bitcode=yes -C lto -C linker=${EXTRA_CCS[$IDX]} $EXTRA_RUSTFLAGS" CARGO_PROFILE_RELEASE_LTO=true cargo build $CARGO_BUILD_ARGS -v --release --target "${EXTRA_TARGETS[$IDX]}"
566575
done
567576

568577
if [ "$CLANGPP" != "" -a "$LLD" != "" ]; then

0 commit comments

Comments
 (0)