1- FROM ubuntu:16.04
1+ ARG UBUNTU_VERSION=16.04
2+ FROM ubuntu:${UBUNTU_VERSION}
3+ ARG UBUNTU_VERSION
24
35ARG THREADS=1
46ARG QT_VERSION=v5.15.3-lts-lgpl
7+ ARG DEBIAN_FRONTEND=noninteractive
58
69ENV CFLAGS="-fPIC"
710ENV CPPFLAGS="-fPIC"
811ENV CXXFLAGS="-fPIC"
912ENV SOURCE_DATE_EPOCH=1397818193
1013
1114RUN apt update && \
15+ if [ "$UBUNTU_VERSION" = "18.04" ]; then \
16+ export BUILD_DEPS="build-essential libpng-dev libx11-xcb-dev libxext-dev"; \
17+ else \
18+ export BUILD_DEPS="libpng12-dev"; \
19+ fi && \
1220 apt install -y automake autopoint bison gettext git gperf libgl1-mesa-dev libglib2.0-dev \
13- libpng12-dev libpthread-stubs0-dev libsodium-dev libtool-bin libudev-dev libusb-1.0-0-dev mesa-common-dev \
14- pkg-config python wget xutils-dev
21+ libpthread-stubs0-dev libsodium-dev libtool-bin libudev-dev libusb-1.0-0-dev mesa-common-dev \
22+ pkg-config python wget xutils-dev $BUILD_DEPS
1523
1624RUN git clone -b xorgproto-2020.1 --depth 1 https://gitlab.freedesktop.org/xorg/proto/xorgproto && \
1725 cd xorgproto && \
@@ -194,9 +202,16 @@ RUN wget https://www.nlnetlabs.nl/downloads/unbound/unbound-1.13.2.tar.gz && \
194202 make -j$THREADS install && \
195203 rm -rf $(pwd)
196204
197- RUN rm /usr/lib/x86_64-linux-gnu/libX11.a && \
198- rm /usr/lib/x86_64-linux-gnu/libXext.a && \
199- rm /usr/lib/x86_64-linux-gnu/libX11-xcb.a && \
205+ RUN if [ "$(uname -m)" = "aarch64" ]; then \
206+ export LIBDIR="/usr/lib/aarch64-linux-gnu"; \
207+ export QT_PLATFORM="linux-aarch64-gnu-g++"; \
208+ else \
209+ export LIBDIR="/usr/lib/x86_64-linux-gnu"; \
210+ export QT_PLATFORM="linux-g++-64"; \
211+ fi && \
212+ rm $LIBDIR/libX11.a && \
213+ rm $LIBDIR/libXext.a && \
214+ rm $LIBDIR/libX11-xcb.a && \
200215 git clone git://code.qt.io/qt/qt5.git -b ${QT_VERSION} --depth 1 && \
201216 cd qt5 && \
202217 git clone git://code.qt.io/qt/qtbase.git -b ${QT_VERSION} --depth 1 && \
@@ -215,7 +230,7 @@ RUN rm /usr/lib/x86_64-linux-gnu/libX11.a && \
215230 sed -ri s/\(Libs:.*\)/\\1\ -lz/ /usr/local/lib/pkgconfig/freetype2.pc && \
216231 sed -ri s/\(Libs:.*\)/\\1\ -lXau/ /usr/local/lib/pkgconfig/xcb.pc && \
217232 sed -i s/\\/usr\\/X11R6\\/lib64/\\/usr\\/local\\/lib/ qtbase/mkspecs/linux-g++-64/qmake.conf && \
218- ./configure --prefix=/usr -platform linux-g++-64 -opensource -confirm-license -release -static -no-avx \
233+ ./configure --prefix=/usr -platform $QT_PLATFORM -opensource -confirm-license -release -static -no-avx \
219234 -opengl desktop -qpa xcb -xcb -xcb-xlib -feature-xlib -system-freetype -fontconfig -glib \
220235 -no-dbus -no-feature-qml-worker-script -no-linuxfb -no-openssl -no-sql-sqlite -no-kms -no-use-gold-linker \
221236 -qt-harfbuzz -qt-libjpeg -qt-libpng -qt-pcre -qt-zlib \
0 commit comments