mirror of
https://github.com/crosstool-ng/crosstool-ng.git
synced 2024-12-20 05:17:54 +00:00
config: add an option not to remove the destination directory
In certain circumstances, removing the destination/installation directory is a bad idea. For example, when the build environment is already taking care of sanitising the build tree, and pre-installs stuff in there, it is a very bad idea to remove the destination directory. This happens now in buildroot, as the crostool-NG backend now installs the toolchain in the common host-tools directory, and pre-install there a few host-utilities (eg. host-automake and host-gawk). Provide a config knob to turn on/off the removal of the destination directory, defaulting to 'y' (previous behavior), and forced to 'n' when used as a backend. Reported-by: Peter Korsgaard <jacmet@sunsite.dk> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
This commit is contained in:
parent
4d82364f1f
commit
7817bcebe7
@ -61,6 +61,28 @@ config INSTALL_DIR
|
|||||||
# The reason you might also want to install elsewhere is if you are going
|
# The reason you might also want to install elsewhere is if you are going
|
||||||
# to package your shinny new toolchain for distribution.
|
# to package your shinny new toolchain for distribution.
|
||||||
|
|
||||||
|
config RM_RF_PREFIX_DIR
|
||||||
|
bool
|
||||||
|
prompt "| Remove the prefix dir prior to building"
|
||||||
|
default y
|
||||||
|
depends on !BACKEND
|
||||||
|
help
|
||||||
|
If you say 'y' here, then PREFIX_DIR (above) will be eradicated
|
||||||
|
prior to the toolchain is built.
|
||||||
|
|
||||||
|
This can be usefull when you are trying different settings (due
|
||||||
|
to build failures or feature tests). In this case, to avoid using
|
||||||
|
a potentially broken previous toolchain, the install location is
|
||||||
|
removed, to start afresh.
|
||||||
|
|
||||||
|
On the oher hand, if you are building a final toolchain, and install
|
||||||
|
it into a directory with pre-install, unrelated programs, it would be
|
||||||
|
damageable to remove that directory. In this case, you may want to
|
||||||
|
say 'n' here.
|
||||||
|
|
||||||
|
Note that when acting as a backend, this option is not available, and
|
||||||
|
is forced to 'n'.
|
||||||
|
|
||||||
config REMOVE_DOCS
|
config REMOVE_DOCS
|
||||||
bool
|
bool
|
||||||
prompt "Remove documentation"
|
prompt "Remove documentation"
|
||||||
|
@ -229,7 +229,7 @@ if [ -z "${CT_RESTART}" ]; then
|
|||||||
if [ "${CT_FORCE_EXTRACT}" = "y" -a -d "${CT_SRC_DIR}" ]; then
|
if [ "${CT_FORCE_EXTRACT}" = "y" -a -d "${CT_SRC_DIR}" ]; then
|
||||||
CT_DoForceRmdir "${CT_SRC_DIR}"
|
CT_DoForceRmdir "${CT_SRC_DIR}"
|
||||||
fi
|
fi
|
||||||
if [ -d "${CT_INSTALL_DIR}" ]; then
|
if [ -d "${CT_INSTALL_DIR}" -a "${CT_RM_RF_PREFIX_DIR}" = "y" ]; then
|
||||||
CT_DoForceRmdir "${CT_INSTALL_DIR}"
|
CT_DoForceRmdir "${CT_INSTALL_DIR}"
|
||||||
fi
|
fi
|
||||||
# In case we start anew, get rid of the previously saved state directory
|
# In case we start anew, get rid of the previously saved state directory
|
||||||
|
Loading…
Reference in New Issue
Block a user