All of lore.kernel.org
 help / color / mirror / Atom feed
From: Denys Dmytriyenko <denys@ti.com>
To: <meta-ti@yoctoproject.org>
Subject: Re: [PATCH v2 2/4] ti-cgt6x-7: added recipe for TI CGT6x 7.x.x
Date: Thu, 27 Jul 2017 19:24:14 -0400	[thread overview]
Message-ID: <20170727232413.GQ18367@edge> (raw)
In-Reply-To: <20170727201642.GI18367@edge>

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@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@yoctoproject.org
> > https://lists.yoctoproject.org/listinfo/meta-ti
> -- 
> _______________________________________________
> meta-ti mailing list
> meta-ti@yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-ti


  reply	other threads:[~2017-07-27 23:24 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-07-25 21:06 [PATCH v2 1/4] ti-paths.inc: added path for TI CGT6x 7.x.x Ivan Pang
2017-07-25 21:06 ` [PATCH v2 2/4] ti-cgt6x-7: added recipe " Ivan Pang
2017-07-27 13:17   ` Jacob Stiffler
2017-07-27 20:16   ` Denys Dmytriyenko
2017-07-27 23:24     ` Denys Dmytriyenko [this message]
2017-07-25 21:06 ` [PATCH v2 3/4] mad-utils-rtos: added recipe for MAD utils Ivan Pang
2017-07-27 13:19   ` Jacob Stiffler
2017-07-27 20:19   ` Denys Dmytriyenko
2017-07-25 21:06 ` [PATCH v2 4/4] ibl-boot-rtos: added recipe for RTOS IBL Ivan Pang
2017-07-27 13:19   ` Jacob Stiffler
2017-07-27 20:20   ` Denys Dmytriyenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20170727232413.GQ18367@edge \
    --to=denys@ti.com \
    --cc=meta-ti@yoctoproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.