view more/cross-smoke-test.sh @ 1684:7b4566efd8bd draft 1.2.8

Silence some asynchronous messages linux produces on top of the shell prompt.
author Rob Landley <rob@landley.net>
date Sun, 07 Sep 2014 10:39:51 -0500
parents b74d36876c0a
children
line wrap: on
line source

#!/bin/bash

# Perform a smoke test on a target's cross compiler by building "hello world"
# and attempting to run it under QEMU application emulation.

source sources/include.sh && load_target "$1" || exit 1

# Build statically linked hello world, if necessary

if [ ! -e "$WORK/hello" ]
then
  "${ARCH}-gcc" -Os -static "${SOURCES}/toys/hello.c" -o "$WORK"/hello

  if [ $? -ne 0 ]
  then
    echo "Compiler doesn't seem to work" >&2
    dienow
  fi
fi

# Attempt to run statically linked hello world

RESULT="$(PATH="$OLDPATH" qemu-"$QEMU_TEST" "$WORK/hello")"
if [ "$RESULT" == "Hello world!" ]
then
  echo "Cross toolchain seems to work."
  exit 0
else
  echo "Can't run hello world" >&2
  exit 1
fi