diff --git a/.travis-deps.sh b/.travis-deps.sh new file mode 100755 index 00000000..9699f84e --- /dev/null +++ b/.travis-deps.sh @@ -0,0 +1,13 @@ +#!/bin/sh + +if [ $TRAVIS_OS_NAME = "osx" ]; then + brew update + brew install libpng pkg-config +else # linux + sudo apt-get -qq update + sudo apt-get install -y -q bison flex libpng-dev pkg-config +fi + +echo "Dependencies:" +yacc --version +flex --version diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 00000000..db889db5 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,16 @@ +language: c +sudo: required +install: + - ./.travis-deps.sh +os: + - linux + - osx +compiler: + - clang + - gcc +script: + - make + - sudo make install +after_success: + - pushd test/asm/ && ./test.sh && popd + - pushd test/link/ && ./test.sh && popd diff --git a/test/asm/test.sh b/test/asm/test.sh old mode 100644 new mode 100755 index dbf27496..c8fca9d5 --- a/test/asm/test.sh +++ b/test/asm/test.sh @@ -1,8 +1,10 @@ fname=$(mktemp) +rc=0 for i in *.asm; do ../../rgbasm $i >$fname 2>&1 diff -u $fname ${i%.asm}.out + rc=$(($? || $rc)) done -exit 0 +exit $rc diff --git a/test/asm/update-refs.sh b/test/asm/update-refs.sh old mode 100644 new mode 100755 diff --git a/test/link/test.sh b/test/link/test.sh old mode 100644 new mode 100755 index 9c0616c7..6d012831 --- a/test/link/test.sh +++ b/test/link/test.sh @@ -2,6 +2,7 @@ otemp=$(mktemp) gbtemp=$(mktemp) gbtemp2=$(mktemp) outtemp=$(mktemp) +rc=0 RGBASM=../../rgbasm RGBLINK=../../rgblink @@ -9,37 +10,48 @@ RGBLINK=../../rgblink $RGBASM -o $otemp bank-numbers.asm $RGBLINK -o $gbtemp $otemp > $outtemp 2>&1 diff bank-numbers.out $outtemp +rc=$(($? || $rc)) head -c 20 $gbtemp > $otemp 2>&1 diff bank-numbers.out.bin $otemp +rc=$(($? || $rc)) $RGBASM -o $otemp wramx-dmg-mode.asm $RGBLINK -o $gbtemp $otemp > $outtemp 2>&1 diff wramx-dmg-mode-no-d.out $outtemp +rc=$(($? || $rc)) $RGBLINK -d -o $gbtemp $otemp > $outtemp 2>&1 diff wramx-dmg-mode-d.out $outtemp +rc=$(($? || $rc)) $RGBASM -o $otemp vram-fixed-dmg-mode.asm $RGBLINK -o $gbtemp $otemp > $outtemp 2>&1 diff vram-fixed-dmg-mode-no-d.out $outtemp +rc=$(($? || $rc)) $RGBLINK -d -o $gbtemp $otemp > $outtemp 2>&1 diff vram-fixed-dmg-mode-d.out $outtemp +rc=$(($? || $rc)) $RGBASM -o $otemp vram-floating-dmg-mode.asm $RGBLINK -o $gbtemp $otemp > $outtemp 2>&1 diff vram-floating-dmg-mode-no-d.out $outtemp +rc=$(($? || $rc)) $RGBLINK -d -o $gbtemp $otemp > $outtemp 2>&1 diff vram-floating-dmg-mode-d.out $outtemp +rc=$(($? || $rc)) $RGBASM -o $otemp romx-tiny.asm $RGBLINK -o $gbtemp $otemp > $outtemp 2>&1 diff romx-tiny-no-t.out $outtemp +rc=$(($? || $rc)) $RGBLINK -t -o $gbtemp $otemp > $outtemp 2>&1 diff romx-tiny-t.out $outtemp +rc=$(($? || $rc)) $RGBASM -o $otemp high-low-a.asm $RGBLINK -o $gbtemp $otemp $RGBASM -o $otemp high-low-b.asm $RGBLINK -o $gbtemp2 $otemp diff $gbtemp $gbtemp2 +rc=$(($? || $rc)) -exit 0 +exit $rc diff --git a/test/link/update-refs.sh b/test/link/update-refs.sh old mode 100644 new mode 100755