[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: FTB if path to build dir contains a space
From: |
Bruno Haible |
Subject: |
Re: FTB if path to build dir contains a space |
Date: |
Sun, 28 Feb 2021 00:54:42 +0100 |
User-agent: |
KMail/5.1.3 (Linux/4.4.0-203-generic; KDE/5.18.0; x86_64; ; ) |
Alexander Batischev wrote:
> GNU gettext fails to build if the path to the build directory
> contains a space character.
>
> 1. https://crates.io/crates/gettext-rs
> 2. https://github.com/Koka/gettext-rs/issues/9
>
> I just reproduced this on Debian testing with GNU gettext 0.21, outside
> of our crate and Rust. Arguments to ./configure were:
>
> --without-emacs --disable-java --disable-csharp --disable-c++
> --disable-shared --enable-static --enable-fast-install
> --with-included-gettext --with-included-glib
> --with-included-libcroco --with-included-libunistring
>
> Is this indeed a limitation in autotools, like the bug report states?
This is unsupported for all GNU packages. The reasons are:
* Like the reference to the Autoconf manual says, shell and make quote
special characters differently, and thus it's hard to find substitutable
values that work in both contexts.
* Nobody spends time testing this.
So, even the attempt to build in such a situation is dangerous, as it may
end up executing commands that no one has meant to be executed.
> Can this be worked around somehow by you, or should I move the build to
> something like /tmp?
It is pointless to attempt to work around it, because the same result —
working binaries — can be obtained by building in a build directory
without spaces. There are plenty of them, under /home/$USER, under /tmp,
under /var/tmp, under /dev/shm, and so on.
Bruno