build: add support for building for FreeBSD under Sourcehut [skip ci]

This commit is contained in:
John Szakmeister 2019-09-01 12:13:34 -04:00
parent db6b4b677d
commit b52ae0e8ba
2 changed files with 45 additions and 2 deletions

40
.builds/freebsd.yml Normal file
View File

@ -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

View File

@ -715,11 +715,14 @@ end
function module.isCI(name) function module.isCI(name)
local any = (name == nil) 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 av = ((any or name == 'appveyor') and nil ~= os.getenv('APPVEYOR'))
local tr = ((any or name == 'travis') and nil ~= os.getenv('TRAVIS')) local tr = ((any or name == 'travis') and nil ~= os.getenv('TRAVIS'))
local qb = ((any or name == 'quickbuild') and nil ~= lfs.attributes('/usr/home/quickbuild')) 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 end
-- Gets the contents of $NVIM_LOG_FILE for printing to the build log. -- Gets the contents of $NVIM_LOG_FILE for printing to the build log.