fix: make sure cc-rs and bindgen use the correct paths when cross-compiling

This commit is contained in:
Maxim De Clercq 2022-01-21 17:06:15 +01:00
parent ab4f3bd06c
commit d94f3c1e9a
No known key found for this signature in database
GPG key ID: D35643779C52BA70

View file

@ -33,6 +33,12 @@ variables:
- "rustup target add $TARGET" - "rustup target add $TARGET"
# If provided, bring in caching through sccache, which uses an external S3 endpoint to store compilation results: # If provided, bring in caching through sccache, which uses an external S3 endpoint to store compilation results:
- if [ -n "${SCCACHE_BIN_URL}" ]; then curl $SCCACHE_BIN_URL --output /sccache && chmod +x /sccache && export RUSTC_WRAPPER=/sccache; fi - if [ -n "${SCCACHE_BIN_URL}" ]; then curl $SCCACHE_BIN_URL --output /sccache && chmod +x /sccache && export RUSTC_WRAPPER=/sccache; fi
# Make sure that cc-rs links the correct libraries when cross-compiling (required for compiling librocksdb-sys)
# See https://github.com/alexcrichton/cc-rs#external-configuration-via-environment-variables for more information
- 'export TARGET_CFLAGS="-L$TARGET_HOME/lib -latomic"'
# Make sure that rust-bindgen uses the correct include path when cross-compiling (required for compiling librocksdb-sys)
# See https://github.com/rust-lang/rust-bindgen#environment-variables for more information
- 'export BINDGEN_EXTRA_CLANG_ARGS="-I$TARGET_C_INCLUDE_PATH"'
script: script:
- time cargo build --target $TARGET --release - time cargo build --target $TARGET --release
- 'cp "target/$TARGET/release/conduit" "conduit-$TARGET"' - 'cp "target/$TARGET/release/conduit" "conduit-$TARGET"'