diff options
author | Wouter Deconinck <wdconinc@gmail.com> | 2022-11-20 19:03:52 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-20 20:03:52 -0500 |
commit | b9b93ce272d41e8960ba5443563d4059e5805c1b (patch) | |
tree | 29f5dc0fd75bd0efe37110ac45fc7489d380e034 /var/spack/repos/builtin/packages/qt-quick3d/package.py | |
parent | 87cb9760ceffc5ee4c96b2ffbad71e087d530f4f (diff) | |
download | spack-b9b93ce272d41e8960ba5443563d4059e5805c1b.tar.gz spack-b9b93ce272d41e8960ba5443563d4059e5805c1b.tar.bz2 spack-b9b93ce272d41e8960ba5443563d4059e5805c1b.tar.xz spack-b9b93ce272d41e8960ba5443563d4059e5805c1b.zip |
qt6: new packages (#29555)
* qt6: initial commit of several basic qt6 packages
* Qt6: fix style issues
* [qt6] fix style issues, trailing spaces
* [qt6] rename to qt-* ecosystem; remove imports
* [qt6] rename dependencies; change version strings
* [qt6] list_urls
* [qt6] homepage links
* [qt6] missing closing quotes failed style check
* qt-declarative: use private _versions
Co-authored-by: Seth R. Johnson <johnsonsr@ornl.gov>
* qt-quick3d, qt-quicktimeline, qt-shadertools: use private _versions
* qt-base: rework feature defines and use run_tests
* qt: new version 6.2.4
* flake8 whitespace before comma
* qt-base: variant opengl when +gui
Co-authored-by: Seth R. Johnson <johnsonsr@ornl.gov>
* qt6: rebase and apply new black style
* qt6: apply style isort fixes
* qt6: new version 6.3.0 and 6.3.1
* qt6: add 6.3.0 and 6.3.1 to versions list
* qt6: multi-argument join_path
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
* qt-base: fix isort
* qt-shadertools: no cmake_args needed
* qt-declarative: imports up front
* qt-quick3d: fix import
* qt-declarative: remove useless cmake_args
* qt-shadertools: imports and join_path fixes
* qt-quick3d: join_path fixes
* qt-declarative: join_path fixes
* Update features based on gui usage
* Update dependencies, cmake args, mac support
* Update features based on linux
* More updates
* qt-base: fix style
* qt-base: archive_files join_path
* qt-base: new version 6.3.2
* qt-{declarative,quick3d,quicktimeline,shadertools}@6.3.2
* qt-base: require libxcb@1.13: and use system xcb_xinput when on linux
Co-authored-by: Seth R. Johnson <johnsonsr@ornl.gov>
Co-authored-by: Adam J. Stewart <ajstewart426@gmail.com>
Diffstat (limited to 'var/spack/repos/builtin/packages/qt-quick3d/package.py')
-rw-r--r-- | var/spack/repos/builtin/packages/qt-quick3d/package.py | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/var/spack/repos/builtin/packages/qt-quick3d/package.py b/var/spack/repos/builtin/packages/qt-quick3d/package.py new file mode 100644 index 0000000000..6f621201f5 --- /dev/null +++ b/var/spack/repos/builtin/packages/qt-quick3d/package.py @@ -0,0 +1,67 @@ +# Copyright 2013-2022 Lawrence Livermore National Security, LLC and other +# Spack Project Developers. See the top-level COPYRIGHT file for details. +# +# SPDX-License-Identifier: (Apache-2.0 OR MIT) + + +import os +import shutil + +from spack.package import * + + +class QtQuick3d(CMakePackage): + """A new module and API for defining 3D content in Qt Quick.""" + + homepage = "https://www.qt.io" + url = "https://github.com/qt/qtquick3d/archive/refs/tags/v6.2.3.tar.gz" + list_url = "https://github.com/qt/qtquick3d/tags" + + maintainers = ["wdconinc", "sethrj"] + + version("6.3.2", sha256="a3ec81393f1cd45eb18ee3d47582998679eef141b856bdd2baa2d41f019a0eea") + version("6.3.1", sha256="79f0813ff776dc2aa07a8513ecd9d550dd8d449dc8fcd834fb0c9b22ea4a1893") + version("6.3.0", sha256="413dec87828155ea0c0424e6b40c777bf0710f1ffaf98969c5d8b19ad3992823") + version("6.2.4", sha256="7292ed4373a92913c6811f2faa5191f0426f84bd93a3f6eb7d54b62626b56db5") + version("6.2.3", sha256="35d06edbdd83b7d781b70e0bada18911fa9b774b6403589d5b21813a73584d80") + + generator = "Ninja" + + # Changing default to Release for typical use in HPC contexts + variant( + "build_type", + default="Release", + values=("Release", "Debug", "RelWithDebInfo", "MinSizeRel"), + description="CMake build type", + ) + + depends_on("cmake@3.16:", type="build") + depends_on("ninja", type="build") + depends_on("pkgconfig", type="build") + depends_on("python", when="@5.7.0:", type="build") + + depends_on("assimp@5.0.1:") + + _versions = ["6.3.2", "6.3.1", "6.3.0", "6.2.4", "6.2.3"] + for v in _versions: + depends_on("qt-base@" + v, when="@" + v) + depends_on("qt-declarative@" + v, when="@" + v) + depends_on("qt-quicktimeline@" + v, when="@" + v) + + def patch(self): + vendor_dir = join_path(self.stage.source_path, "src", "3rdparty") + vendor_deps_to_keep = ["xatlas"] + with working_dir(vendor_dir): + for dep in os.listdir(): + if os.path.isdir(dep): + if dep not in vendor_deps_to_keep: + shutil.rmtree(dep) + + def cmake_args(self): + args = [ + # Qt components typically install cmake config files in a single prefix + self.define("QT_ADDITIONAL_PACKAGES_PREFIX_PATH", self.spec["qt-declarative"].prefix), + self.define("FEATURE_quick3d_assimp", True), + self.define("FEATURE_system_assimp", True), + ] + return args |