diff --git a/configure b/configure index 213880df89..4b61fd3bbf 100755 --- a/configure +++ b/configure @@ -987,6 +987,12 @@ if [ -f "$meson$EXESUF" ]; then meson="$meson$EXESUF" fi +# On Haiku, meson might show up in a "non-packaged" subfolder instead, see +# https://github.com/haiku/haiku/blob/r1beta5/docs/user/storage/storageintro.dox +if test "$host_os" = "haiku" && test ! -e "$meson" ; then + meson="$(cd pyvenv/non-packaged/bin; get_pwd)/meson" +fi + # Conditionally ensure Sphinx is installed. mkvenv_online_flag="" @@ -1069,7 +1075,7 @@ static THREAD int tls_var; int main(void) { return tls_var; } EOF -if test "$host_os" = windows || test "$host_os" = haiku; then +if test "$host_os" = windows ; then if test "$pie" = "yes"; then error_exit "PIE not available due to missing OS support" fi diff --git a/tests/vm/haiku.x86_64 b/tests/vm/haiku.x86_64 index 71cf75a9a3..529283c39f 100755 --- a/tests/vm/haiku.x86_64 +++ b/tests/vm/haiku.x86_64 @@ -78,6 +78,8 @@ class HaikuVM(basevm.BaseVM): "devel:libusb_1.0", "devel:libz", "ninja", + "pip", + "tomli_python310", ] BUILD_SCRIPT = """ @@ -109,6 +111,8 @@ class HaikuVM(basevm.BaseVM): self.wait_ssh(wait_root=True, cmd="exit 0") # Install packages + self.ssh_root("echo yes | pkgman add-repo https://eu.hpkg.haiku-os.org/haiku/r1beta5/$(getarch)/current") + self.ssh_root("echo yes | pkgman add-repo https://eu.hpkg.haiku-os.org/haikuports/r1beta5/$(getarch)/current") self.ssh_root("pkgman install -y %s" % " ".join(self.requirements)) self.graceful_shutdown()