From 4d4aa9e791d7ff3544ff90b9fb7ebc21b85b7cac Mon Sep 17 00:00:00 2001 From: Justine Tunney Date: Sat, 6 Mar 2021 21:23:18 -0800 Subject: [PATCH] Add automatic tests for pull requests Now when you send a pull request Travis CI will build the entire repository and run all the tests for you automatically. It takes approximately two minutes to finish so you can get fast feedback --- .travis.yml | 4 ++++ build/bootstrap/compile.com | Bin 65536 -> 77824 bytes tool/build/compile.c | 2 +- 3 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 .travis.yml diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 00000000..1c9d31f7 --- /dev/null +++ b/.travis.yml @@ -0,0 +1,4 @@ +virt: lxd +os: linux +language: c +script: make -j4 V=0 diff --git a/build/bootstrap/compile.com b/build/bootstrap/compile.com index d8d154d69d5887f33755027799bd57049b2d4beb..347df93b0e84d2fba538d85bc2a070fa1dd6fed3 100755 GIT binary patch delta 37664 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