#!/bin/sh # vim: set sw=4 ts=4 sts=4 et : set -e . ./config # Ensure we have a Portage repo if [ ! -f /var/db/repos/gentoo/metadata/timestamp ]; then emerge-webrsync fi ARCH=$(PORTAGE_CONFIGROOT=/usr/${target} portageq envvar ARCH) # For some reason, libcap installs its pkg-config files in the wrong # place. More strangely, even though `PKG_CONFIG_PATH` contains that # directory, `pkg-config` does not find the `.pc` files for libcap. # We work around this by merging /usr/lib64/pkgconfig and # /usr/lib/pkgconfig. ${target}-emerge -bk1vnj sys-libs/libcap if [ -d /usr/${target}/usr/lib/pkgconfig ] \ && [ ! -d /usr/${target}/usr/lib64/pkgconfig ]; then mv /usr/${target}/usr/lib/pkgconfig /usr/${target}/usr/lib64 ln -snf ../lib64/pkgconfig /usr/${target}/usr/lib/pkgconfig fi if [ ! -d /usr/${target}/etc/portage/make.conf ]; then mv /usr/${target}/etc/portage/make.conf \ /usr/${target}/etc/portage/make.conf.orig sed -ri 's: ?-pam::' /usr/${target}/etc/portage/make.conf.orig ls -l /usr/${target}/etc/portage mkdir /usr/${target}/etc/portage/make.conf mv /usr/${target}/etc/portage/make.conf.orig \ /usr/${target}/etc/portage/make.conf/10-base.conf fi if [ ! -d /etc/portage/make.conf ]; then mv /etc/portage/make.conf \ /etc/portage/make.conf.orig mkdir /etc/portage/make.conf mv /etc/portage/make.conf.orig \ /etc/portage/make.conf/10-base.conf fi ln -snf /var/db/repos/gentoo/profiles/default/linux/${ARCH}/17.0 \ /usr/${target}/etc/portage/make.profile ${target}-emerge -bk1nvj sys-libs/glibc ${target}-emerge -bknvj sys-apps/util-linux # Migrate to the merged-usr layout mkdir -p /usr/${target}/bin emerge -bknv --quiet-build=y merge-usr merge-usr --root=/usr/${target}