Skip to content

Instantly share code, notes, and snippets.

@fgsahoward
Created June 1, 2018 13:43
Show Gist options
  • Save fgsahoward/8ff628a2694a76501a4141723e187545 to your computer and use it in GitHub Desktop.
Save fgsahoward/8ff628a2694a76501a4141723e187545 to your computer and use it in GitHub Desktop.
Qt WebAsm Arch Linux Dockerfile
#!/usr/bin/env bash
function getWebAsmBranches
{
perl init-repository
git -C qtbase checkout origin/wip/webassembly
git -C qtdeclarative checkout origin/wip/webassembly
git -C qtwebsockets checkout origin/wip/webassembly
}
git clone -b wip/webassembly --depth 1 http://code.qt.io/qt/qt5.git
pushd qt5
getWebAsmBranches
popd
FROM base/archlinux:latest AS base
RUN pacman -Sy --noconfirm binutils perl python libxcb clang emscripten git make cmake qbs
ENV PATH="/usr/lib/emscripten:${PATH}"
FROM base AS repos-configured
COPY ./configure-qt5-repos.sh ./
RUN ./configure-qt5-repos.sh
FROM repos-configured AS repos-built
WORKDIR qt5
RUN mkdir /root/qtbuild
RUN ./configure -xplatform emscripten --prefix=/root/qtbuild -release -static -no-thread -nomake tests -nomake examples -no-dbus -no-headersclean -system-libpng -no-ssl -no-warnings-are-errors -opensource -confirm-license -skip qt3d -skip qtlocation -skip qtvirtualkeyboard
RUN make -j 8
RUN make install
RUN cp /qt5/qtxmlpatterns/bin/qtloader.js /root/qtbuild/plugins/platforms/
RUN cp /qt5/qtxmlpatterns/bin/qtlogo.svg /root/qtbuild/plugins/platforms/
ENV PATH="/root/qtbuild/bin:${PATH}"
FROM repos-built AS icsupdate-build
COPY ./icsupdate.tar.gz /root/
COPY ./sqlite.tar.gz /root/
RUN mkdir /root/sqlitebuild
WORKDIR /root/sqlitebuild
RUN tar xzf ../sqlite.tar.gz
RUN gcc -c sqlite3.c
RUN ar rcs libsqlite3.a sqlite3.o
WORKDIR /root/
RUN tar xzf icsupdate.tar.gz
WORKDIR /root/ICSUpdate
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment