Allow make-link-multidir to make subdirectories

The RISC-V Linux ABI doesn't define any libraries that go directly in
lib, instead they go into lib32/ilp32 or lib64/lp64.  This casuse
make-link-multidir to fail when attempting to make library directories
when building a static libc on multilib RISC-V systems.

This patch uses scripts/mkinstalldirs to make the base directory of the
target symlink of make-link-multidir.

2018-01-06  Palmer Dabbelt  <palmer@sifive.com>

       * Makerules (make-link-multidir): Make directories before linking into
       them.
This commit is contained in:
Palmer Dabbelt 2017-12-26 20:55:34 -08:00
parent 31a98837be
commit 0050553251
2 changed files with 3 additions and 0 deletions

View File

@ -12,6 +12,8 @@
(R_RISCV_TLS_DTPREL64): Likewise.
(R_RISCV_TLS_TPREL32): Likewise.
(R_RISCV_TLS_TPREL64): Likewise.
* Makerules (make-link-multidir): Make directories before linking into
them.
2018-01-06 Samuel Thibault <samuel.thibault@ens-lyon.org>

View File

@ -1081,6 +1081,7 @@ mv -f $@.new $@
endef
define make-link-multidir
$(patsubst %/,cd %,$(objpfx)); \
$(addprefix $(abspath $(..)scripts/mkinstalldirs) ,$(dir $(multidir))); \
$(LN_S) . $(multidir) 2> /dev/null; \
test -L $(multidir)
endef