From 1a2be4bef50646f8e532b8b023e97de6ec2f8a34 Mon Sep 17 00:00:00 2001 From: pentarctagon Date: Sat, 16 Nov 2019 11:23:44 -0600 Subject: [PATCH] Add steam runtime job to travis. --- .travis.yml | 2 ++ utils/dockerbuilds/make_steam_build | 2 +- utils/dockerbuilds/make_steam_image | 18 ++++++++++++++++++ utils/dockerbuilds/steamrt/Dockerfile | 11 +---------- .../travis/Dockerfile-base-steamrt | 12 ++++++++++++ utils/travis/docker_run.sh | 4 ++++ 6 files changed, 38 insertions(+), 11 deletions(-) create mode 100755 utils/dockerbuilds/make_steam_image create mode 100644 utils/dockerbuilds/travis/Dockerfile-base-steamrt diff --git a/.travis.yml b/.travis.yml index 0adcd56e57f0..b089c7c37512 100644 --- a/.travis.yml +++ b/.travis.yml @@ -33,6 +33,8 @@ matrix: env: TOOL=cmake CXXSTD=14 NLS=false LTS=1604 BRANCH=master - env: CXXSTD=14 NLS=false LTS=mingw BRANCH=master STRICT=false + + - env: CXXSTD=14 NLS=false LTS=steamrt BRANCH=master CC=gcc-5 CXX=g++-5 - os: osx compiler: clang diff --git a/utils/dockerbuilds/make_steam_build b/utils/dockerbuilds/make_steam_build index 33b84c806869..2194fe1fc9df 100755 --- a/utils/dockerbuilds/make_steam_build +++ b/utils/dockerbuilds/make_steam_build @@ -4,4 +4,4 @@ cd steamrt docker build -t steamos-wesnoth . rm -rf ../steambuild mkdir ../steambuild -docker run -it -v "$PWD"/../../..:/wesnoth -v "$PWD"/../steambuild:/output --tmpfs /build:exec -u $UID steamos-wesnoth +docker run -it -v "$PWD"/../../..:/wesnoth -v "$PWD"/../steambuild:/output --tmpfs /build:exec -u "$UID" steamos-wesnoth diff --git a/utils/dockerbuilds/make_steam_image b/utils/dockerbuilds/make_steam_image new file mode 100755 index 000000000000..8d05d182600a --- /dev/null +++ b/utils/dockerbuilds/make_steam_image @@ -0,0 +1,18 @@ +#!/bin/sh -xe + +VALVEFILE=com.valvesoftware.SteamRuntime.Sdk-amd64,i386-scout-sysroot.Dockerfile +VALVETAR=com.valvesoftware.SteamRuntime.Sdk-amd64,i386-scout-sysroot.tar.gz +DOCKERBASEIMAGE=steamrt_scout_amd64 +DOCKERLOCALIMAGE=wesnoth/wesnoth:steamrt-master +DOCKERLOCALFILE=./travis/Dockerfile-base-steamrt + +if [ ! -f $VALVEFILE ]; then + wget http://repo.steampowered.com/steamrt-images-scout/snapshots/0.20190608.0/$VALVEFILE +fi +if [ ! -f $VALVETAR ]; then + wget http://repo.steampowered.com/steamrt-images-scout/snapshots/0.20190608.0/$VALVETAR +fi + +docker build -t $DOCKERBASEIMAGE -f $VALVEFILE . + +docker build -t $DOCKERLOCALIMAGE -f $DOCKERLOCALFILE . diff --git a/utils/dockerbuilds/steamrt/Dockerfile b/utils/dockerbuilds/steamrt/Dockerfile index 388fae59e31e..4cd10df319de 100644 --- a/utils/dockerbuilds/steamrt/Dockerfile +++ b/utils/dockerbuilds/steamrt/Dockerfile @@ -1,15 +1,6 @@ -FROM steamrt_scout_amd64 +FROM wesnoth/wesnoth:steamrt-master ENV DEBIAN_FRONTEND=noninteractive -ARG BOOST_VERSION=1.66.0 -ARG BOOST_VERSION_=1_66_0 - -RUN apt-get update && apt-get -y dist-upgrade && apt-get install -y scons libicu-dev libreadline-dev - -RUN wget --max-redirect 3 https://dl.bintray.com/boostorg/release/${BOOST_VERSION}/source/boost_${BOOST_VERSION_}.tar.gz -RUN mkdir -p /src/boost && tar zxf boost_${BOOST_VERSION_}.tar.gz -C /src/boost --strip-components=1 -RUN cd /src/boost && ./bootstrap.sh --with-libraries=iostreams,regex,system,filesystem,program_options,random,locale && ./b2 toolset=gcc-5 --layout=system link=static variant=release cxxflags='-fPIE -fstack-protector-strong' define=_FORTIFY_SOURCE=2 install COPY start.sh /staging/start.sh -RUN mkdir /staging/lib64 && cp /lib/libicu*.so.* /lib/x86_64-linux-gnu/libhistory.so.6 /staging/lib64/ ENTRYPOINT mkdir -p /build && cd /build && scons -j `nproc` ctool=gcc-5 cxxtool=g++-5 boostdir=/usr/local/include boostlibdir=/usr/local/lib extra_flags_config=-lrt -Y /wesnoth && cp /build/wesnoth /output/ && cp /build/wesnothd /output/ && cp -r /staging/* /output/ diff --git a/utils/dockerbuilds/travis/Dockerfile-base-steamrt b/utils/dockerbuilds/travis/Dockerfile-base-steamrt new file mode 100644 index 000000000000..393373a84644 --- /dev/null +++ b/utils/dockerbuilds/travis/Dockerfile-base-steamrt @@ -0,0 +1,12 @@ +FROM steamrt_scout_amd64 +ENV DEBIAN_FRONTEND=noninteractive +ARG BOOST_VERSION=1.66.0 +ARG BOOST_VERSION_=1_66_0 + +RUN apt-get update && apt-get -y dist-upgrade && apt-get install -y scons libicu-dev libreadline-dev expect-dev + +RUN wget --max-redirect 3 https://dl.bintray.com/boostorg/release/${BOOST_VERSION}/source/boost_${BOOST_VERSION_}.tar.gz +RUN mkdir -p /src/boost && tar zxf boost_${BOOST_VERSION_}.tar.gz -C /src/boost --strip-components=1 +RUN cd /src/boost && ./bootstrap.sh --with-libraries=iostreams,regex,system,filesystem,program_options,random,locale && ./b2 toolset=gcc-5 --layout=system link=static variant=release cxxflags='-fPIE -fstack-protector-strong' define=_FORTIFY_SOURCE=2 install + +RUN mkdir -p /staging/lib64 && cp /lib/libicu*.so.* /lib/x86_64-linux-gnu/libhistory.so.6 /staging/lib64/ diff --git a/utils/travis/docker_run.sh b/utils/travis/docker_run.sh index c8a8e2a91094..b50814ef73f4 100755 --- a/utils/travis/docker_run.sh +++ b/utils/travis/docker_run.sh @@ -73,6 +73,10 @@ elif [ "$TYPE" == "mingw" ]; then cxx_std=$CXXSTD opt="$OPT" strict="$STRICT" \ nls=false enable_lto="$LTO" sanitize="$SAN" jobs=2 --debug=time \ arch=x86-64 prefix=/windows/mingw64 gtkdir=/windows/mingw64 host=x86_64-w64-mingw32 +elif [ "$TYPE" == "steamrt" ]; then + scons ctool=$CC cxxtool=$CXX boostdir=/usr/local/include boostlibdir=/usr/local/lib extra_flags_config=-lrt \ + cxx_std=$CXXSTD opt="$OPT" strict="$STRICT" nls=false enable_lto="$LTO" sanitize="$SAN" jobs=2 --debug=time \ + build=release else SECONDS=0