1
mirror of https://invent.kde.org/network/falkon.git synced 2024-09-21 09:42:10 +02:00

Update AppImage build Dockerfile

This commit is contained in:
David Rosca 2018-05-07 11:42:57 +02:00
parent 7fce81feaa
commit 68ff092b4c
No known key found for this signature in database
GPG Key ID: EBC3FC294452C6D8
3 changed files with 79 additions and 21 deletions

View File

@ -25,7 +25,13 @@ RUN yum -y install \
alsa-lib-devel \ alsa-lib-devel \
libXi-devel \ libXi-devel \
libXtst-devel \ libXtst-devel \
libXrandr-devel libXrandr-devel \
xcb-util-keysyms-devel \
gperf \
flex \
bison \
libgcrypt-devel \
systemd-devel
RUN yum -y install devtoolset-4-gcc-c++ RUN yum -y install devtoolset-4-gcc-c++

View File

@ -237,7 +237,9 @@ libQt5WebEngine.so.5
libQt5WebEngineWidgets.so.5 libQt5WebEngineWidgets.so.5
libQt5Widgets.so.5 libQt5Widgets.so.5
libQt5X11Extras.so.5 libQt5X11Extras.so.5
libQt5XcbQpa.so.5" libQt5XcbQpa.so.5
libQt5Concurrent.so.5
libQt5Xml.so.5"
NEEDEDPLUGINSLIST="bearer NEEDEDPLUGINSLIST="bearer
generic generic

View File

@ -1,37 +1,87 @@
#!/usr/bin/env bash #!/usr/bin/env bash
set -e
NCPUS=$(getconf _NPROCESSORS_ONLN)
QT_INSTALL_URL="https://download.qt.io/official_releases/qt/5.10/5.10.1/qt-opensource-linux-x64-5.10.1.run" QT_INSTALL_URL="https://download.qt.io/official_releases/qt/5.10/5.10.1/qt-opensource-linux-x64-5.10.1.run"
EXTRA_CMAKE_MODULES_URL="https://download.kde.org/stable/frameworks/5.45/extra-cmake-modules-5.45.0.tar.xz"
KI18N_URL="https://download.kde.org/stable/frameworks/5.45/ki18n-5.45.0.tar.xz" FRAMEWORK_VERSION="5.45"
CMAKE_FRAMEWORKS_URL="https://download.kde.org/stable/frameworks/${FRAMEWORK_VERSION}"
MODULE_VERSION="${FRAMEWORK_VERSION}.0"
QTDIR="/root/Qt/5.10.1/gcc_64" QTDIR="/root/Qt/5.10.1/gcc_64"
trap "rm -rf *${MODULE_VERSION} *.tar.xz phonon* qt-installer setup.sh" EXIT 1 2
# Install Qt # Install Qt
cd /root cd /root
wget $QT_INSTALL_URL -O qt-installer wget $QT_INSTALL_URL -O qt-installer
chmod u+x qt-installer chmod u+x qt-installer
./qt-installer --script qt-installer-noninteractive.qs --platform minimal -v ./qt-installer --script qt-installer-noninteractive.qs --platform minimal -v || :
echo "export QTDIR=$QTDIR" > /root/env.sh echo "export QTDIR=$QTDIR" > /root/env.sh
NEEDED_MODULES="ki18n
kcoreaddons
kconfig
kwindowsystem
kauth
kcodecs
kguiaddons
kwidgetsaddons
kconfigwidgets
kdbusaddons
karchive
kitemviews
kiconthemes
knotifications
kcrash
kservice
kwallet
solid
sonnet
kcompletion
ktextwidgets
attica
kglobalaccel
kxmlgui
kbookmarks
kjobwidgets
kio"
moduleBuild() {
mkdir build && cd build
cmake -DBUILD_TESTING=OFF -DBUILD_QCH=OFF -DCMAKE_PREFIX_PATH=$QTDIR/lib/cmake -DCMAKE_INSTALL_PREFIX=$QTDIR -DCMAKE_INSTALL_LIBDIR=lib ..
make -j${NCPUS}
make install
}
# Install ECM # Install ECM
cd /root wget "${CMAKE_FRAMEWORKS_URL}/extra-cmake-modules-${MODULE_VERSION}.tar.xz" -O extra-cmake-modules.tar.xz
wget $EXTRA_CMAKE_MODULES_URL -O extra-cmake-modules.tar.xz
tar xf extra-cmake-modules.tar.xz tar xf extra-cmake-modules.tar.xz
cd extra-cmake-modules-* pushd extra-cmake-modules-${MODULE_VERSION}
mkdir build && cd build moduleBuild
cmake -DBUILD_TESTING=OFF -DBUILD_QCH=OFF -DCMAKE_PREFIX_PATH=$QTDIR/lib/cmake -DCMAKE_INSTALL_PREFIX=$QTDIR -DCMAKE_INSTALL_LIBDIR=lib .. popd
make && make install
# Install KI18n # Install PHONON
cd /root wget https://download.kde.org/stable/phonon/4.10.1/phonon-4.10.1.tar.xz -O phonon.tar.xz
wget $KI18N_URL -O ki18n.tar.xz tar xf phonon.tar.xz
tar xf ki18n.tar.xz pushd phonon-4.10.1
cd ki18n-*
mkdir build && cd build mkdir build && cd build
cmake -DBUILD_TESTING=OFF -DBUILD_QCH=OFF -DCMAKE_PREFIX_PATH=$QTDIR/lib/cmake -DCMAKE_INSTALL_PREFIX=$QTDIR -DCMAKE_INSTALL_LIBDIR=lib .. cmake \
make && make install -DCMAKE_INSTALL_PREFIX:PATH=$QTDIR \
-DCMAKE_INSTALL_LIBDIR:PATH=lib \
-DPLUGIN_INSTALL_DIR:PATH=$QTDIR/plugins \
-DPHONON_BUILD_PHONON4QT5=ON -DCMAKE_PREFIX_PATH=$QTDIR ..
make -j${NCPUS}
make install
popd
# Cleanup # Install RQUIRED MODULES
cd /root for MODULE_NAME in ${NEEDED_MODULES}; do
rm -r qt-installer* extra-cmake-modules* ki18n* setup.sh wget "${CMAKE_FRAMEWORKS_URL}/${MODULE_NAME}-${MODULE_VERSION}.tar.xz" -O ${MODULE_NAME}.tar.xz
tar xf ${MODULE_NAME}.tar.xz
pushd ${MODULE_NAME}-${MODULE_VERSION}
moduleBuild
popd
done