You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm trying to build a binary on my Apple Silicon mac mini which depends on botan-rs with enabled features vendored and botan3. Since we want to create a universal binary with lipo, we have to build targets aarch64-apple-darwin and x86_64-apple-darwin.
When botan-src builds the C library, it calls configure.py but the target initially passed to cargo is completely ignored.
Although there is a list of options that can be overridden with BOTAN_CONFIGURE_ env vars, I think --os and --cpu should be set depending on cargo --target and not via BOTAN_CONFIGURE_CPU and BOTAN_CONFIGURE_OS. I cannot think of any situation where setting CPU and OS to something other than what has been passed in --target would make sense.
Dumping the environment in pub fn build() -> (String, String) shows
The library was built for aarch64 according to ld and the log file
INFO: configure.py invoked with options "--with-build-dir=/Users/username/src/work/botan-rs/target/debug/build/botan-sys-b2a7d959a11e9080/out/botan --build-targets=static --without-documentation --no-install-python-module --distribution-info=https://crates.io/crates/botan-src --with-debug-info"
INFO: Configuring to build Botan 3.5.0 (revision git:2e5c7d3eb0dcb63d087fc3e7c92010aa82509bbf)
INFO: Python version: "3.12.5 (main, Aug 6 2024, 19:08:49) [Clang 15.0.0 (clang-1500.3.9.4)]"
INFO: Autodetected platform information: OS="Darwin" machine="arm64" proc="arm"
INFO: Guessing target OS is darwin (use --os to set)
INFO: Guessing to use compiler xcode (use --cc or CXX to set)
INFO: Guessing target processor is a arm64 (use --cpu to set)
INFO: Using /etc/ssl/cert.pem as system certificate store
INFO: Auto-detected compiler version xcode 15.3
INFO: Auto-detected compiler arch arm64
INFO: Target is xcode:15.3-macos-arm64
INFO: Assuming target arm64 is little endian
The text was updated successfully, but these errors were encountered:
I'm trying to build a binary on my Apple Silicon mac mini which depends on botan-rs with enabled features
vendored
andbotan3
. Since we want to create a universal binary withlipo
, we have to build targetsaarch64-apple-darwin
andx86_64-apple-darwin
.When
botan-src
builds the C library, it callsconfigure.py
but the target initially passed tocargo
is completely ignored.Although there is a list of options that can be overridden with
BOTAN_CONFIGURE_
env vars, I think--os
and--cpu
should be set depending oncargo --target
and not viaBOTAN_CONFIGURE_CPU
andBOTAN_CONFIGURE_OS
. I cannot think of any situation where setting CPU and OS to something other than what has been passed in--target
would make sense.Dumping the environment in
pub fn build() -> (String, String)
showsSo the build script definitely knows what should be built, but doesn't pass the information to
configure.py
.What I did:
What I expected:
The library is built for x86_64
What actually happened:
The library was built for aarch64 according to
ld
and the log fileThe text was updated successfully, but these errors were encountered: