> On Aug 21, 2015, at 5:55 PM, Randy MacLeod <[email protected]> 
> wrote:
> 
> On 2015-08-21 03:25 AM, Khem Raj wrote:
>> On Thu, Aug 20, 2015 at 10:38 PM,  <[email protected]> wrote:
>>> From: Wenzong Fan <[email protected]>
>>> 
>>> Pull package from meta-oe to oe-core:
>>> meta-oe commit: bce4dba5546480c8e43c6442959ac7d0a4ef32f6
>>> 
>>> The libcap-ng library is intended to make programming with posix
>>> capabilities much easier than the traditional libcap library.
>>> 
>>> It's not a replacement to libcap, it provides different library
>>> (libcap-ng.so) while packages explicitly look for libcap.so. It
>>> could be used by qemu, util-linux, libvirt, audit ...
>>> 
>>> With adding it to oe-core, the copies from following layers could
>>> be removed:
>>> 
>>> * meta-oe, meta-selinux, meta-security-framework ...
>> 
>> I am afraid that we  are setting a pretext for moving all recipes that
>> are in multiple layers to be eligible for OE-core now.
>> meta-oe is common layer for extended recipes, so may be other layers
>> should have been a bit more vigilant and made sure
>> there requirements were met with whats in meta-oe.
> 
> Meta-oe has far to many recipes for some people to want
> to include the entire layer:
>   meta-oe.git $ find meta-oe/ -name "*bb" | wc -l
>   618
> We can certainly use the new whitelist layer filtering to
> get to a smaller collection of recipes but I'd like to suggest we
> need to document and maybe design the layer structure
> a bit more. There are lots of different opinions about
> how to split collections of packages in to different layers so
> unless someone has a dependency-based analysis of all
> pacakges in all layers, I don't see much point in a long
> discussion on this topic.

if someone wants to ignore certain recipes use BBMASK, I do not think
this whitelisting is a good idea, it does not help in maintaining layer
quality, and its much better that we maintained layers in good quality 
collectively
may be with some extra recipes in it instead of cannibalizing few recipes from 
it
into private layers or other layer which one happens to use. It seriously dents
the layers user base and quality. If meta-oe hosts certain layers that could be
a fit in another middleware or topic layer, lets move it to that layer but lets
not encourage the behavior of duplicating the recipes or severely crippling the 
layer
before using it.

> 
> Has the idea of creating a new meta-openembedded layer
> for widely-used, OS interface libraries been proposed?
> These 80 recipes could be considered for inclusion:
>   $ find  meta-oe -name "lib*bb" | wc -l
>   80
> but more consideration is probably needed.
> 
> In the short term (oe-core-1.9 (now 2.0), I guess we leave
> things as they are. Sigh…

number of layers is a delicate balance too. The more you divide them more 
smaller the userbase will become
and complex becomes the distros.

> 
> ../Randy
> 
> 
> While I'm at it, for reference of layer size:
> 
> $ for i in `ls -d meta-*`; do echo -n $i": "; find $i -name "*bb" | wc -l; 
> done
> meta-efl: 57
> meta-filesystems: 16
> meta-gnome: 82
> meta-gpe: 5
> meta-initramfs: 14
> meta-multimedia: 51
> meta-networking: 115
> meta-oe: 618
> meta-perl: 30
> meta-python: 74
> meta-ruby: 4
> meta-systemd: 1
> meta-webserver: 13
> meta-xfce: 67
> 
> -----------------------------------------
> 
> 
>> we should ask what core feature does it enable for reference images
>> and machines.
>> 
>>> 
>>> Signed-off-by: Wenzong Fan <[email protected]>
>>> ---
>>>  .../libcap-ng/libcap-ng/python.patch               | 58 
>>> ++++++++++++++++++++++
>>>  meta/recipes-support/libcap-ng/libcap-ng_0.7.7.bb  | 39 +++++++++++++++
>>>  2 files changed, 97 insertions(+)
>>>  create mode 100644 meta/recipes-support/libcap-ng/libcap-ng/python.patch
>>>  create mode 100644 meta/recipes-support/libcap-ng/libcap-ng_0.7.7.bb
>>> 
>>> diff --git a/meta/recipes-support/libcap-ng/libcap-ng/python.patch 
>>> b/meta/recipes-support/libcap-ng/libcap-ng/python.patch
>>> new file mode 100644
>>> index 0000000..59591eb
>>> --- /dev/null
>>> +++ b/meta/recipes-support/libcap-ng/libcap-ng/python.patch
>>> @@ -0,0 +1,58 @@
>>> +From b01bb2694f66cd981e6d61523433dc3eb5ed32f2 Mon Sep 17 00:00:00 2001
>>> +From: Li xin <[email protected]>
>>> +Date: Sat, 18 Jul 2015 23:03:30 +0900
>>> +Subject: [PATCH] configure.ac - Avoid an incorrect check for python.
>>> + Makefile.am - avoid hard coded host include paths.
>>> +
>>> +Upstream-Status: pending
>>> +
>>> +Signed-off-by: Mark Hatle <[email protected]>
>>> +Signed-off-by: Li Xin <[email protected]>
>>> +---
>>> + bindings/python/Makefile.am |  3 ++-
>>> + configure.ac                | 15 ++-------------
>>> + 2 files changed, 4 insertions(+), 14 deletions(-)
>>> +
>>> +diff --git a/bindings/python/Makefile.am b/bindings/python/Makefile.am
>>> +index 82b9bb8..f9fe7a8 100644
>>> +--- a/bindings/python/Makefile.am
>>> ++++ b/bindings/python/Makefile.am
>>> +@@ -23,7 +23,8 @@ SUBDIRS = test
>>> + CONFIG_CLEAN_FILES = *.loT *.rej *.orig
>>> + AM_CFLAGS = -fPIC -DPIC
>>> + PYLIBVER ?= python$(PYTHON_VERSION)
>>> +-AM_CPPFLAGS = -I. -I$(top_builddir) -I@PYINCLUDEDIR@
>>> ++PYINC ?= /usr/include/$(PYLIBVER)
>>> ++AM_CPPFLAGS = -I. -I$(top_builddir) -I$(PYINC)
>>> + LIBS = $(top_builddir)/src/libcap-ng.la
>>> + SWIG_FLAGS = -python
>>> + SWIG_INCLUDES = ${AM_CPPFLAGS}
>>> +diff --git a/configure.ac b/configure.ac
>>> +index 1d777d5..9d90f64 100644
>>> +--- a/configure.ac
>>> ++++ b/configure.ac
>>> +@@ -123,19 +123,8 @@ if test x$use_python = xno ; then
>>> + else
>>> + AC_MSG_RESULT(testing)
>>> + AM_PATH_PYTHON
>>> +-PYINCLUDEDIR=`python${am_cv_python_version} -c "from distutils import 
>>> sysconfig; print(sysconfig.get_config_var('INCLUDEPY'))"`
>>> +-if test -f ${PYINCLUDEDIR}/Python.h ; then
>>> +-      python_found="yes"
>>> +-      AC_SUBST(PYINCLUDEDIR)
>>> +-      AC_MSG_NOTICE(Python bindings will be built)
>>> +-else
>>> +-      python_found="no"
>>> +-      if test x$use_python = xyes ; then
>>> +-              AC_MSG_ERROR([Python explicitly required and python headers 
>>> found])
>>> +-      else
>>> +-              AC_MSG_WARN("Python headers not found - python bindings 
>>> will not be made")
>>> +-      fi
>>> +-fi
>>> ++python_found="yes"
>>> ++AC_MSG_NOTICE(Python bindings will be built)
>>> + fi
>>> + AM_CONDITIONAL(HAVE_PYTHON, test ${python_found} = "yes")
>>> +
>>> +--
>>> +1.8.4.2
>>> +
>>> diff --git a/meta/recipes-support/libcap-ng/libcap-ng_0.7.7.bb 
>>> b/meta/recipes-support/libcap-ng/libcap-ng_0.7.7.bb
>>> new file mode 100644
>>> index 0000000..a31d5dc
>>> --- /dev/null
>>> +++ b/meta/recipes-support/libcap-ng/libcap-ng_0.7.7.bb
>>> @@ -0,0 +1,39 @@
>>> +SUMMARY = "An alternate posix capabilities library"
>>> +DESCRIPTION = "The libcap-ng library is intended to make programming \
>>> +with POSIX capabilities much easier than the traditional libcap library."
>>> +HOMEPAGE = "http://freecode.com/projects/libcap-ng";
>>> +SECTION = "base"
>>> +LICENSE = "GPLv2+ & LGPLv2.1+"
>>> +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
>>> +                   file://COPYING.LIB;md5=e3eda01d9815f8d24aae2dbd89b68b06"
>>> +
>>> +SRC_URI = 
>>> "http://people.redhat.com/sgrubb/libcap-ng/libcap-ng-${PV}.tar.gz \
>>> +           file://python.patch"
>>> +
>>> +inherit lib_package autotools pythonnative
>>> +
>>> +SRC_URI[md5sum] = "3d7d126b29e2869a0257c17c8b0d9b2e"
>>> +SRC_URI[sha256sum] = 
>>> "615549ce39b333f6b78baee0c0b4ef18bc726c6bf1cca123dfd89dd963f6d06b"
>>> +
>>> +DEPENDS += "swig-native python"
>>> +
>>> +EXTRA_OECONF += "--without-python3"
>>> +
>>> +EXTRA_OEMAKE += "PYLIBVER='python${PYTHON_BASEVERSION}' 
>>> PYINC='${STAGING_INCDIR}/${PYLIBVER}'"
>>> +
>>> +PACKAGES += "${PN}-python"
>>> +
>>> +FILES_${PN}-dbg += "${libdir}/python${PYTHON_BASEVERSION}/*/.debug"
>>> +FILES_${PN}-python = "${libdir}/python${PYTHON_BASEVERSION}"
>>> +
>>> +BBCLASSEXTEND = "native"
>>> +
>>> +do_install_append() {
>>> +       # Moving libcap-ng to base_libdir
>>> +       if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then
>>> +               mkdir -p ${D}/${base_libdir}/
>>> +               mv -f ${D}${libdir}/libcap-ng.so.* ${D}${base_libdir}/
>>> +               relpath=${@os.path.relpath("${base_libdir}", "${libdir}")}
>>> +               ln -sf ${relpath}/libcap-ng.so.0.0.0 
>>> ${D}${libdir}/libcap-ng.so
>>> +       fi
>>> +}
>>> --
>>> 1.9.1
>>> 
>>> --
>>> _______________________________________________
>>> Openembedded-core mailing list
>>> [email protected]
>>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
> 
> 
> --
> # Randy MacLeod. SMTS, Linux, Wind River
> Direct: 613.963.1350 | 350 Terry Fox Drive, Suite 200, Ottawa, ON, Canada, 
> K2K 2W5

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

-- 
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to