tools-musl: make the run.sh script work for both amd64 and i686

This commit is contained in:
Anthony G. Basile 2014-02-05 14:49:16 -05:00
parent 280393ddc1
commit b81a0c3498
2 changed files with 26 additions and 6 deletions

View file

@ -1,4 +1,4 @@
CHOST=x86_64-gentoo-linux-musl CHOST=ALTARCH-gentoo-linux-musl
CFLAGS="-Os -pipe -fomit-frame-pointer" CFLAGS="-Os -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}" CXXFLAGS="${CFLAGS}"

View file

@ -1,24 +1,40 @@
#!/bin/bash #!/bin/bash
ROOTFS="stage4-amd64-musl-vanilla" MYARCH=${1:-"amd64"}
if [[ "$MYARCH" != "amd64" && "$MYARCH" != "i686" ]]; then
echo "Unsupported arch $MYARCH"
exit
fi
[[ "$MYARCH" == "amd64" ]] && ALTARCH="x86_64"
[[ "$MYARCH" == "i686" ]] && ALTARCH="i386"
ROOTFS="stage4-${MYARCH}-musl-vanilla"
PWD="$(pwd)" PWD="$(pwd)"
prepare_etc () { prepare_etc () {
mkdir -p "${ROOTFS}"/etc mkdir -p "${ROOTFS}"/etc
cp -a "${PWD}"/portage/ "${ROOTFS}"/etc/ cp -a "${PWD}"/portage/ "${ROOTFS}"/etc/
if [[ "$MYARCH" == "amd64" ]]; then
sed -i "s/ALTARCH/${ALTARCH}/" "${ROOTFS}"/etc/make.conf
elif [[ "$MYARCH" == "i686" ]]; then
sed -i "s/ALTARCH/${MYARCH}/" "${ROOTFS}"/etc/make.conf
fi
} }
prepare_usr_etc() { prepare_usr_etc() {
mkdir -p "${ROOTFS}"/usr/etc mkdir -p "${ROOTFS}"/usr/etc
cat <<-EOF > "${ROOTFS}"/usr/etc/ld-musl-x86_64.path cat <<-EOF > "${ROOTFS}"/usr/etc/ld-musl-${ALTARCH}.path
/lib /lib
/usr/lib /usr/lib
/usr/lib/gcc/x86_64-gentoo-linux-musl/4.7.3 /usr/lib/gcc/${ALTARCH}-gentoo-linux-musl/4.7.3
/usr/x86_64-gentoo-linux-musl/lib /usr/${ALTARCH}-gentoo-linux-musl/lib
EOF EOF
ln -sf ld-musl-x86_64.path "${ROOTFS}"/usr/etc/ld-musl.path ln -sf ld-musl-${ALTARCH}.path "${ROOTFS}"/usr/etc/ld-musl.path
} }
prepare_overlay() { prepare_overlay() {
@ -39,6 +55,10 @@ setup_configs() {
sed -i '/^SYNC/d' "${ROOTFS}"/etc/portage/make.conf sed -i '/^SYNC/d' "${ROOTFS}"/etc/portage/make.conf
sed -i '/^GENTOO_MIRRORS/d' "${ROOTFS}"/etc/portage/make.conf sed -i '/^GENTOO_MIRRORS/d' "${ROOTFS}"/etc/portage/make.conf
sed -i 's/^MAKEOPTS/#MAKEOPTS/' "${ROOTFS}"/etc/portage/make.conf sed -i 's/^MAKEOPTS/#MAKEOPTS/' "${ROOTFS}"/etc/portage/make.conf
# There are some issue with python3, so let's select python2
# which so far is option 1 in elesect python.
chroot "${ROOTFS}" eselect python set 1
} }
bundle_it() { bundle_it() {