- 264 license table entries with exact download URLs (224/264 resolved) - Complete sources/ directory with all BitBake recipes - Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl) - Full traceability for Softwarefreigabeantrag - GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4 - License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
115 lines
3.4 KiB
BlitzBasic
115 lines
3.4 KiB
BlitzBasic
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"
|