diff options
| author | Mike Taves <mwtoews@gmail.com> | 2019-09-25 10:58:10 +1200 |
|---|---|---|
| committer | Mike Taves <mwtoews@gmail.com> | 2019-09-25 11:16:27 +1200 |
| commit | 14828d9695ab54272fee0dab35a489180c20f2ea (patch) | |
| tree | 2435fe59d4c39a6a73b210886e45776e74dd4689 /travis | |
| parent | a71fce63c2d77b6709005667efd577d728b900e9 (diff) | |
| download | PROJ-14828d9695ab54272fee0dab35a489180c20f2ea.tar.gz PROJ-14828d9695ab54272fee0dab35a489180c20f2ea.zip | |
Rearrange Travis CI scripts to be more modular
* Split global before_install for apt and pip
* Use -qq option for apt-get, which implies -y
* Use list of targets with apt-get rather than one-per-line
* Use local variables for mingw32/install.sh
* Show version info for cppcheck, pip and python
* Simplify clang+llvm-6 path
Diffstat (limited to 'travis')
| -rwxr-xr-x | travis/before_install_apt.sh | 7 | ||||
| -rwxr-xr-x | travis/before_install_pip.sh (renamed from travis/before_install.sh) | 1 | ||||
| -rwxr-xr-x | travis/csa/before_install.sh | 11 | ||||
| -rwxr-xr-x | travis/csa/install.sh | 4 | ||||
| -rwxr-xr-x | travis/linux_clang/before_install.sh | 7 | ||||
| -rwxr-xr-x | travis/linux_gcc/before_install.sh | 16 | ||||
| -rwxr-xr-x | travis/linux_gcc7/before_install.sh | 17 | ||||
| -rwxr-xr-x | travis/mingw32/before_install.sh | 21 | ||||
| -rwxr-xr-x | travis/mingw32/install.sh | 19 | ||||
| -rwxr-xr-x | travis/osx/before_install.sh | 5 |
10 files changed, 60 insertions, 48 deletions
diff --git a/travis/before_install_apt.sh b/travis/before_install_apt.sh new file mode 100755 index 00000000..aea7a8d3 --- /dev/null +++ b/travis/before_install_apt.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +# All Debian-like before_install scripts starts by running this +# "global" before_install script. + +sudo apt-get update -qq +sudo apt-get install -qq python3-pip diff --git a/travis/before_install.sh b/travis/before_install_pip.sh index a577a7ce..30a7f767 100755 --- a/travis/before_install.sh +++ b/travis/before_install_pip.sh @@ -5,5 +5,6 @@ # Configure Python pip pip3 install --user --upgrade pip +echo `pip3 --version` pip3 config --user set global.progress_bar off pip3 install --user jsonschema diff --git a/travis/csa/before_install.sh b/travis/csa/before_install.sh index 58446f65..cdd58257 100755 --- a/travis/csa/before_install.sh +++ b/travis/csa/before_install.sh @@ -1,12 +1,13 @@ #!/bin/bash set -e -sudo apt-get update -qq -sudo apt-get install -qq python3-pip -./travis/before_install.sh +./travis/before_install_apt.sh +./travis/before_install_pip.sh sudo apt-get install -qq sqlite3 libsqlite3-dev -wget http://releases.llvm.org/6.0.0/clang+llvm-6.0.0-x86_64-linux-gnu-ubuntu-14.04.tar.xz -tar xJf clang+llvm-6.0.0-x86_64-linux-gnu-ubuntu-14.04.tar.xz +CLANG_LLVM=clang+llvm-6.0.0-x86_64-linux-gnu-ubuntu-14.04 +wget http://releases.llvm.org/6.0.0/$CLANG_LLVM.tar.xz +tar xJf $CLANG_LLVM.tar.xz +mv $CLANG_LLVM clang+llvm-6 diff --git a/travis/csa/install.sh b/travis/csa/install.sh index 12a1bf6d..334389ee 100755 --- a/travis/csa/install.sh +++ b/travis/csa/install.sh @@ -5,7 +5,7 @@ set -e # prepare build files ./autogen.sh -CXXFLAGS="-std=c++11" ./clang+llvm-6.0.0-x86_64-linux-gnu-ubuntu-14.04/bin/scan-build -o scanbuildoutput -plist -v ./configure -./clang+llvm-6.0.0-x86_64-linux-gnu-ubuntu-14.04/bin/scan-build -o scanbuildoutput -plist -v make -j2 +CXXFLAGS="-std=c++11" ./clang+llvm-6/bin/scan-build -o scanbuildoutput -plist -v ./configure +./clang+llvm-6/bin/scan-build -o scanbuildoutput -plist -v make -j2 if grep -r "\.c" scanbuildoutput | grep "<string>" | grep -v -e "<key>" -e _generated_parser; then echo "error" && /bin/false; else echo "ok"; fi diff --git a/travis/linux_clang/before_install.sh b/travis/linux_clang/before_install.sh index 167bc667..8ce465a2 100755 --- a/travis/linux_clang/before_install.sh +++ b/travis/linux_clang/before_install.sh @@ -1,9 +1,8 @@ #!/bin/bash set -e -sudo apt-get update -qq -sudo apt-get install -qq python3-pip -./travis/before_install.sh +./travis/before_install_apt.sh +./travis/before_install_pip.sh -sudo apt-get install -qq sqlite3 libsqlite3-dev
\ No newline at end of file +sudo apt-get install -qq sqlite3 libsqlite3-dev diff --git a/travis/linux_gcc/before_install.sh b/travis/linux_gcc/before_install.sh index f7111631..30793e69 100755 --- a/travis/linux_gcc/before_install.sh +++ b/travis/linux_gcc/before_install.sh @@ -1,16 +1,16 @@ #!/bin/bash set -e -sudo apt-get update -qq -sudo apt-get install -qq python3-pip -./travis/before_install.sh +./travis/before_install_apt.sh +./travis/before_install_pip.sh -sudo apt-get install -y cppcheck -sudo apt-get install -qq lcov -sudo apt-get install -qq doxygen graphviz -sudo apt-get install -qq sqlite3 libsqlite3-dev -sudo apt-get install -qq openjdk-7-jdk +sudo apt-get install -qq \ + cppcheck \ + lcov \ + doxygen graphviz \ + openjdk-7-jdk \ + sqlite3 libsqlite3-dev scripts/cppcheck.sh scripts/doxygen.sh diff --git a/travis/linux_gcc7/before_install.sh b/travis/linux_gcc7/before_install.sh index 50fd4c36..df2bd672 100755 --- a/travis/linux_gcc7/before_install.sh +++ b/travis/linux_gcc7/before_install.sh @@ -1,17 +1,16 @@ #!/bin/bash set -e -sudo apt-get update -qq -sudo apt-get install -qq python3-pip -./travis/before_install.sh +./travis/before_install_apt.sh +./travis/before_install_pip.sh -sudo apt-get update -qq -sudo apt-get install -y cppcheck -sudo apt-get install -qq lcov -sudo apt-get install -qq doxygen graphviz -sudo apt-get install -qq sqlite3 libsqlite3-dev -sudo apt-get install -qq openjdk-7-jdk +sudo apt-get install -qq \ + cppcheck \ + lcov \ + doxygen graphviz \ + openjdk-7-jdk \ + sqlite3 libsqlite3-dev #scripts/cppcheck.sh #scripts/doxygen.sh diff --git a/travis/mingw32/before_install.sh b/travis/mingw32/before_install.sh index d67d8194..f33d18ff 100755 --- a/travis/mingw32/before_install.sh +++ b/travis/mingw32/before_install.sh @@ -1,16 +1,15 @@ #!/bin/bash set -e -sudo apt-get update -qq -sudo apt-get install -qq python3-pip -./travis/before_install.sh +./travis/before_install_apt.sh +./travis/before_install_pip.sh -sudo apt-get install wget -sudo apt-get install binutils-mingw-w64-x86-64 -sudo apt-get install gcc-mingw-w64-x86-64 -sudo apt-get install g++-mingw-w64-x86-64 -sudo apt-get install g++-mingw-w64 -sudo apt-get install mingw-w64-tools -sudo apt-get install -y wine1.4-amd64 -sudo apt-get install sqlite3 +sudo apt-get install -qq \ + wget \ + binutils-mingw-w64-x86-64 \ + gcc-mingw-w64-x86-64 \ + g++-mingw-w64-x86-64 \ + mingw-w64-tools \ + wine1.4-amd64 \ + sqlite3 diff --git a/travis/mingw32/install.sh b/travis/mingw32/install.sh index af7761c3..867ca716 100755 --- a/travis/mingw32/install.sh +++ b/travis/mingw32/install.sh @@ -5,24 +5,29 @@ set -e export CCACHE_CPP2=yes export PROJ_DB_CACHE_DIR="$HOME/.ccache" +MINGW_ARCH=x86_64-w64-mingw32 +MINGW_PREFIX=/usr/lib/gcc/$MINGW_ARCH/4.8 + # prepare wine environment +WINE_SYSDIR=$HOME/.wine/drive_c/windows wine64 cmd /c dir -ln -s /usr/lib/gcc/x86_64-w64-mingw32/4.8/libstdc++-6.dll $HOME/.wine/drive_c/windows -ln -s /usr/lib/gcc/x86_64-w64-mingw32/4.8/libgcc_s_sjlj-1.dll $HOME/.wine/drive_c/windows -ln -s /usr/x86_64-w64-mingw32/lib/libwinpthread-1.dll $HOME/.wine/drive_c/windows +ln -s $MINGW_PREFIX/libstdc++-6.dll $WINE_SYSDIR +ln -s $MINGW_PREFIX/libgcc_s_sjlj-1.dll $WINE_SYSDIR +ln -s /usr/$MINGW_ARCH/lib/libwinpthread-1.dll $WINE_SYSDIR # build sqlite3 wget https://sqlite.org/2018/sqlite-autoconf-3250100.tar.gz tar xzf sqlite-autoconf-3250100.tar.gz -(cd sqlite-autoconf-3250100 && CC="ccache x86_64-w64-mingw32-gcc" CXX="ccache x86_64-w64-mingw32-g++" LD=x86_64-w64-mingw32-ld ./configure --host=x86_64-w64-mingw32 --prefix=/usr/x86_64-w64-mingw32 && make -j2 && sudo make install) -ln -s /usr/x86_64-w64-mingw32/bin/libsqlite3-0.dll $HOME/.wine/drive_c/windows +(cd sqlite-autoconf-3250100 && CC="ccache $MINGW_ARCH-gcc" CXX="ccache $MINGW_ARCH-g++" LD=$MINGW_ARCH-ld +./configure --host=$MINGW_ARCH --prefix=/usr/$MINGW_ARCH && make -j2 && sudo make install) +ln -s /usr/$MINGW_ARCH/bin/libsqlite3-0.dll $WINE_SYSDIR # prepare build files ./autogen.sh # autoconf build mkdir build_autoconf cd build_autoconf -CC="ccache x86_64-w64-mingw32-gcc" CXX="ccache x86_64-w64-mingw32-g++" LD=x86_64-w64-mingw32-ld ../configure --host=x86_64-w64-mingw32 --prefix=/tmp/proj_autoconf_install +CC="ccache $MINGW_ARCH-gcc" CXX="ccache $MINGW_ARCH-g++" LD=$MINGW_ARCH-ld ../configure --host=$MINGW_ARCH --prefix=/tmp/proj_autoconf_install make -j2 make install make dist-all @@ -38,7 +43,7 @@ cd .. # autoconf build with grids mkdir build_autoconf_grids cd build_autoconf_grids -CC="ccache x86_64-w64-mingw32-gcc" CXX="ccache x86_64-w64-mingw32-g++" LD=x86_64-w64-mingw32-ld ../configure --host=x86_64-w64-mingw32 --prefix=/tmp/proj_autoconf_install_nad +CC="ccache $MINGW_ARCH-gcc" CXX="ccache $MINGW_ARCH-g++" LD=$MINGW_ARCH-ld ../configure --host=$MINGW_ARCH --prefix=/tmp/proj_autoconf_install_nad make -j2 make install find /tmp/proj_autoconf_install_nad diff --git a/travis/osx/before_install.sh b/travis/osx/before_install.sh index 55c0667a..450d2838 100755 --- a/travis/osx/before_install.sh +++ b/travis/osx/before_install.sh @@ -4,14 +4,15 @@ set -e export PATH=$HOME/Library/Python/3.6/bin:$PATH -./travis/before_install.sh - brew update brew install ccache brew install sqlite3 brew install doxygen brew install md5sha1sum +./travis/before_install_pip.sh + pip3 install --user sphinx sphinx-rtd-theme sphinxcontrib-bibtex breathe which sphinx-build + (cd docs; make html) |
