-
Notifications
You must be signed in to change notification settings - Fork 24
/
.gitpod.yml
63 lines (55 loc) · 2.12 KB
/
.gitpod.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
image: gitpod/workspace-c
tasks:
- name: setup coding environment on Ubuntu 22.04
before: |
# note: sadly we need this to be done every time as only /workspace is kept, but linked
# against those dependencies; and also we do want to recompile after adjustments
# this can all be dropped as soon as we would use a prepared docker
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential libgmp-dev libdb-dev libjson-c-dev ncurses-dev libxml2-dev \
automake libtool flex bison help2man gettext texinfo \
lcov \
clangd bear
# sudo apt install texlive-base # for make dist (doc/gnucobol.pdf)
gp sync-done system-prepare
- name: building GnuCOBOL
init: |
mkdir -p $GITPOD_REPO_ROOTS/build
cd $GITPOD_REPO_ROOTS/build
gp sync-await system-prepare
../autogen.sh
../configure --enable-cobc-internal-checks --enable-debug --enable-code-coverage \
CC="gcc -std=c89" CPPFLAGS="-Werror=declaration-after-statement"
bear -- make --jobs=$(nproc)
command: |
cd $GITPOD_REPO_ROOTS/build
gp sync-done build-finish
- name: running GnuCOBOL tests with coverage
command: |
gp sync-await build-finish
cd $GITPOD_REPO_ROOTS/build
half_jobs=$(( $(nproc) / 2 ))
nice make --jobs=${half_jobs} check-code-coverage TESTSUITEFLAGS="--jobs=${half_jobs}"
- name: running NIST85 tests
command: |
gp sync-await build-finish
cd $GITPOD_REPO_ROOTS/build
half_jobs=$(( $(nproc) / 2 ))
nice make -C tests/cobol85 --jobs=${half_jobs} test
# disabled as running that is really onbly useful after several adjustments
#- name: running GnuCOBOL distribution tests with testuite
# command: |
# gp sync-await build-finish
# cd $GITPOD_REPO_ROOTS/build
# half_jobs=$(( $(nproc) / 2 ))
# nice make --jobs=${half_jobs} distcheck TESTSUITEFLAGS="--jobs=${half_jobs}"
vscode:
extensions:
- llvm-vs-code-extensions.vscode-clangd
- maelvalais.autoconf
- Dizy.lex-flex-yacc-bison
- ryanluker.vscode-coverage-gutters
- tenninebt.vscode-koverage
- meronz.manpages
- webfreak.debug
- OCamlPro.SuperBOL