diff options
Diffstat (limited to 'docker')
-rwxr-xr-x | docker/entrypoint.sh (renamed from docker/focal/entrypoint.sh) | 0 | ||||
-rw-r--r-- | docker/jammy/Dockerfile (renamed from docker/focal/Dockerfile) | 29 | ||||
-rw-r--r-- | docker/jammy/test-android-no-qt.Dockerfile (renamed from docker/focal/test-android-no-qt.Dockerfile) | 4 | ||||
-rw-r--r-- | docker/jammy/test-android.Dockerfile (renamed from docker/focal/test-android.Dockerfile) | 12 | ||||
-rw-r--r-- | docker/jammy/test-baremetal.Dockerfile (renamed from docker/focal/test-baremetal.Dockerfile) | 4 | ||||
-rw-r--r-- | docker/jammy/test-qt4.Dockerfile (renamed from docker/focal/test-qt4.Dockerfile) | 6 | ||||
-rw-r--r-- | docker/jammy/test-qt6-static.Dockerfile (renamed from docker/focal/test-qt6-static.Dockerfile) | 25 | ||||
-rw-r--r-- | docker/leap/Dockerfile | 2 | ||||
-rw-r--r-- | docker/windowsservercore/Dockerfile | 18 |
9 files changed, 59 insertions, 41 deletions
diff --git a/docker/focal/entrypoint.sh b/docker/entrypoint.sh index 40bc5acb9..40bc5acb9 100755 --- a/docker/focal/entrypoint.sh +++ b/docker/entrypoint.sh diff --git a/docker/focal/Dockerfile b/docker/jammy/Dockerfile index df687f3a0..cdda42202 100644 --- a/docker/focal/Dockerfile +++ b/docker/jammy/Dockerfile @@ -1,7 +1,7 @@ # # Install Qt and Qbs for Linux # -FROM ubuntu:focal +FROM ubuntu:jammy LABEL Description="Ubuntu development environment for Qbs with Qt and various dependencies for testing Qbs modules and functionality" ARG QT_VERSION ARG QTCREATOR_VERSION @@ -29,10 +29,10 @@ RUN apt-get update -qq && \ usermod -a -G sudo ${USER_NAME} && \ echo "%devel ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers -COPY docker/focal/entrypoint.sh /sbin/entrypoint.sh +COPY docker/entrypoint.sh /sbin/entrypoint.sh ENTRYPOINT ["/sbin/entrypoint.sh"] -# Qbs build dependencies +# # Qbs build dependencies RUN apt-get update -qq && \ DEBIAN_FRONTEND="noninteractive" apt-get install -qq -y --no-install-recommends \ bison \ @@ -40,8 +40,8 @@ RUN apt-get update -qq && \ ca-certificates \ capnproto \ ccache \ - clang-8 \ - clang-tidy-8 \ + clang-15 \ + clang-tidy-15 \ cmake \ curl \ flex \ @@ -58,6 +58,7 @@ RUN apt-get update -qq && \ libprotobuf-dev \ libgrpc++-dev \ libxkbcommon-x11-0 \ + locales \ nanopb \ ninja-build \ nsis \ @@ -71,21 +72,27 @@ RUN apt-get update -qq && \ subversion \ unzip \ zip && \ - update-alternatives --install /usr/bin/clang clang /usr/bin/clang-8 100 && \ - update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-8 100 && \ - update-alternatives --install /usr/bin/clang-check clang-check /usr/bin/clang-check-8 100 && \ + update-alternatives --install /usr/bin/clang clang /usr/bin/clang-15 100 && \ + update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-15 100 && \ + update-alternatives --install /usr/bin/clang-check clang-check /usr/bin/clang-check-15 100 && \ update-alternatives --install /usr/bin/python python /usr/bin/python3 100 && \ - pip install beautifulsoup4 lxml protobuf pyyaml + pip install beautifulsoup4 lxml protobuf==3.19.1 pyyaml -ENV LLVM_INSTALL_DIR=/usr/lib/llvm-8 +# Set the locale +RUN sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && \ + locale-gen +ENV LANG en_US.UTF-8 +ENV LANGUAGE en_US:en +ENV LC_ALL en_US.UTF-8 +ENV LLVM_INSTALL_DIR=/usr/lib/llvm-15 # # Install Qt and Qbs for Linux from qt.io # COPY scripts/install-qt.sh install-qt.sh -RUN ./install-qt.sh --version ${QT_VERSION} qtbase qtdeclarative qtscript qttools qtx11extras qtscxml qt5compat icu && \ +RUN ./install-qt.sh --version ${QT_VERSION} qtbase qtdeclarative qttools qtx11extras qtscxml qt5compat icu && \ ./install-qt.sh --version ${QTCREATOR_VERSION} qtcreator && \ echo "export PATH=/opt/Qt/${QT_VERSION}/gcc_64/bin:/opt/Qt/Tools/QtCreator/bin:\${PATH}" > /etc/profile.d/qt.sh diff --git a/docker/focal/test-android-no-qt.Dockerfile b/docker/jammy/test-android-no-qt.Dockerfile index e1622043a..4e6dadf4f 100644 --- a/docker/focal/test-android-no-qt.Dockerfile +++ b/docker/jammy/test-android-no-qt.Dockerfile @@ -1,7 +1,7 @@ # # Android SDK/NDK for testing Qbs # -FROM ubuntu:focal +FROM ubuntu:jammy LABEL Description="Ubuntu test environment for Qbs for Android" # Allow colored output on command line. @@ -27,7 +27,7 @@ RUN apt-get update -qq && \ usermod -a -G sudo ${USER_NAME} && \ echo "%devel ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers -COPY docker/focal/entrypoint.sh /sbin/entrypoint.sh +COPY docker/entrypoint.sh /sbin/entrypoint.sh ENTRYPOINT ["/sbin/entrypoint.sh"] # Qbs build dependencies diff --git a/docker/focal/test-android.Dockerfile b/docker/jammy/test-android.Dockerfile index 31f4eb773..b17cee65b 100644 --- a/docker/focal/test-android.Dockerfile +++ b/docker/jammy/test-android.Dockerfile @@ -1,7 +1,7 @@ # # Android SDK/NDK + Qt for Android for testing Qbs # -FROM ubuntu:focal +FROM ubuntu:jammy LABEL Description="Ubuntu test environment for Qbs and Qt for Android" # Allow colored output on command line. @@ -27,7 +27,7 @@ RUN apt-get update -qq && \ usermod -a -G sudo ${USER_NAME} && \ echo "%devel ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers -COPY docker/focal/entrypoint.sh /sbin/entrypoint.sh +COPY docker/entrypoint.sh /sbin/entrypoint.sh ENTRYPOINT ["/sbin/entrypoint.sh"] # Qbs build dependencies @@ -37,10 +37,18 @@ RUN apt-get update -qq && \ curl \ libasan5 \ libglib2.0-0 \ + locales \ openjdk-8-jdk-headless \ p7zip-full \ unzip +# Set the locale +RUN sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen && \ + locale-gen +ENV LANG en_US.UTF-8 +ENV LANGUAGE en_US:en +ENV LC_ALL en_US.UTF-8 + ENV JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 RUN echo "export JAVA_HOME=${JAVA_HOME}" > /etc/profile.d/android.sh && \ echo "export PATH=${JAVA_HOME}/bin:\${PATH}" >> /etc/profile.d/android.sh diff --git a/docker/focal/test-baremetal.Dockerfile b/docker/jammy/test-baremetal.Dockerfile index 5bef208ca..774885797 100644 --- a/docker/focal/test-baremetal.Dockerfile +++ b/docker/jammy/test-baremetal.Dockerfile @@ -1,7 +1,7 @@ # # Baremetal toolchains for testing Qbs # -FROM ubuntu:focal +FROM ubuntu:jammy LABEL Description="Ubuntu baremetal test environment for Qbs" # Allow colored output on command line. @@ -27,7 +27,7 @@ RUN apt-get update -qq && \ usermod -a -G sudo ${USER_NAME} && \ echo "%devel ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers -COPY docker/focal/entrypoint.sh /sbin/entrypoint.sh +COPY docker/entrypoint.sh /sbin/entrypoint.sh ENTRYPOINT ["/sbin/entrypoint.sh"] # Install baremetal toolchains and Qbs runtime dependencies. diff --git a/docker/focal/test-qt4.Dockerfile b/docker/jammy/test-qt4.Dockerfile index e49e255f9..9fa8f5d6b 100644 --- a/docker/focal/test-qt4.Dockerfile +++ b/docker/jammy/test-qt4.Dockerfile @@ -1,7 +1,7 @@ # # Testing Qbs with qt4 # -FROM ubuntu:focal +FROM ubuntu:jammy LABEL Description="Ubuntu qt4 test environment for Qbs" # Allow colored output on command line. @@ -28,11 +28,11 @@ RUN apt-get update -qq && \ usermod -a -G sudo ${USER_NAME} && \ echo "%devel ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers -COPY docker/focal/entrypoint.sh /sbin/entrypoint.sh +COPY docker/entrypoint.sh /sbin/entrypoint.sh ENTRYPOINT ["/sbin/entrypoint.sh"] # Install baremetal toolchains and Qbs runtime dependencies. -RUN sudo add-apt-repository ppa:gezakovacs/ppa -y && \ +RUN sudo add-apt-repository ppa:ubuntuhandbook1/ppa -y && \ apt-get update -qq && \ apt-get install -qq -y \ build-essential \ diff --git a/docker/focal/test-qt6-static.Dockerfile b/docker/jammy/test-qt6-static.Dockerfile index 61316e372..37239fd9a 100644 --- a/docker/focal/test-qt6-static.Dockerfile +++ b/docker/jammy/test-qt6-static.Dockerfile @@ -1,7 +1,7 @@ # # Testing Qbs with static qt6 # -FROM ubuntu:focal +FROM ubuntu:jammy LABEL Description="Ubuntu static qt6 test environment for Qbs" ARG QT_VERSION ARG QTCREATOR_VERSION @@ -31,11 +31,11 @@ RUN apt-get update -qq && \ usermod -a -G sudo ${USER_NAME} && \ echo "%devel ALL = (ALL) NOPASSWD: ALL" >> /etc/sudoers -COPY docker/focal/entrypoint.sh /sbin/entrypoint.sh +COPY docker/entrypoint.sh /sbin/entrypoint.sh ENTRYPOINT ["/sbin/entrypoint.sh"] RUN wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null -RUN echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ focal main' | tee /etc/apt/sources.list.d/kitware.list >/dev/null +RUN echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ jammy main' | tee /etc/apt/sources.list.d/kitware.list >/dev/null RUN cat /etc/apt/sources.list.d/kitware.list RUN apt-get update -qq && \ @@ -43,8 +43,9 @@ RUN apt-get update -qq && \ build-essential \ git \ perl \ + clang-15 \ cmake \ - python \ + python3 \ zlib1g-dev \ libzstd-dev \ libdbus-1-dev \ @@ -56,6 +57,7 @@ RUN apt-get update -qq && \ libvulkan-dev \ libicu-dev \ libb2-dev \ + libclang-15-dev \ libsystemd-dev \ libfontconfig1-dev \ libfreetype6-dev \ @@ -101,6 +103,7 @@ RUN apt-get update -qq && \ libxcb-damage0-dev \ libxcb-dpms0-dev \ libgstreamer1.0-dev \ + llvm-15-dev \ apt-transport-https ENV QT_HOME="/home/${USER_NAME}/qt" @@ -119,7 +122,7 @@ USER root RUN cd ${QT_HOME}/static-build && cmake --install . -FROM ubuntu:focal +FROM ubuntu:jammy LABEL Description="Ubuntu static qt6 test environment for Qbs" ARG QT_VERSION ARG QTCREATOR_VERSION @@ -153,8 +156,8 @@ RUN apt-get update -qq && \ ca-certificates \ capnproto \ ccache \ - clang-8 \ - clang-tidy-8 \ + clang-15 \ + clang-tidy-15 \ cmake \ curl \ flex \ @@ -186,13 +189,13 @@ RUN apt-get update -qq && \ zip \ libb2-1 \ libpcre++ && \ - update-alternatives --install /usr/bin/clang clang /usr/bin/clang-8 100 && \ - update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-8 100 && \ - update-alternatives --install /usr/bin/clang-check clang-check /usr/bin/clang-check-8 100 && \ + update-alternatives --install /usr/bin/clang clang /usr/bin/clang-15 100 && \ + update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-15 100 && \ + update-alternatives --install /usr/bin/clang-check clang-check /usr/bin/clang-check-15 100 && \ update-alternatives --install /usr/bin/python python /usr/bin/python3 100 && \ pip install beautifulsoup4 lxml protobuf pyyaml -ENV LLVM_INSTALL_DIR=/usr/lib/llvm-8 +ENV LLVM_INSTALL_DIR=/usr/lib/llvm-15 # # Install Qbs for Linux from qt.io diff --git a/docker/leap/Dockerfile b/docker/leap/Dockerfile index 308f854ab..12f789e21 100644 --- a/docker/leap/Dockerfile +++ b/docker/leap/Dockerfile @@ -76,7 +76,7 @@ RUN zypper install -y \ # COPY scripts/install-qt.sh install-qt.sh -RUN ./install-qt.sh --version ${QT_VERSION} qtbase qtdeclarative qtscript qttools qtx11extras qtscxml qt5compat icu && \ +RUN ./install-qt.sh --version ${QT_VERSION} qtbase qtdeclarative qttools qtx11extras qtscxml qt5compat icu && \ ./install-qt.sh --version ${QTCREATOR_VERSION} qtcreator && \ echo "export PATH=/opt/Qt/${QT_VERSION}/gcc_64/bin:/opt/Qt/Tools/QtCreator/bin:\${PATH}" > /etc/profile.d/qt.sh diff --git a/docker/windowsservercore/Dockerfile b/docker/windowsservercore/Dockerfile index 50a1400ef..8fce9fa59 100644 --- a/docker/windowsservercore/Dockerfile +++ b/docker/windowsservercore/Dockerfile @@ -6,7 +6,7 @@ LABEL Description="Windows Server Core development environment for Qbs with Qt, RUN reg add "HKLM\SOFTWARE\Microsoft\Windows\Windows Error Reporting" /v Disabled /t REG_DWORD /d 1 /f RUN reg add "HKLM\SOFTWARE\Microsoft\Windows\Windows Error Reporting" /v DontShowUI /t REG_DWORD /d 1 /f -# Install VS from the website since chocolatey has broken .NET 4.8 (dotnetfx package) which is a +# Install VS 2019 from the website since chocolatey has broken .NET 4.8 (dotnetfx package) which is a # dependency for the visualstudio2019buildtools package RUN powershell -NoProfile -ExecutionPolicy Bypass -Command \ Invoke-WebRequest "https://aka.ms/vs/16/release/vs_community.exe" \ @@ -14,18 +14,17 @@ RUN powershell -NoProfile -ExecutionPolicy Bypass -Command \ RUN "%TEMP%\vs_community.exe" --quiet --wait --norestart --noUpdateInstaller \ --add Microsoft.VisualStudio.Component.VC.Tools.x86.x64 \ - --add Microsoft.VisualStudio.Component.Windows10SDK.18362 + --add Microsoft.VisualStudio.Component.Windows10SDK.20348 RUN powershell -NoProfile -ExecutionPolicy Bypass -Command \ $Env:chocolateyVersion = '0.10.15' ; \ $Env:chocolateyUseWindowsCompression = 'false' ; \ "[Net.ServicePointManager]::SecurityProtocol = \"tls12, tls11, tls\"; iex ((New-Object System.Net.WebClient).DownloadString('http://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin" -ARG QBS_VERSION -RUN choco install -y python && \ +RUN choco install -y python --version 3.9 && \ choco install -y 7zip --version 19.0 && \ choco install -y git --version 2.24.0 --params "/GitAndUnixToolsOnPath" && \ - choco install -y qbs --version %QBS_VERSION% + choco install -y vswhere # for building the documentation RUN pip install beautifulsoup4 lxml @@ -42,13 +41,14 @@ RUN certutil -generateSSTFromWU roots.sst && \ ARG QT_VERSION COPY scripts/install-qt.sh install-qt.sh -RUN bash -c "./install-qt.sh -d /c/Qt --version ${QT_VERSION} --toolchain win64_msvc2019_64 qtbase qtdeclarative qttools qtscript" +RUN bash -c "./install-qt.sh -d /c/Qt --version ${QT_VERSION} --toolchain win64_msvc2019_64 qtbase qtdeclarative qttools qt5compat" ENV QTDIR64=C:\\Qt\\${QT_VERSION}\\msvc2019_64 -RUN bash -c "./install-qt.sh -d /c/Qt --version ${QT_VERSION} --toolchain win32_msvc2019 qtbase qtdeclarative qttools qtscript" -ENV QTDIR=C:\\Qt\\${QT_VERSION}\\msvc2019 +########### Install Qbs ############# +ARG QTCREATOR_VERSION +RUN bash -c "./install-qt.sh -d /c/Qt --version ${QTCREATOR_VERSION} qtcreator" +RUN setx PATH "C:\\Qt\\Tools\\QtCreator\\bin;%PATH%" RUN qbs setup-toolchains --detect && \ qbs setup-qt %QTDIR64%/bin/qmake.exe qt64 && \ - qbs setup-qt %QTDIR%/bin/qmake.exe qt && \ qbs config defaultProfile qt64 |