rust: Fix compile error if build dir and DL_DIR on separate filesystems
The rust bootstrap downloads files into a "tmp" directory then moves the files into the "cache" directory using std::fs::rename. There are no issues in the original/unpatched case as "tmp" and "cache" are subdirectories in the build directory ($(HOST_BUILD_DIR)/build) and so are nearly guaranteed to be on the same filesystem. 35768bf31e5867046874dc6fd0374ff8fe575da2 changed where files are saved/cached (in $(DL_DIR)/rustc). If HOST_BUILD_DIR and DL_DIR are on separate filesystems, then using std::fs::rename to move the files will fail.[1] This updates 0002-rustc-bootstrap-cache.patch to account for this case, i.e. if std::fs::rename fails, fall back to copying the file then removing the original. [1]: https://github.com/openwrt/packages/pull/22457 Fixes: 35768bf31e58 ("rust: Cache bootstrap downloads to $(DL_DIR)/rustc") Signed-off-by:Jeffery To <jeffery.to@gmail.com> (cherry picked from commit f9f1e0220f872263d8f12c38df9984a40625430f)
parent
e85363a5
No related branches found
No related tags found
Please register or sign in to comment