rust: Improve Host/Install speed
* Compress dist archives with gzip instead of xz; gzip is faster to compress and decompress * Use a for loop instead of calling find to extract archives * Use libdeflate's gzip to decompress instead of gzip * Limit search for install scripts to top level of extracted archives This also runs the install scripts with bash instead of sh, in accordance with the shebang lines inside the scripts. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
This commit is contained in:
parent
35768bf31e
commit
855623d8cc
1 changed files with 6 additions and 3 deletions
|
@ -65,7 +65,7 @@ HOST_CONFIGURE_ARGS = \
|
||||||
--sysconfdir=$(CARGO_HOME)/etc \
|
--sysconfdir=$(CARGO_HOME)/etc \
|
||||||
--datadir=$(CARGO_HOME)/share \
|
--datadir=$(CARGO_HOME)/share \
|
||||||
--mandir=$(CARGO_HOME)/man \
|
--mandir=$(CARGO_HOME)/man \
|
||||||
--dist-compression-formats=xz \
|
--dist-compression-formats=gz \
|
||||||
--enable-missing-tools \
|
--enable-missing-tools \
|
||||||
--disable-sanitizers \
|
--disable-sanitizers \
|
||||||
--release-channel=stable \
|
--release-channel=stable \
|
||||||
|
@ -91,8 +91,11 @@ endef
|
||||||
define Host/Install
|
define Host/Install
|
||||||
( \
|
( \
|
||||||
cd $(HOST_BUILD_DIR)/build/dist ; \
|
cd $(HOST_BUILD_DIR)/build/dist ; \
|
||||||
find -iname "*.xz" -exec tar -xJf {} \; ; \
|
for targz in *.tar.gz; do \
|
||||||
find ./* -type f -name install.sh -execdir sh {} --prefix=$(CARGO_HOME) --disable-ldconfig \; ; \
|
$(STAGING_DIR_HOST)/bin/libdeflate-gzip -dc "$$$$targz" | tar -xf - ; \
|
||||||
|
done ; \
|
||||||
|
find . -mindepth 2 -maxdepth 2 -type f -name install.sh \
|
||||||
|
-execdir bash '{}' --prefix=$(CARGO_HOME) --disable-ldconfig \; ; \
|
||||||
\
|
\
|
||||||
sed -e 's|@RUSTC_TARGET_ARCH@|$(RUSTC_TARGET_ARCH)|g' \
|
sed -e 's|@RUSTC_TARGET_ARCH@|$(RUSTC_TARGET_ARCH)|g' \
|
||||||
-e 's|@TARGET_CC_NOCACHE@|$(TARGET_CC_NOCACHE)|g' \
|
-e 's|@TARGET_CC_NOCACHE@|$(TARGET_CC_NOCACHE)|g' \
|
||||||
|
|
Loading…
Reference in a new issue