[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