set the PER_LINUX32 personality flag, when building for armv6l-linux or armv7l-linux

this prevents 32bit builds from detecting a 64bit kernel and picking the wrong target
This commit is contained in:
Michael Bishop 2021-09-19 23:07:10 -03:00
parent 1ec4efa6c8
commit 374fe49ff7

View file

@ -1778,6 +1778,10 @@ void LocalDerivationGoal::runChild()
if (personality(PER_LINUX32) == -1) if (personality(PER_LINUX32) == -1)
throw SysError("cannot set i686-linux personality"); throw SysError("cannot set i686-linux personality");
} }
if (drv->platform == "armv7l-linux" || drv->platform == "armv6l-linux") {
if (personality(PER_LINUX32) == -1)
throw SysError("cannot set 32bit linux personality");
}
/* Impersonate a Linux 2.6 machine to get some determinism in /* Impersonate a Linux 2.6 machine to get some determinism in
builds that depend on the kernel version. */ builds that depend on the kernel version. */