aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.builds/freebsd.yml40
-rw-r--r--test/helpers.lua7
2 files changed, 45 insertions, 2 deletions
diff --git a/.builds/freebsd.yml b/.builds/freebsd.yml
new file mode 100644
index 0000000000..9ffd6d9c37
--- /dev/null
+++ b/.builds/freebsd.yml
@@ -0,0 +1,40 @@
+image: freebsd/12.x
+
+packages:
+- cmake
+- gmake
+- ninja
+- libtool
+- sha
+- automake
+- pkgconf
+- unzip
+- wget
+- gettext
+- python
+- libffi
+
+sources:
+- https://github.com/neovim/neovim
+
+environment:
+ SOURCEHUT: 1
+ LANG: en_US.UTF-8
+ CMAKE_EXTRA_FLAGS: -DTRAVIS_CI_BUILD=ON -DMIN_LOG_LEVEL=3
+
+tasks:
+- build-deps: |
+ cd neovim
+ gmake deps
+- build: |
+ cd neovim
+ gmake CMAKE_BUILD_TYPE=Release CMAKE_EXTRA_FLAGS="${CMAKE_EXTRA_FLAGS}" nvim
+- test: |
+ cd neovim
+ gmake unittest functionaltest
+
+# Unfortunately, oldtest is tanking hard on sourcehut's FreeBSD instance
+# and not producing any logs as a result. So don't do this task for now.
+# - test-oldtest: |
+# cd neovim
+# gmake oldtest
diff --git a/test/helpers.lua b/test/helpers.lua
index ebc0a7d811..30e43a9ea4 100644
--- a/test/helpers.lua
+++ b/test/helpers.lua
@@ -715,11 +715,14 @@ end
function module.isCI(name)
local any = (name == nil)
- assert(any or name == 'appveyor' or name == 'quickbuild' or name == 'travis')
+ assert(any or name == 'appveyor' or name == 'quickbuild' or name == 'travis'
+ or name == 'sourcehut')
local av = ((any or name == 'appveyor') and nil ~= os.getenv('APPVEYOR'))
local tr = ((any or name == 'travis') and nil ~= os.getenv('TRAVIS'))
local qb = ((any or name == 'quickbuild') and nil ~= lfs.attributes('/usr/home/quickbuild'))
- return tr or av or qb
+ local sh = ((any or name == 'sourcehut') and nil ~= os.getenv('SOURCEHUT'))
+ return tr or av or qb or sh
+
end
-- Gets the contents of $NVIM_LOG_FILE for printing to the build log.