123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150 |
- #!/bin/bash
- #
- # Copyright (c) Contributors to the Open 3D Engine Project.
- # For complete copyright and license terms please see the LICENSE at the root of this distribution.
- #
- # SPDX-License-Identifier: Apache-2.0 OR MIT
- #
- # TEMP_FOLDER and TARGET_INSTALL_ROOT get set from the pull_and_build_from_git.py script
- # Read the dependent 3P library paths from the arguments
- TIFF_PACKAGE_DIR=/data/workspace/o3de_tiff
- ZLIB_PACKAGE_DIR=/data/workspace/o3de_zlib
- OPENSSL_PACKAGE_DIR=/data/workspace/o3de_openssl
- set -euo pipefail
- MAKE_FLAGS=-j32
- echo "Building Qt5 from source with dependencies on"
- echo " " $TIFF_PACKAGE_DIR
- echo " " $ZLIB_PACKAGE_DIR
- echo " " $OPENSSL_PACKAGE_DIR
- # Base the Tiff of the dependent tiff O3DE package (static)
- TIFF_PREFIX=$TIFF_PACKAGE_DIR/tiff
- TIFF_INCDIR=$TIFF_PREFIX/include
- TIFF_LIBDIR=$TIFF_PREFIX/lib
- # Bring in the zlib dependency since Tiff is a static lib dependency
- ZLIB_PREFIX=$ZLIB_PACKAGE_DIR/zlib
- ZLIB_INCDIR=$ZLIB_PREFIX/include
- ZLIB_LIBDIR=$ZLIB_PREFIX/lib
- # Bring in the openssl dependency based
- OPENSSL_PREFIX=$OPENSSL_PACKAGE_DIR/OpenSSL
- OPENSSL_INCDIR=$OPENSSL_PREFIX/include
- OPENSSL_LIBDIR=$OPENSSL_PREFIX/lib
- BUILD_PATH=/data/workspace/build
- INSTALL_PATH=/data/workspace/qt
- [[ -d $BUILD_PATH ]] || mkdir $BUILD_PATH
- cd $BUILD_PATH
- echo Configuring Qt ...
- ../src/configure -prefix ${INSTALL_PATH} \
- -opensource \
- -nomake examples \
- -nomake tests \
- -confirm-license \
- -no-icu \
- -dbus \
- -no-separate-debug-info \
- -release \
- -force-debug-info \
- -qt-libpng \
- -qt-libjpeg \
- -no-feature-vnc \
- -no-feature-linuxfb \
- --tiff=system \
- -qt-zlib \
- -v \
- -no-cups \
- -no-glib \
- -no-feature-renameat2 \
- -no-feature-getentropy \
- -no-feature-statx \
- -no-feature-wayland-server \
- -qpa xcb \
- -qpa wayland \
- -xcb-xlib \
- -openssl \
- -I $TIFF_INCDIR \
- -I $ZLIB_INCDIR \
- -I $OPENSSL_INCDIR \
- -L $TIFF_LIBDIR \
- -L $ZLIB_LIBDIR \
- -L $OPENSSL_LIBDIR \
- -c++std c++1z \
- -fontconfig
- if [ $? -ne 0 ]
- then
- echo "Failed to configure Qt"
- exit 1
- fi
- echo Qt configured, building modules...
- qtarray=(qtbase qtgraphicaleffects qtimageformats qtsvg qttools qtx11extras)
- for qtlib in "${qtarray[@]}"; do
- echo Building $qtlib...
- make module-$qtlib $MAKE_FLAGS
- if [ $? -ne 0 ]
- then
- echo "Failed building Qt module $qtlib"
- exit 1
- fi
- echo Built $qtlib.
- done
- echo Finished building modules, installing...
- for qtlib in "${qtarray[@]}"; do
- echo Installing $qtlib...
- make module-$qtlib-install_subtargets
-
- if [ $? -ne 0 ]
- then
- echo "Failed installing Qt module $qtlib"
- exit 1
- fi
- echo $qtlib installed.
- done
- cd /data/workspace/qtwayland
- /data/workspace/build/qtbase/bin/qmake
- if [ $? -ne 0 ]
- then
- echo "qmake failed for qtwayland"
- exit 1
- fi
- make
- if [ $? -ne 0 ]
- then
- echo "make failed for qtwayland"
- exit 1
- fi
- make install
- if [ $? -ne 0 ]
- then
- echo "make install failed for qtwayland"
- exit 1
- fi
- rm ${INSTALL_PATH}/include/QtWaylandCompositor/5.15.1/QtWaylandCompositor/private/qwayland-server-qt-texture-sharing-unstable-v1.h
- cp /data/workspace/qtwayland/include/QtWaylandCompositor/5.15.1/QtWaylandCompositor/private/qwayland-server-qt-texture-sharing-unstable-v1.h ${INSTALL_PATH}/include/QtWaylandCompositor/5.15.1/QtWaylandCompositor/private/
- rm ${INSTALL_PATH}/include/QtWaylandCompositor/5.15.1/QtWaylandCompositor/private/wayland-qt-texture-sharing-unstable-v1-server-protocol.h
- cp /data/workspace/qtwayland/include/QtWaylandCompositor/5.15.1/QtWaylandCompositor/private/wayland-qt-texture-sharing-unstable-v1-server-protocol.h ${INSTALL_PATH}/include/QtWaylandCompositor/5.15.1/QtWaylandCompositor/private/
- echo Qt installed successfully!
|