fix: make sure cc-rs and bindgen use the correct paths when cross-compiling
@@ -33,6 +33,12 @@ variables:
- "rustup target add $TARGET"
# 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
+ # 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:
- time cargo build --target $TARGET --release
- 'cp "target/$TARGET/release/conduit" "conduit-$TARGET"'
