2
2
# Builds the C++ standard document on Travis CI <https://travis-ci.org/cplusplus/draft>
3
3
#
4
4
5
+ dist : trusty
6
+ sudo : required
7
+ language : cpp
8
+
9
+ services :
10
+ - docker
11
+
12
+ before_install :
13
+ - docker pull godbyk/texlive-basic:latest
14
+ - docker run -itd -v $TRAVIS_BUILD_DIR:/$TRAVIS_REPO_SLUG --name texlive-basic godbyk/texlive-basic
15
+
5
16
env :
6
17
- BUILD_TYPE=latexmk # build using latexmk, also check for overfull hboxes
7
18
- BUILD_TYPE=make # build using Makefile
@@ -14,26 +25,26 @@ script:
14
25
# Build std.pdf
15
26
- pushd source
16
27
- if [ "$BUILD_TYPE" = "latexmk" ]; then
17
- latexmk -pdf std -silent;
28
+ docker exec -it texlive-basic bash -c "cd /$TRAVIS_REPO_SLUG/source && latexmk -pdf std -silent" ;
18
29
! grep -Fe "Overfull \\hbox" std.log;
19
30
fi
20
31
- if [ "$BUILD_TYPE" = "make" ]; then
21
- make -j2;
32
+ docker exec -it texlive-basic bash -c "cd /$TRAVIS_REPO_SLUG/source && make -j2" ;
22
33
fi
23
34
- if [ "$BUILD_TYPE" = "complete" ]; then
24
35
for FIGURE in *.dot; do
25
- dot -o$(basename $FIGURE .dot).pdf -Tpdf $FIGURE;
36
+ docker exec -it texlive-basic bash -c "cd /$TRAVIS_REPO_SLUG/source && dot -o$(basename $FIGURE .dot).pdf -Tpdf $FIGURE" ;
26
37
done;
27
- pdflatex std;
28
- pdflatex std;
29
- pdflatex std;
30
- makeindex generalindex;
31
- makeindex libraryindex;
32
- makeindex grammarindex;
33
- makeindex impldefindex;
34
- makeindex -s basic.gst -o xrefindex.gls xrefindex.glo
35
- pdflatex std;
36
- pdflatex std;
38
+ docker exec -it texlive-basic bash -c "cd /$TRAVIS_REPO_SLUG/source && pdflatex std" ;
39
+ docker exec -it texlive-basic bash -c "cd /$TRAVIS_REPO_SLUG/source && pdflatex std" ;
40
+ docker exec -it texlive-basic bash -c "cd /$TRAVIS_REPO_SLUG/source && pdflatex std" ;
41
+ docker exec -it texlive-basic bash -c "cd /$TRAVIS_REPO_SLUG/source && makeindex generalindex" ;
42
+ docker exec -it texlive-basic bash -c "cd /$TRAVIS_REPO_SLUG/source && makeindex libraryindex" ;
43
+ docker exec -it texlive-basic bash -c "cd /$TRAVIS_REPO_SLUG/source && makeindex grammarindex" ;
44
+ docker exec -it texlive-basic bash -c "cd /$TRAVIS_REPO_SLUG/source && makeindex impldefindex" ;
45
+ docker exec -it texlive-basic bash -c "cd /$TRAVIS_REPO_SLUG/source && makeindex -s basic.gst -o xrefindex.gls xrefindex.glo";
46
+ docker exec -it texlive-basic bash -c "cd /$TRAVIS_REPO_SLUG/source && pdflatex std" ;
47
+ docker exec -it texlive-basic bash -c "cd /$TRAVIS_REPO_SLUG/source && pdflatex std" ;
37
48
fi
38
49
- popd
39
50
# Fail if there is whitespace at the ends of any lines
@@ -52,24 +63,8 @@ script:
52
63
# Check to see if generated files are out-dated
53
64
- pushd source
54
65
- for FIGURE in *.dot; do
55
- dot -o$(basename $FIGURE .dot).pdf -Tpdf $FIGURE;
66
+ docker exec -it texlive-basic bash -c "cd /$TRAVIS_REPO_SLUG/source && dot -o$(basename $FIGURE .dot).pdf -Tpdf $FIGURE" ;
56
67
git status --porcelain $(basename $FIGURE .dot).pdf;
57
68
done
58
69
- popd
59
70
60
- sudo : false
61
-
62
- addons :
63
- apt :
64
- packages :
65
- - latexmk
66
- - poppler-utils
67
- - texlive-binaries
68
- - texlive-fonts-recommended
69
- - texlive-latex-base
70
- - texlive-latex-extra
71
- - texlive-latex-recommended
72
- - texlive-generic-recommended
73
- - texlive-binaries
74
- - graphviz
75
- - lmodern
0 commit comments