]>
Commit | Line | Data |
---|---|---|
f8a7ef17 QH |
1 | # Build configuration for https://tea-ci.org |
2 | # Tea CI is a fork of Drone CI with Cygwin/Msys2 support | |
3 | # Feel free to share Tea CI to more open source developers | |
4 | # https://docs.tea-ci.org/usage/overview/ | |
5 | ||
6 | debug: true | |
7 | ||
8 | build: | |
9 | stage1: | |
10 | image: teaci/cygwin$$arch | |
11 | pull: true | |
12 | shell: cygwin$$arch | |
13 | commands: | |
14 | - uname -a | |
15 | - id | |
16 | - C:/cygwin-installer.exe --site http://mirrors.tea-ci.org/cygwin --local-package-dir Z:/tmp/cygwin -W -P gettext-devel,zlib-devel,libiconv,libiconv-devel,mingw64-i686-gcc-g++,mingw64-i686-zlib,mingw64-x86_64-gcc-core,mingw64-x86_64-gcc-g++,mingw64-x86_64-zlib,dejagnu,dblatex,docbook-xml45,docbook-xsl,xmlto -q &> /dev/null | |
17 | - srcdir=`pwd` | |
18 | - builddir=/oss/build-stage1 | |
19 | - installdir=/oss/install-stage1 | |
20 | - mkdir -p ${builddir} ${installdir} | |
21 | - cd ${builddir} | |
22 | - ${srcdir}/configure --prefix=${installdir} -v | |
23 | - make | |
24 | - make install | |
25 | - sha1sum ${installdir}/bin/cygwin1.dll /bin/cygwin1.dll | |
26 | # FIXME: Is there an easy way to package new Cygwin then install locally using setup_x86{,-64}.exe? | |
27 | - cp -vf ${installdir}/bin/cygwin1.dll /bin/cygwin1.dll | |
28 | ||
29 | test: | |
30 | image: teaci/cygwin$$arch | |
31 | pull: true | |
32 | shell: /bin/bash # Call from Linux native shell, which is a special bonus of Tea CI. | |
33 | commands: | |
34 | # In the worst case, new cygwin1.dll might fail to start with exit status 0, which fools the CI as status success. | |
35 | # The following test does not rely on cygwin exit status, instead we trust Linux grep result. | |
36 | - cygwin$$arch -c "uname -a" | grep CYGWIN_NT | |
37 | - cygwin$$arch -c "id" | grep uid | |
38 | - cygwin$$arch -c "sha1sum --tag /bin/cygwin1.dll" | grep SHA1 | |
39 | ||
40 | # Compile Cygwin again using the new cygwin1.dll | |
41 | stage2: | |
42 | image: teaci/cygwin$$arch | |
43 | pull: true | |
44 | shell: cygwin$$arch | |
45 | commands: | |
46 | - srcdir=`pwd` | |
47 | - builddir=/oss/build-stage2 | |
48 | - installdir=/oss/install-stage2 | |
49 | - mkdir -p ${builddir} ${installdir} | |
50 | - cd ${builddir} | |
51 | - ${srcdir}/configure --prefix=${installdir} -v | |
52 | - make | |
53 | - make install | |
54 | ||
55 | matrix: | |
56 | arch: | |
57 | - 64 | |
58 | - 32 |