alexcrichton / openssl-src-rs

Source code and logic to build OpenSSL from source
Apache License 2.0
69 stars 114 forks source link

Build breaks if the build directory path contains a whitespace #245

Open weiznich opened 3 months ago

weiznich commented 3 months ago

Steps to reproduce:

mkdir test\ whitespace
cd test\ whitespace 
cargo new break_openssl
cargo add openssl-sys -F vendored
cargo check

Output (Stderr):

  cp: target 'whitespace/break_openssl/target/debug/build/openssl-sys-465c9c415291fea5/out/openssl-build/install/lib/cmake/OpenSSL/OpenSSLConfig.cmake': No such file or directory
  chmod: cannot access 'whitespace/break_openssl/target/debug/build/openssl-sys-465c9c415291fea5/out/openssl-build/install/lib/cmake/OpenSSL/OpenSSLConfig.cmake': No such file or directory
  cp: target 'whitespace/break_openssl/target/debug/build/openssl-sys-465c9c415291fea5/out/openssl-build/install/lib/cmake/OpenSSL/OpenSSLConfigVersion.cmake': No such file or directory
  chmod: cannot access 'whitespace/break_openssl/target/debug/build/openssl-sys-465c9c415291fea5/out/openssl-build/install/lib/cmake/OpenSSL/OpenSSLConfigVersion.cmake': No such file or directory
  make: *** [Makefile:2514: install_dev] Error 1
  thread 'main' panicked at /home/weiznich/.cargo/registry/src/index.crates.io-6f17d22bba15001f/openssl-src-300.3.1+3.3.1/src/lib.rs:621:9:

  Error installing OpenSSL:
      Command: cd "/tmp/test whitespace/break_openssl/target/debug/build/openssl-sys-465c9c415291fea5/out/openssl-build/build/src" && "make" "install_dev"
      Exit status: exit status: 2

It seems like the openssl build scripts are not able to handle paths with whitespaces inside.