Skip to content

./configure fails when spaces are in the directory tree. #4242

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
pnathan opened this issue Dec 21, 2012 · 4 comments
Closed

./configure fails when spaces are in the directory tree. #4242

pnathan opened this issue Dec 21, 2012 · 4 comments
Labels
A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. O-macos Operating system: macOS

Comments

@pnathan
Copy link

pnathan commented Dec 21, 2012

Hi,

I found this error from my local Jenkins instance. I was trivially able to reproduce it on the command-line with my local clone by executing mv "rust" "rust directory" and running ./configure.

You'll observe occasional "could not find" type bugs in the dump.

Jenkins dump:

19:13:11 Started by user anonymous
19:13:11 Building in workspace /Users/pnathan/.jenkins/jobs/Rust build/workspace
19:13:11 Checkout:workspace / /Users/pnathan/.jenkins/jobs/Rust build/workspace - hudson.remoting.LocalChannel@6f45ee7f
19:13:11 Using strategy: Default
19:13:11 Last Built Revision: Revision 76a2891febd8b54fb8bea07cdb60184d24c324d9 (origin/master)
19:13:11 Fetching changes from 1 remote Git repository
19:13:11 Fetching upstream changes from git://github.com/mozilla/rust.git
19:13:13 Commencing build of Revision 76a2891febd8b54fb8bea07cdb60184d24c324d9 (origin/master)
19:13:13 Checking out Revision 76a2891febd8b54fb8bea07cdb60184d24c324d9 (origin/master)
19:13:15 [workspace] $ /bin/sh -xe /var/folders/IL/IL8pH45qEfSfxG92fl4+eU+++TQ/-Tmp-/hudson8235423927195602819.sh
19:13:15 + ./configure
19:13:15 configure: looking for configure programs
19:13:15 configure: found cmp
19:13:15 configure: found mkdir
19:13:15 configure: found printf
19:13:15 configure: found cut
19:13:15 configure: found head
19:13:15 configure: found grep
19:13:15 configure: found xargs
19:13:15 configure: found cp
19:13:15 configure: found find
19:13:15 configure: found uname
19:13:15 configure: found date
19:13:15 configure: found tr
19:13:15 configure: found sed
19:13:15 configure: inspecting environment
19:13:15 configure: recreating config.tmp
19:13:15 configure: 
19:13:15 configure: processing /Users/pnathan/.jenkins/jobs/Rust build/workspace/configure args
19:13:15 configure: 
19:13:15 configure: CFG_PREFIX           := /usr/local 
19:13:15 configure: CFG_LOCAL_RUST_ROOT  := /usr/local 
19:13:15 configure: CFG_LLVM_ROOT        :=  
19:13:15 configure: CFG_HOST_TRIPLE      := x86_64-apple-darwin 
19:13:15 configure: CFG_TARGET_TRIPLES   := x86_64-apple-darwin 
19:13:15 configure: 
19:13:15 configure: validating /Users/pnathan/.jenkins/jobs/Rust build/workspace/configure args
19:13:15 configure: 
19:13:15 configure: 
19:13:15 configure: looking for build programs
19:13:15 configure: 
19:13:15 configure: CFG_PERL             := /usr/local/bin//perl 
19:13:15 configure: CFG_CURL             := /usr/bin/curl (curl 7.19.7 (universal-apple-darwin10.0) libcurl/7.19.7 OpenSSL/0.9.8r zlib/1.2.3)
19:13:15 configure: CFG_PYTHON           := /usr/local/bin//python2.6 
19:13:15 ./configure: line 376: [: /Users/pnathan/.jenkins/jobs/Rust: binary operator expected
19:13:15 configure: CFG_GIT              := /usr/local/git/bin/git (git version 1.7.10.1)
19:13:15 configure: CFG_CLANG            :=  
19:13:15 configure: CFG_GCC              := /usr/bin/gcc (i686-apple-darwin10-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5666) (dot 3))
19:13:15 configure: CFG_LD               := /usr/bin/ld 
19:13:15 configure: CFG_LLVM_CONFIG      :=  
19:13:15 configure: CFG_VALGRIND         :=  
19:13:15 configure: CFG_PERF             :=  
19:13:15 configure: CFG_ISCC             :=  
19:13:15 configure: CFG_LLNEXTGEN        :=  
19:13:15 configure: CFG_PANDOC           :=  
19:13:15 configure: CFG_PDFLATEX         := /sw/bin/pdflatex (pdfeTeX 3.141592-1.21a-2.2 (Web2C 7.5.4))
19:13:15 configure: CFG_XETEX            :=  
19:13:15 configure: CFG_LUATEX           :=  
19:13:15 configure: CFG_NODE             :=  
19:13:15 configure: 
19:13:15 configure: making directories
19:13:15 configure: 
19:13:15 configure: 
19:13:15 configure: configuring submodules
19:13:15 configure: 
19:13:15 ./configure: line 637: cd: /Users/pnathan/.jenkins/jobs/Rust: No such file or directory
19:13:15 configure: git: submodule sync
19:13:16 configure: git: submodule update
19:13:16 configure: git: submodule foreach sync
19:13:16 Synchronizing submodule url for 'projects/compiler-rt'
19:13:16 Synchronizing submodule url for 'tools/clang'
19:13:17 configure: git: submodule foreach update
19:13:18 configure: git: submodule status
19:13:18  1170ffba3ac5191930b40c897d4569a9d8a296a3 src/libuv (remotes/origin/ipc-listen-228-g1170ffb)
19:13:18  accc36b3e3f22319b16609460f4cdf964f33f6cb src/llvm (heads/master)
19:13:18  414db777757e25fcb14f6ddea2bc00a949372ff0 src/llvm/projects/compiler-rt (heads/master)
19:13:18  169ad141fff082283dd7a6c26a1b4b5024d9b8da src/llvm/tools/clang (heads/master)
19:13:18 configure: git: submodule clobber
19:13:20 ./configure: line 665: cd: /Users/pnathan/.jenkins/jobs/Rust: No such file or directory
19:13:20 configure: 
19:13:20 configure: looking at LLVM
19:13:20 configure: 
19:13:20 ./configure: line 706: test: too many arguments
19:13:20 ./configure: line 706: test: too many arguments
19:13:20 ./configure: line 706: test: too many arguments
19:13:20 ./configure: line 706: test: too many arguments
19:13:20 configure: configuring LLVM for x86_64-apple-darwin
19:13:20 configure: configuring LLVM with:
19:13:20 configure: --enable-targets=x86,x86_64 --enable-optimized --disable-docs                    --enable-bindings=none --disable-threads                    --disable-pthreads --build=x86_64-apple-darwin                         --host=x86_64-apple-darwin --target=x86_64-apple-darwin
19:13:20 ./configure: line 786: cd: /Users/pnathan/.jenkins/jobs/Rust: No such file or directory
19:13:20 ./configure: line 789: /Users/pnathan/.jenkins/jobs/Rust: No such file or directory
19:13:20 configure: error: LLVM
19:13:20 Build step 'Execute shell' marked build as failure
19:13:20 Finished: FAILURE


@pnathan
Copy link
Author

pnathan commented Dec 21, 2012

Update:

I worked on fixing this: it occurs at 2 levels, the Rust level and the LLVM level. I believe I fixed the Rust level with 3f5b50f.

However, LLVM relies on autotools, and line 1713 (AC_CONFIG_COMMANDS) of LLVM's configure.ac appears to generate a block which was resistant to my fixing; it kept producing ${llvm_src}/and/a/path in configure, where $llvm_src would have paths in it. Someone who understands autotools will have to make that work. Note that except for that block, I think I fixed the configure.ac - but I haven't pushed those changes yet since it doesn't work.

@catamorphism
Copy link
Contributor

Hopefully we'll handle this better when rustpkg becomes the build system. De-milestoning; nominating for milestone 5 (production-ready).

@pnathan
Copy link
Author

pnathan commented Apr 25, 2013

Wow, this was a while ago...is there any interest in the changes I hacked together; i.e., should I push what I have fixed and so forth up to github? Or is this build system simply going to be replaced wholesale?

@graydon
Copy link
Contributor

graydon commented May 2, 2013

We're not able to fix LLVM in this respect, unfortunately.

@graydon graydon closed this as completed May 2, 2013
RalfJung added a commit to RalfJung/rust that referenced this issue Apr 9, 2025
machine clock: make 'monotonic' explicit
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. O-macos Operating system: macOS
Projects
None yet
Development

No branches or pull requests

3 participants