mirror of
http://code.qt.io/yocto/meta-qt6.git
synced 2026-01-01 13:58:07 +00:00
squish: include Squish recipes for Qt 6.9.1
Bring all squish changes from 6.8 branch, updated to use installer for Qt 6.9. Change-Id: I5dec2890ca244176349581fc0ecd7b6d3f1de1b7 Reviewed-by: Ari Parkkila <ari.parkkila@qt.io>
This commit is contained in:
parent
fb21821c4d
commit
3200100d62
|
|
@ -39,6 +39,11 @@ INSANE_SKIP:append:pn-nativesdk-clang = " buildpaths"
|
|||
PREFERRED_ARM_INSTRUCTION_SET ?= "thumb"
|
||||
ARM_INSTRUCTION_SET = "${PREFERRED_ARM_INSTRUCTION_SET}"
|
||||
|
||||
# build squish
|
||||
USE_SQUISH = "1"
|
||||
SQUISH_MIRROR = "https://ci-files01-hki.ci.qt.io/input/squish/releasepackages"
|
||||
SQUISH_LICENSE_KEY = "qt-srv-19.intra.qt.io:49345"
|
||||
|
||||
# enable webengine with commercial/proprietary features
|
||||
DISTRO_FEATURES:append = " webengine"
|
||||
PACKAGECONFIG:append:pn-qtwebengine = " proprietary-codecs"
|
||||
|
|
|
|||
149
licenses/Squish-Commercial-License-Agreement
Normal file
149
licenses/Squish-Commercial-License-Agreement
Normal file
|
|
@ -0,0 +1,149 @@
|
|||
Squish Commercial License Agreement
|
||||
Agreement version 3.1
|
||||
|
||||
This Squish Commercial License Agreement ("Agreement") is made by and
|
||||
between The Qt Company Oy ("The Qt Company"), and you (either an
|
||||
individual or a legal entity) ("Licensee").
|
||||
|
||||
|
||||
IMPORTANT - READ CAREFULLY:
|
||||
|
||||
1. The Qt Company developed and originated Squish including source code,
|
||||
documentation and example programs ("Licensed Software"). The Licensed
|
||||
Software is protected by copyright laws and international copyright
|
||||
treaties, as well as other intellectual property laws and
|
||||
treaties. The Qt Company retains all rights not expressly granted.
|
||||
|
||||
2. By installing, copying, or otherwise using the Licensed Software,
|
||||
Licensee agrees to be bound by the terms of this Agreement. If
|
||||
Licensee does not agree to the terms of this Agreement, Licensee
|
||||
should not install, copy, or otherwise use the Licensed Software. In
|
||||
addition, by installing, copying, or otherwise using any updates or
|
||||
other components of the Licensed Software that Licensee receives
|
||||
separately as part of the Licensed Software ("Updates"), Licensee
|
||||
agrees to be bound by any additional license terms that accompany such
|
||||
Updates. If Licensee does not agree to the additional license terms
|
||||
that accompany such Updates, Licensee may not install, copy, or
|
||||
otherwise use such Updates.
|
||||
|
||||
3. Upon Licensee's acceptance of the terms and conditions of this
|
||||
Agreement, The Qt Company grants Licensee the right to use the Licensed
|
||||
Software during the agreed validity period as set forth in the
|
||||
respective License Certificate ("License Term"), solely for Licensee's
|
||||
internal business purposes in the manner provided below.
|
||||
|
||||
4a. If the license, as specified in the license certificate, is a
|
||||
Floating Tester Subscription or Floating Execution Subscription,
|
||||
Licensee may install the Licensed Software on an unlimited amount of
|
||||
computers. Concurrent use of the installed Licensed Software is
|
||||
limited to the number of floating seats purchased as specified in the
|
||||
license certificate and to persons employed or contracted by the
|
||||
Licensee. If the license is a Floating Execution License, Licensee may
|
||||
only use the installed Licensed Software for executing tests and
|
||||
processing test results, but not for developing, debugging and
|
||||
maintaining tests.
|
||||
|
||||
4b. If the license, as specified in the license certificate, is a User
|
||||
Node-Locked Subscription, Licensee may install the Licensed Software
|
||||
for a single user on a single physical computer. Installation and
|
||||
usage in virtual machines or the use via remote access is prohibited.
|
||||
|
||||
5. Licensee may modify the Licensed Software except for altering or
|
||||
removing any details of ownership, copyright, trademark or other
|
||||
property right connected with the Licensed Software.
|
||||
|
||||
6. Licensee may not distribute the Licensed Software, modified or
|
||||
unmodified, separately or as part of any software package.
|
||||
|
||||
7. Upon expiry of the initially agreed License Term, the respective
|
||||
License Terms shall be automatically extended to one or more
|
||||
extensions of previous License Term as agreed between the Parties
|
||||
("Renewal Term"), unless and until either Party notifies the other
|
||||
Party in writing, or any other method acceptable to The Qt Company, that it
|
||||
does not wish to continue the License Term, such notification to be
|
||||
provided to the other Party no less than thirty (30) days before
|
||||
expiry of the respective License Term. Unless otherwise agreed between
|
||||
the Parties, Renewal Term shall be of equal length with the initial
|
||||
License Term.
|
||||
|
||||
Any such Renewal Term shall be subject to License Fees agreed between
|
||||
the Parties or, if no advance agreement exists, subject to The Qt Company
|
||||
standard pricing applicable at the commencement date of any such
|
||||
Renewal Term.
|
||||
|
||||
Any price or other term specified for a Renewal Term shall be valid
|
||||
only for the specified time.
|
||||
|
||||
|
||||
WARRANTY DISCLAIMER
|
||||
|
||||
8. The Licensed Software is licensed to Licensee "as is". To the
|
||||
maximum extent permitted by applicable law, The Qt Company on behalf of
|
||||
itself and its suppliers, disclaims all warranties and conditions,
|
||||
either expressed or implied, including, but not limited to, implied
|
||||
warranties of merchantability, fitness for a particular purpose, title
|
||||
and non-infringement with regard to the Licensed Software.
|
||||
|
||||
|
||||
LIMITATION OF LIABILITY
|
||||
|
||||
9. If, The Qt Company's warranty disclaimer notwithstanding, The Qt Company is
|
||||
held liable to Licensee, whether in contract, tort or any other legal
|
||||
theory, based on the Licensed Software, The Qt Company's entire liability
|
||||
to Licensee and Licensee's exclusive remedy shall be, at The Qt Company's
|
||||
option, either (A) return of the price Licensee paid for the Licensed
|
||||
Software, or (B) repair or replacement of the Licensed Software,
|
||||
provided Licensee returns to The Qt Company all copies of the Licensed
|
||||
Software as originally delivered to Licensee. The Qt Company shall not
|
||||
under any circumstances be liable to Licensee based on failure of the
|
||||
Licensed Software if the failure resulted from accident, abuse or
|
||||
misapplication, nor shall The Qt Company under any circumstances be liable
|
||||
for special damages, punitive or exemplary damages, damages for loss
|
||||
of profits or interruption of business or for loss or corruption of
|
||||
data. Any award of damages from The Qt Company to Licensee shall not exceed
|
||||
the total amount Licensee has paid to The Qt Company in connection with
|
||||
this Agreement.
|
||||
|
||||
|
||||
SUPPORT AND UPDATES
|
||||
|
||||
10. Licensee will be eligible to receive email based software support
|
||||
and access to Downloads and Updates to the Licensed Software for the
|
||||
License Term, in accordance with The Qt Company's then current policies and
|
||||
procedures, if any. Such policies and procedures may be changed from
|
||||
time to time.
|
||||
|
||||
|
||||
PRIVACY
|
||||
|
||||
11. Licensee acknowledges and agrees that for the purpose of this
|
||||
agreement, The Qt Company may collect, use, transfer and disclose personal
|
||||
data pertaining to Users as well as any other employees and directors
|
||||
of the Licensee and its contractors relevant for carrying out the
|
||||
intent of this agreement. Such personal data may be collected from the
|
||||
Licensee or directly from the relevant individuals. The parties
|
||||
acknowledge that with regard to such personal data processed
|
||||
hereunder, The Qt Company shall be regarded as the Data Controller under
|
||||
the applicable data protection legislation. The Qt Company shall process
|
||||
any such personal data in accordance with its privacy policies and
|
||||
practices, which will comply with all applicable requirements of the
|
||||
General Data Protection Regulation (GDPR) and any national
|
||||
implementing laws and regulations.
|
||||
|
||||
|
||||
GENERAL PROVISIONS
|
||||
|
||||
12. This Agreement may only be modified in writing signed by
|
||||
authorized representatives of Licensee and The Qt Company. In case of a
|
||||
conflict between this Agreement and the terms of any purchase order or
|
||||
other ordering document, this Agreement shall prevail. If any provision
|
||||
of this Agreement is found void or unenforceable, the remainder will
|
||||
remain valid and enforceable according to its terms. If any remedy
|
||||
provided is determined to have failed for its essential purpose, all
|
||||
limitations of liability and exclusions of damages set forth in this
|
||||
Agreement shall remain in effect.
|
||||
|
||||
13. This Agreement shall be construed, interpreted and governed by the
|
||||
laws of Finland, the legal venue to be Helsinki District Court. The Qt
|
||||
Company reserves all rights not specifically granted in this
|
||||
Agreement.
|
||||
|
|
@ -12,4 +12,5 @@ RDEPENDS:${PN} += " \
|
|||
qmlcompilerplus \
|
||||
qtinsighttracker \
|
||||
qtvncserver \
|
||||
${@'squish' if bb.utils.to_boolean(d.getVar('USE_SQUISH')) else ''} \
|
||||
"
|
||||
|
|
|
|||
116
recipes-qt/squish/squish_9.0.1.bb
Normal file
116
recipes-qt/squish/squish_9.0.1.bb
Normal file
|
|
@ -0,0 +1,116 @@
|
|||
LICENSE = "Squish-Commercial-License-Agreement"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=a25acc1c5f693af9921102a049958aa8"
|
||||
|
||||
EXCLUDE_FROM_WORLD = "1"
|
||||
|
||||
inherit qt6-qmake
|
||||
|
||||
# location where Squish release packages can be downloaded
|
||||
SQUISH_MIRROR ?= ""
|
||||
SQUISH_LICENSE_KEY ?= ""
|
||||
|
||||
python __anonymous() {
|
||||
if not (d.getVar('SQUISH_MIRROR') and d.getVar('SQUISH_LICENSE_KEY')):
|
||||
raise bb.parse.SkipRecipe("You need to define SQUISH_MIRROR and SQUISH_LICENSE_KEY in the config", d)
|
||||
}
|
||||
|
||||
SQUISH_INSTALLER = "squish-${PV}-qt69x-linux64.run"
|
||||
|
||||
SRC_URI = "\
|
||||
${SQUISH_MIRROR}/${SQUISH_INSTALLER};name=squish \
|
||||
${SQUISH_MIRROR}/squish-${PV}-qt-embedded-src.tar.gz;name=qt-squish-embedded \
|
||||
"
|
||||
|
||||
SRC_URI[squish.sha256sum] = "4bad3059b3c24e1cbedea4ae261e0a1789ac0c4b74083c5216c8e4434354c53c"
|
||||
SRC_URI[qt-squish-embedded.sha256sum] = "91201fcd038e48d7fefc68a3ad25dc6814999129679600e130e5451cd1a37d4f"
|
||||
|
||||
S = "${WORKDIR}/squish-${PV}-qt-embedded-src"
|
||||
B = "${WORKDIR}/build"
|
||||
|
||||
DEPENDS += "\
|
||||
qtbase \
|
||||
qt5compat \
|
||||
"
|
||||
|
||||
PACKAGECONFIG ?= "\
|
||||
appman \
|
||||
qml \
|
||||
${@bb.utils.filter('DISTRO_FEATURES', 'wayland', d)} \
|
||||
"
|
||||
PACKAGECONFIG[appman] = ",,qtapplicationmanager"
|
||||
PACKAGECONFIG[qml] = ",,qtdeclarative qtdeclarative-native"
|
||||
PACKAGECONFIG[wayland] = "--enable-wayland,--disable-wayland,qtwayland qtwayland-native wayland wayland-native"
|
||||
|
||||
lcl_maybe_fortify = ""
|
||||
OE_QMAKE_PATH_HOST_LIBEXECS = "${STAGING_DIR_NATIVE}/${QT6_INSTALL_LIBEXECDIR}"
|
||||
|
||||
do_install_squish[cleandirs] = "${WORKDIR}/squish"
|
||||
do_install_squish[network] = "1"
|
||||
do_install_squish() {
|
||||
SQUISH_INSTALLER=${UNPACKDIR}/${SQUISH_INSTALLER}
|
||||
if [ ! -e $SQUISH_INSTALLER ]; then
|
||||
SQUISH_INSTALLER=${WORKDIR}/${SQUISH_INSTALLER}
|
||||
fi
|
||||
chmod +x $SQUISH_INSTALLER
|
||||
TMPDIR=${WORKDIR}/tmp XDG_RUNTIME_DIR=${WORKDIR}/tmp $SQUISH_INSTALLER \
|
||||
-platform minimal unattended=1 targetdir=${WORKDIR}/squish ide=0 \
|
||||
licensekey=${SQUISH_LICENSE_KEY}
|
||||
}
|
||||
|
||||
do_configure() {
|
||||
${S}/configure \
|
||||
--disable-all \
|
||||
--enable-qmake-config \
|
||||
--enable-qt \
|
||||
--enable-server \
|
||||
--with-qmake=${STAGING_DIR_NATIVE}${QT6_INSTALL_BINDIR}/qmake \
|
||||
--with-squishidl=${WORKDIR}/squish/bin/squishidl \
|
||||
${PACKAGECONFIG_CONFARGS}
|
||||
}
|
||||
|
||||
do_compile() {
|
||||
./build ${@oe.utils.parallel_make_argument(d, '-j%d')}
|
||||
}
|
||||
|
||||
do_install() {
|
||||
DESTDIR=${D}/opt/squish
|
||||
./build install DESTDIR=${DESTDIR}
|
||||
|
||||
install -d ${D}${QT6_INSTALL_PLUGINSDIR}
|
||||
mv ${DESTDIR}/plugins/* ${D}${QT6_INSTALL_PLUGINSDIR}
|
||||
rmdir ${DESTDIR}/plugins
|
||||
|
||||
sed -i -e 's|${RECIPE_SYSROOT}||' ${D}/opt/squish/etc/paths.ini
|
||||
|
||||
if [ -e ${D}/opt/squish/etc/squish-appman-hook.yaml ]; then
|
||||
sed -i -e 's|PATH_TO_SQUISH|/opt/squish|' ${D}/opt/squish/etc/squish-appman-hook.yaml
|
||||
fi
|
||||
|
||||
install -d ${D}${sysconfdir}/profile.d
|
||||
cat > ${D}${sysconfdir}/profile.d/squish.sh <<EOF
|
||||
export SQUISH_PREFIX=/opt/squish
|
||||
export PATH="\$PATH:/opt/squish/bin"
|
||||
EOF
|
||||
}
|
||||
|
||||
FILES:${PN} += "\
|
||||
${QT6_INSTALL_PLUGINSDIR} \
|
||||
/opt/squish \
|
||||
"
|
||||
FILES:${PN}-dev += "\
|
||||
/opt/squish/qtbuiltinhook.pri \
|
||||
/opt/squish/LICENSE.txt \
|
||||
/opt/squish/include \
|
||||
/opt/squish/lib/cmake \
|
||||
/opt/squish/sdk \
|
||||
"
|
||||
FILES:${PN}-dev:remove = "${FILES_SOLIBSDEV}"
|
||||
FILES:${PN}-staticdev += "\
|
||||
${QT6_INSTALL_PLUGINSDIR}/generic/*.a \
|
||||
/opt/squish/lib/*.a \
|
||||
/opt/squish/lib/extensions/qt/*.a \
|
||||
"
|
||||
|
||||
addtask install_squish after do_unpack before do_configure
|
||||
|
||||
INSANE_SKIP:${PN}-src += "buildpaths"
|
||||
Loading…
Reference in New Issue
Block a user