[meta-ti] [PATCH v2 2/4] ti-cgt6x-7: added recipe for TI CGT6x 7.x.x
Denys Dmytriyenko
denys at ti.com
Thu Jul 27 16:24:14 PDT 2017
SUMMARY is for short description (<80 characters), while DESCRIPTION is for
longer, more detailed explanation of the package.
Here's an example of properly defining those fields - autoconf recipe:
http://cgit.openembedded.org/openembedded-core/tree/meta/recipes-devtools/autoconf/autoconf.inc
SUMMARY = "A GNU tool that procude shell scripts to automatically configure software"
DESCRIPTION = "Autoconf is an extensible package of M4 macros that produce shell scripts to automatically \
configure software source code packages. Autoconf creates a configuration script for a package from a template \
file that lists the operating system features that the package can use, in the form of M4 macro calls."
That's how it gets into the binary package:
$ dpkg-deb -I autoconf_2.69-r11.38_armv7ahf-neon.ipk
...
Package: autoconf
Version: 2.69-r11.38
Description: A GNU tool that procude shell scripts to automatically configure software
Autoconf is an extensible package of M4 macros that produce shell scripts
to automatically configure software source code packages. Autoconf
creates a configuration script for a package from a template file that
lists the operating system features that the package can use, in the form
of M4 macro calls.
Section: devel
Priority: optional
...
When SUMMARY is not set, it defaults to "${PN} version ${PV}-${PR}", while
DESCRIPTION defaults to "${SUMMARY}."
http://cgit.openembedded.org/openembedded-core/tree/meta/conf/bitbake.conf#n225
Hence, if you don't set DESCRIPTION, you'll get:
$ dpkg-deb -I acl_2.2.52-r0.67_armv7ahf-neon.ipk
...
Package: acl
Version: 2.2.52-r0.67
Description: Utilities for managing POSIX Access Control Lists
Utilities for managing POSIX Access Control Lists.
Section: libs
Priority: optional
...
But the other way around, when DESCRIPTION is set, but not the SUMMARY, it's
not that nice:
$ dpkg-deb -I aif2-lld-test_1.2.0.1-r0.0.32_armv7ahf-neon.ipk
...
Package: aif2-lld-test
Version: 1.2.0.1-r0.0.32
Description: aif2-lld-test version 1.2.0.1-r0.0
TI Antenna Interface peripheral module low level driver test binaries
Section: base
Priority: optional
...
Moreover, standard sub-packages like ${PN}-dev, ${PN}-dbg etc. automatically
expand SUMMARY and DESCRIPTION fields, with short and long additions:
http://cgit.openembedded.org/openembedded-core/tree/meta/conf/bitbake.conf#n234
Compare to acl main package mentioned above:
...
Package: acl-dev
Version: 2.2.52-r0.67
Description: Utilities for managing POSIX Access Control Lists - Development files
Utilities for managing POSIX Access Control Lists. This package contains
symbolic links, header files, and related items necessary for software
development.
Section: devel
Priority: optional
...
Historically, this distinction wasn't really enforced. Hence there are plenty
of recipes that use DESCRIPTION, but not SUMMARY. But with the continued
addition of tooling around Yocto Project to handle recipes and packages, this
becomes more important to enforce. There were several attempts to clean this
up upstream, e.g.:
http://cgit.openembedded.org/openembedded-core/commit/?id=ad17dfd31a2b97b3e610a0ea0889f5ecb2a63b97
I haven't done a thorough clean up of existing recipes in meta-ti or meta-arago
yet, but I'm beginning to enforce this for newly submitted recipes now...
--
Denys
On Thu, Jul 27, 2017 at 04:16:42PM -0400, Denys Dmytriyenko wrote:
> On Tue, Jul 25, 2017 at 04:06:39PM -0500, Ivan Pang wrote:
> > This recipe specifically installs the 7.x.x series of TI CGT6x.
> >
> > Signed-off-by: Ivan Pang <i-pang at ti.com>
> > ---
> > recipes-ti/devtools/ti-cgt6x-7-native_7.4.16.bb | 37 +++++++++++++++++++++++++
> > 1 file changed, 37 insertions(+)
> > create mode 100644 recipes-ti/devtools/ti-cgt6x-7-native_7.4.16.bb
> >
> > diff --git a/recipes-ti/devtools/ti-cgt6x-7-native_7.4.16.bb b/recipes-ti/devtools/ti-cgt6x-7-native_7.4.16.bb
> > new file mode 100644
> > index 0000000..335e0ae
> > --- /dev/null
> > +++ b/recipes-ti/devtools/ti-cgt6x-7-native_7.4.16.bb
> > @@ -0,0 +1,37 @@
> > +DESCRIPTION = "TI DSP Code Generation Tools"
>
> Use SUMMARY for short one-line descriptions.
>
>
> > +HOMEPAGE = "https://www-a.ti.com/downloads/sds_support/TICodegenerationTools/download.htm"
> > +LICENSE = "TI"
>
> Please use the proper name for the license:
> http://arago-project.org/git/?p=meta-ti.git;a=tree;f=licenses;hb=refs/heads/morty
>
>
> > +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=b6311962635a4f15630e36ec2d875eca"
> > +
> > +PE = "0"
> > +PR = "r0"
>
> These are the defaults, please drop them, especially PE.
>
>
> > +S = "${WORKDIR}/c6000_7.4.16"
> > +
> > +inherit native
> > +require recipes-ti/includes/ti-paths.inc
> > +require recipes-ti/includes/ti-unpack.inc
> > +
> > +BINFILE = "ti_cgt_c6000_7.4.16_linux_installer_x86.bin"
> > +BINFILE_NAME = "cgt6x_7.4.16_x86_installer"
> > +TI_BIN_UNPK_ARGS = "--prefix ${WORKDIR} --mode unattended"
> > +TI_BIN_UNPK_CMDS=""
> > +
> > +SRC_URI = "http://install.source.dir.local/${BINFILE};name=${BINFILE_NAME}"
> > +
> > +SRC_URI[cgt6x_7.4.16_x86_installer.md5sum] = "21ca55c5b1f6b2d8d4fb7570d5eb5513"
> > +SRC_URI[cgt6x_7.4.16_x86_installer.sha256sum] = "baa0d1ef20397383f99f45068a6d160963a01419d42fbbb851263b54c91df82f"
> > +
> > +do_install() {
> > + install -d ${D}/${TI_CGT6X_7_INSTALL_DIR_RECIPE}
> > + cp -r ${WORKDIR}/c6000_7.4.16/. ${D}/${TI_CGT6X_7_INSTALL_DIR_RECIPE}
>
> This will give you host contamination warnings. Please adjust "cp" args
> accordingly to not preserve ownership of files, e.g.:
>
> cp -rP --preserve=mode,links,timestamps --no-preserve=ownership
>
>
> > +}
> > +
> > +FILES_${PN} += "${TI_CGT6X_7_INSTALL_DIR_RECIPE}"
> > +
> > +INSANE_SKIP_${PN} += "arch staticdev"
> > +
> > +INHIBIT_PACKAGE_STRIP = "1"
> > +INHIBIT_SYSROOT_STRIP = "1"
> > +INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
> > --
> > 1.9.1
> >
> > --
> > _______________________________________________
> > meta-ti mailing list
> > meta-ti at yoctoproject.org
> > https://lists.yoctoproject.org/listinfo/meta-ti
> --
> _______________________________________________
> meta-ti mailing list
> meta-ti at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-ti
More information about the meta-ti
mailing list