Files
tqma6-yocto-mirror/sources/meta-qt6/recipes-qt/squish/squish_8.1.0.bb

115 lines
3.4 KiB
BlitzBasic
Raw Normal View History

LICENSE = "Squish-Commercial-License-Agreement"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=899603087536444c628655da3a982a75"
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}-qt68x-linux64.run"
SRC_URI = "\
${SQUISH_MIRROR}/${SQUISH_INSTALLER};name=squish \
${SQUISH_MIRROR}/squish-${PV}-qt-embedded-src.tar.gz;name=qt-squish-embedded \
file://0001-Use-correct-prefix-for-Xft-include.patch \
"
SRC_URI[squish.sha256sum] = "2ff96e9f2e8594833c186d0b34f12f2014b2fcd30f087e53edc39066587c42b6"
SRC_URI[qt-squish-embedded.sha256sum] = "729870aafba482d7a772c930209830796a5c9d4a8ab0c49e8caa54738f1032e8"
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
echo "export SQUISH_PREFIX=/opt/squish" > ${D}${sysconfdir}/profile.d/squish.sh
}
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"