forked from snowballstem/snowball
-
Notifications
You must be signed in to change notification settings - Fork 0
/
.travis.yml
99 lines (99 loc) · 3.53 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
language: minimal
arch: arm64
dist: xenial
matrix:
include:
- name: "C distribution build"
language: c
dist: focal
compiler: gcc
env: CFLAGS_DIST_BUILD='-O2 -Wall -W -std=c90 -Wdeclaration-after-statement -Werror'
- name: "C distribution build (clang)"
language: c
dist: focal
compiler: clang
env: CFLAGS_DIST_BUILD='-O2 -Wall -W -std=c90 -Wdeclaration-after-statement -Werror'
- language: c
compiler: gcc
env: c_tests=y CFLAGS='-O2 -Wall -W -std=c99 -Werror'
- language: c
compiler: clang
env: c_tests=y CFLAGS='-O2 -Wall -W -std=c99 -Werror'
- language: java
env: JAVA=java JAVAC=javac
- language: go
go: "1.8"
env: GO=go
- language: go
dist: bionic
go: "1.15"
env: GO=go
- language: node_js
node_js: "node"
env: NODE=node
- language: rust
rust:
- stable
- beta
dist: bionic
env: RUST=rust
- language: csharp
arch: amd64 # csharp doesn't seem to work on arm64
env: MCS=mcs
dist: bionic
- name: Pascal
env: FPC=fpc
dist: bionic
addons:
apt:
packages:
- fpc
# The pure Python versions run slowly so we need to thin the testdata
# for languages such as Arabic where there's a lot, or else the build
# hits the travis time limit. With pypy, it's enough faster than we
# can run the full tests.
- language: python
python: "3.9"
env: PYTHON=python THIN_FACTOR=10
- language: python
python: "3.7"
env: PYTHON=python THIN_FACTOR=10
- language: python
python: "3.6"
env: PYTHON=python THIN_FACTOR=10
- language: python
python: "pypy3.7-7.3.5"
env: PYTHON=python
dist: bionic
- name: "Ada"
env: gprbuild=gprbuild
dist: bionic
addons:
apt:
packages:
- gnat
- gprbuild
before_install:
# Try to check out a branch of the same name from the snowball-data repo
# sibling of this snowball repo, so that PRs requiring changes to both can be
# CI tested easily.
#
# If that fails, just use the standard snowball-data repo's default branch.
- GH_BRANCH=${TRAVIS_PULL_REQUEST_BRANCH:-$TRAVIS_BRANCH}
- GH_REPO_SLUG=${TRAVIS_PULL_REQUEST_SLUG:-$TRAVIS_REPO_SLUG}
- GH_REPO_URL=https://github.com/${GH_REPO_SLUG%%/*}/snowball-data.git
- echo "Trying branch $GH_BRANCH from $GH_REPO_URL"
- git clone --depth=1 -b "$GH_BRANCH" "$GH_REPO_URL" || git clone --depth=1 https://github.com/snowballstem/snowball-data.git
script:
- make CC="${CC:-gcc}"
- test -z "$CFLAGS_DIST_BUILD" || { pip install setuptools && make dist && mkdir tmp && cd tmp && tar xf ../dist/libstemmer_c-*.tar.gz && cd libstemmer_c-* && make CFLAGS="$CFLAGS_DIST_BUILD" ; }
- test -z "$c_tests" || make check CC="${CC:-gcc}" STEMMING_DATA=snowball-data
- test -z "$PYTHON" || make check_python python="$PYTHON" STEMMING_DATA=snowball-data
- test -z "$JAVA" -o -z "$JAVAC" || make check_java STEMMING_DATA=snowball-data
- test -z "$MCS" || make check_csharp MCS="$MCS" STEMMING_DATA=snowball-data
- test -z "$NODE" || make check_js STEMMING_DATA=snowball-data
- test -z "$RUST" || make check_rust STEMMING_DATA=snowball-data
- test -z "$RUST" || make check_rust cargoflags=--release STEMMING_DATA=snowball-data
- test -z "$GO" || make check_go STEMMING_DATA=snowball-data
- test -z "$FPC" || make check_pascal STEMMING_DATA=snowball-data
- test -z "$gprbuild" || make check_ada STEMMING_DATA=snowball-data