diff --git a/Dockerfile b/Dockerfile index cd8b865c179a232d84748bd8bad41b8b8b67698e..ce50d46fc1f2dce3dc8445fc1655590baf6f5244 100644 --- a/Dockerfile +++ b/Dockerfile @@ -23,21 +23,11 @@ RUN echo "build ALL=(ALL) NOPASSWD: ALL" | tee -a /etc/sudoers USER build WORKDIR /home/build/ -# TODO: everything from this point could be done by the container and not the image -COPY clone-qt.sh /home/build -RUN ./clone-qt.sh - -ENV MAKEFLAGS=-j8 -COPY build-qt.sh /home/build -RUN ./build-qt.sh - -COPY build-qtbase-tests.sh /home/build -RUN ./build-qtbase-tests.sh - -COPY build-qtwayland-tests.sh /home/build -RUN ./build-qtwayland-tests.sh +ENV QT_DOCKERTEST_QT5_REV=dev ENV XDG_RUNTIME_DIR=/tmp ENV QT_QPA_PLATFORM=wayland -COPY test-qt.sh /home/build -CMD "./test-qt.sh" +ENV MAKEFLAGS=-j8 + +COPY scripts/ /home/build/scripts +CMD "./scripts/run.sh" diff --git a/clone-qt.sh b/clone-qt.sh deleted file mode 100755 index 48df6f8fcb54de4751e9ddb3a1f78c0638f34a84..0000000000000000000000000000000000000000 --- a/clone-qt.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -set -ex -qt5_rev=5.11 #maybe set this from the Dockerfile -qtwayland_rev=5.11 -rm -rf qt5 -mkdir qt5 -cd qt5 -git init -git remote add origin https://codereview.qt-project.org/qt/qt5.git -git fetch --depth 1 origin "$qt5_rev" -git checkout FETCH_HEAD - -git submodule update --init --depth 1 -- qtbase qtxmlpatterns qtdeclarative qtwayland - -cd qtwayland -git fetch --depth 1 origin "$qtwayland_rev" -git checkout FETCH_HEAD diff --git a/build-qt.sh b/scripts/build-qt.sh similarity index 89% rename from build-qt.sh rename to scripts/build-qt.sh index e2f9a833fde7d4faf9471e7a19d3d4f298cc10ca..b9e83fa655b2c793acbce8582bb338a54cd7b4ed 100755 --- a/build-qt.sh +++ b/scripts/build-qt.sh @@ -12,4 +12,4 @@ cd build-qt -nomake examples \ -nomake tests \ -feature-wayland-client -time make -ks module-qtwayland +make -ks module-qtwayland diff --git a/build-qtbase-tests.sh b/scripts/build-qtbase-tests.sh similarity index 100% rename from build-qtbase-tests.sh rename to scripts/build-qtbase-tests.sh diff --git a/build-qtwayland-tests.sh b/scripts/build-qtwayland-tests.sh similarity index 100% rename from build-qtwayland-tests.sh rename to scripts/build-qtwayland-tests.sh diff --git a/scripts/clone-qt.sh b/scripts/clone-qt.sh new file mode 100755 index 0000000000000000000000000000000000000000..0ae4eb7093423c5f78069ef7cb3f3e08148a4501 --- /dev/null +++ b/scripts/clone-qt.sh @@ -0,0 +1,20 @@ +#!/bin/bash +set -ex +qt5_rev=${QT_DOCKERTEST_QT5_REV:-5.11} +rm -rf qt5 +mkdir qt5 +cd qt5 +git init +git remote add origin https://codereview.qt-project.org/qt/qt5.git +git fetch --depth 1 origin "$qt5_rev" +git checkout FETCH_HEAD + +#proper shallow cloning doesn't work for debian stretch for some reason +#git submodule update --init --depth 1 -- qtbase qtxmlpatterns qtdeclarative qtwayland +git submodule update --init --depth 50 -- qtbase qtxmlpatterns qtdeclarative qtwayland + +if [[ -v QT_DOCKERTEST_QTWAYLAND_REV ]] ; then + cd qtwayland + git fetch --depth 1 origin "$QT_DOCKERTEST_QTWAYLAND_REV" + git checkout FETCH_HEAD +fi diff --git a/scripts/run.sh b/scripts/run.sh new file mode 100755 index 0000000000000000000000000000000000000000..15cfbb7bb24b43099c8c016b50f83b525eb1b091 --- /dev/null +++ b/scripts/run.sh @@ -0,0 +1,12 @@ +#!/bin/bash +set -ex +time scripts/clone-qt.sh +echo Finished cloning +time scripts/build-qt.sh +echo Finished building +time scripts/build-qtbase-tests.sh +echo Finished building qtbase tests +time scripts/build-qtwayland-tests.sh +echo Finished building qtwayland tests +time scripts/test-qt.sh +echo Finished testing diff --git a/test-qt.sh b/scripts/test-qt.sh similarity index 100% rename from test-qt.sh rename to scripts/test-qt.sh