Today crossdev does not install baselayout into /usr/${CTARGET}.
As a result /usr/${CTARGET}/usr/lib was not created by any ebuilds.
glibc ebuild used to create /usr/lib but recently added
install-qa-check.d/95empty-dirs by portage broke that assumption.
This change uses keepdir to ensure presense of /usr/${CTARGET}/usr/lib.
Longer term crossdev will attempt to use baselayout.
Reported-by: Vadim A. Misbakh-Soloviov <git@mva.name>
Bug: https://bugs.gentoo.org/652724
Package-Manager: Portage-2.3.43, Repoman-2.3.10
# gcc likes to use relative paths to get to its multilibs like
# /usr/lib/../lib64/. So while we don't install any files into
# /usr/lib/, we do need it to exist.
- cd "${ED}"$(alt_libdir)/..
- [[ -e lib ]] || mkdir lib
- cd "${ED}"$(alt_usrlibdir)/..
- [[ -e lib ]] || mkdir lib
+ keepdir $(alt_prefix)/lib
+ keepdir $(alt_prefix)/usr/lib
dosym usr/include $(alt_prefix)/sys-include
return 0
# gcc likes to use relative paths to get to its multilibs like
# /usr/lib/../lib64/. So while we don't install any files into
# /usr/lib/, we do need it to exist.
- cd "${ED}"$(alt_libdir)/..
- [[ -e lib ]] || mkdir lib
- cd "${ED}"$(alt_usrlibdir)/..
- [[ -e lib ]] || mkdir lib
+ keepdir $(alt_prefix)/lib
+ keepdir $(alt_prefix)/usr/lib
dosym usr/include $(alt_prefix)/sys-include
return 0