Steve Pham 2c3e193cb6 Add support for a wayland variant of Qt for Linux (#266) 1 тиждень тому
..
Platform 958ba3beb6 Security update for Qt 3 роки тому
docker d18783315a Updated Qt conversion to build on mac/linux. 3 роки тому
Dockerfile 2c3e193cb6 Add support for a wayland variant of Qt for Linux (#266) 1 тиждень тому
FindQt.cmake 958ba3beb6 Security update for Qt 3 роки тому
FindQt.cmake.mac 95a16e46bf Qt Package fix for Mac (#113) 3 роки тому
FindQt.cmake.wayland 2c3e193cb6 Add support for a wayland variant of Qt for Linux (#266) 1 тиждень тому
LICENSE 958ba3beb6 Security update for Qt 3 роки тому
QT-NOTICE.TXT 958ba3beb6 Security update for Qt 3 роки тому
README.md 2c3e193cb6 Add support for a wayland variant of Qt for Linux (#266) 1 тиждень тому
build-darwin.sh 95a16e46bf Qt Package fix for Mac (#113) 3 роки тому
build-linux.sh 2c3e193cb6 Add support for a wayland variant of Qt for Linux (#266) 1 тиждень тому
build-windows.bat 958ba3beb6 Security update for Qt 3 роки тому
build_config.json 2c3e193cb6 Add support for a wayland variant of Qt for Linux (#266) 1 тиждень тому
build_config_wayland.json 2c3e193cb6 Add support for a wayland variant of Qt for Linux (#266) 1 тиждень тому
copy_platform_cmakes.py 95a16e46bf Qt Package fix for Mac (#113) 3 роки тому
docker_build_qt_linux.sh 2c3e193cb6 Add support for a wayland variant of Qt for Linux (#266) 1 тиждень тому
qt-image-format-windows.patch 958ba3beb6 Security update for Qt 3 роки тому
qt-linux.patch f2df42bcb6 Apply Fix for Qt running in Snap Packages (#214) 1 рік тому
qt-mac.patch f2df42bcb6 Apply Fix for Qt running in Snap Packages (#214) 1 рік тому

README.md

QT O3DE 3rd Party Package

Prerequisites

  1. Python 3.10+ or higher installed
  2. Python package boto3
  3. 3p-package-scripts cloned locally at the same directory level as the local 3p-package-source

Updating

When creating updates to the package, the rev number needs to be bumped as a minimum in order to represent a new package. If a new version of Qt is being used as the base source code, then the full version number needs to be updated.

In build_config.json, the following lines control the git url and tag/commit that is used to pull the source code from.

    "git_url": "https://github.com/o3de/qt5.git",
    "git_tag": "5.15.1-o3de",
    "git_commit": "b3a1a6947422928e8aecb14ad607199e9720d266",

To control the version and rev of the package, the entry for package_version is used. For Qt, the package versioning is specific to the target platform, so this key resides inside each target platform's definition block.

        "Windows": {
            "Windows": {
                "package_version": "5.15.2-rev7",
                ...
            }
        },
        "Darwin": {
            "Mac": {
                ...
                "package_version": "5.15.2-rev8",
                ...
            }
        },
        "Linux": {
            "Linux": {
                "package_version": "5.15.2-rev10",
                ...
            },
	        "Linux-aarch64": {
                "package_version": "5.15.2-rev10",
                ...
            }
        }

The package version controls path and filename of the target package. The target file name will be built following the pattern of qt-${package_version}-${platform_lower} where platform_lower will be one of the following depending on the target platform/architecture:

  1. windows
  2. linux
  3. linux-aarch64
  4. mac

Then, depending on the platform, the package manifest file needs to be updated with this new folder name. Each manifest file is specific to the HOST platform that the package is being built on. (In the case of Linux, if the architecture is aarch64, then the package manifest file has an additional -aarch64 suffix to the name).

The values in the corresponding build_from_source and build_from_folder needs to be updated to reflect the new name of the package if changed.

Building

The following build command line examples are based on the current values of the package names by platform. If a new version is being being built, update the command lines below as needed.

Windows

python ..\3p-package-scripts\o3de_package_scripts\build_package.py --search_path . qt-5.15.2-rev10-windows

Linux

amd64

python3 ../3p-package-scripts/o3de_package_scripts/build_package.py --search_path . qt-5.15.2-rev10-linux

aarch64

python3 ../3p-package-scripts/o3de_package_scripts/build_package.py --search_path . qt-5.15.2-rev10-linux-aarch64

Mac

python3 ../3p-package-scripts/o3de_package_scripts/build_package.py --search_path . qt-5.15.2-rev8-mac