All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-networking][PATCH 0/4] libtalloc/tevent/ldb/tdb: fixes for deterministic builds
@ 2016-09-20  5:42 jackie.huang
  2016-09-20  5:42 ` [meta-networking][PATCH 1/4] libtalloc: " jackie.huang
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: jackie.huang @ 2016-09-20  5:42 UTC (permalink / raw)
  To: openembedded-devel

From: Jackie Huang <jackie.huang@windriver.com>

--
The following changes since commit 24e387aaf78bc0f68a46abb1fab3a76364804bd1:

  openldap: fix CVE-2015-3276 (2016-09-19 16:24:10 +0200)

are available in the git repository at:

  git://git.pokylinux.org/poky-contrib.git jhuang0/d_waf-pkgs_160920_1
  http://git.pokylinux.org/cgit.cgi//log/?h=jhuang0/d_waf-pkgs_160920_1

Jackie Huang (4):
  libtalloc: fixes for deterministic builds
  libtevent: fixes for deterministic builds
  libldb: fixes for deterministic builds
  libtdb: fixes for deterministic builds

 .../ldb-Add-configure-options-for-packages.patch   | 124 ++++++++++++++++++++
 .../recipes-support/libldb/libldb_1.1.27.bb        |  13 ++-
 ...talloc-Add-configure-options-for-packages.patch | 124 ++++++++++++++++++++
 .../recipes-support/libtalloc/libtalloc_2.1.8.bb   |  16 ++-
 .../tdb-Add-configure-options-for-packages.patch   | 127 +++++++++++++++++++++
 .../recipes-support/libtdb/libtdb_1.3.10.bb        |  16 ++-
 ...tevent-Add-configure-options-for-packages.patch | 127 +++++++++++++++++++++
 .../recipes-support/libtevent/libtevent_0.9.29.bb  |  16 ++-
 8 files changed, 553 insertions(+), 10 deletions(-)
 create mode 100644 meta-networking/recipes-support/libldb/libldb/ldb-Add-configure-options-for-packages.patch
 create mode 100644 meta-networking/recipes-support/libtalloc/libtalloc/talloc-Add-configure-options-for-packages.patch
 create mode 100644 meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch
 create mode 100644 meta-networking/recipes-support/libtevent/libtevent/tevent-Add-configure-options-for-packages.patch

-- 
2.8.3



^ permalink raw reply	[flat|nested] 9+ messages in thread

* [meta-networking][PATCH 1/4] libtalloc: fixes for deterministic builds
  2016-09-20  5:42 [meta-networking][PATCH 0/4] libtalloc/tevent/ldb/tdb: fixes for deterministic builds jackie.huang
@ 2016-09-20  5:42 ` jackie.huang
  2016-09-20  6:46   ` Martin Jansa
  2016-09-20  5:42 ` [meta-networking][PATCH 2/4] libtevent: " jackie.huang
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 9+ messages in thread
From: jackie.huang @ 2016-09-20  5:42 UTC (permalink / raw)
  To: openembedded-devel

From: Jackie Huang <jackie.huang@windriver.com>

* Add configure option and PACKAGECONFIG for
  the following packages:
  - acl
  - attr
  - libaio
  - libcap
  - valgrind

* They are all optional, so disable by default
  or control them based on DISTRO_FEATURES.

* Remove the direct dependency on libaio

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
---
 ...talloc-Add-configure-options-for-packages.patch | 124 +++++++++++++++++++++
 .../recipes-support/libtalloc/libtalloc_2.1.8.bb   |  16 ++-
 2 files changed, 137 insertions(+), 3 deletions(-)
 create mode 100644 meta-networking/recipes-support/libtalloc/libtalloc/talloc-Add-configure-options-for-packages.patch

diff --git a/meta-networking/recipes-support/libtalloc/libtalloc/talloc-Add-configure-options-for-packages.patch b/meta-networking/recipes-support/libtalloc/libtalloc/talloc-Add-configure-options-for-packages.patch
new file mode 100644
index 0000000..d383df4
--- /dev/null
+++ b/meta-networking/recipes-support/libtalloc/libtalloc/talloc-Add-configure-options-for-packages.patch
@@ -0,0 +1,124 @@
+From 77fd757624c9b20073a7abefaca8382caa4fd376 Mon Sep 17 00:00:00 2001
+From: Jackie Huang <jackie.huang@windriver.com>
+Date: Wed, 14 Sep 2016 11:11:35 +0800
+Subject: [PATCH] talloc: Add configure options for packages
+
+Add configure options for the following packages:
+ - acl
+ - attr
+ - libaio
+ - libcap
+ - valgrind
+
+Upstream-Status: Inappropriate [oe deterministic build specific]
+
+Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
+---
+ lib/replace/system/wscript_configure |  6 ++++-
+ lib/replace/wscript                  | 43 +++++++++++++++++++++++++++++++-----
+ wscript                              |  4 ++++
+ 3 files changed, 46 insertions(+), 7 deletions(-)
+
+diff --git a/lib/replace/system/wscript_configure b/lib/replace/system/wscript_configure
+index 2035474..10f9ae7 100644
+--- a/lib/replace/system/wscript_configure
++++ b/lib/replace/system/wscript_configure
+@@ -1,6 +1,10 @@
+ #!/usr/bin/env python
+ 
+-conf.CHECK_HEADERS('sys/capability.h')
++import Options
++
++if Options.options.enable_libcap:
++    conf.CHECK_HEADERS('sys/capability.h')
++
+ conf.CHECK_FUNCS('getpwnam_r getpwuid_r getpwent_r')
+ 
+ # solaris varients of getXXent_r
+diff --git a/lib/replace/wscript b/lib/replace/wscript
+index fc43e1a..a899dd2 100644
+--- a/lib/replace/wscript
++++ b/lib/replace/wscript
+@@ -23,6 +23,22 @@ def set_options(opt):
+     opt.PRIVATE_EXTENSION_DEFAULT('')
+     opt.RECURSE('buildtools/wafsamba')
+ 
++    opt.add_option('--with-acl',
++                   help=("Enable use of acl"),
++                   action="store_true", dest='enable_acl', default=False)
++
++    opt.add_option('--with-attr',
++                   help=("Enable use of attr"),
++                   action="store_true", dest='enable_attr', default=False)
++
++    opt.add_option('--with-libaio',
++                   help=("Enable use of libaio"),
++                   action="store_true", dest='enable_libaio', default=False)
++
++    opt.add_option('--with-libcap',
++                   help=("Enable use of libcap"),
++                   action="store_true", dest='enable_libcap', default=False)
++
+ @Utils.run_once
+ def configure(conf):
+     conf.RECURSE('buildtools/wafsamba')
+@@ -32,12 +48,25 @@ def configure(conf):
+     conf.DEFINE('HAVE_LIBREPLACE', 1)
+     conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
+ 
+-    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h acl/libacl.h compat.h')
+-    conf.CHECK_HEADERS('acl/libacl.h attr/xattr.h compat.h ctype.h dustat.h')
++    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h')
++    conf.CHECK_HEADERS('compat.h ctype.h dustat.h')
+     conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h langinfo.h')
+-    conf.CHECK_HEADERS('libaio.h locale.h ndir.h pwd.h')
+-    conf.CHECK_HEADERS('shadow.h sys/acl.h')
+-    conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h')
++    conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
++    conf.CHECK_HEADERS('shadow.h')
++    conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h')
++
++    if Options.options.enable_acl:
++        conf.CHECK_HEADERS('acl/libacl.h sys/acl.h')
++
++    if Options.options.enable_attr:
++        conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h')
++
++    if Options.options.enable_libaio:
++        conf.CHECK_HEADERS('libaio.h')
++
++    if Options.options.enable_libcap:
++        conf.CHECK_HEADERS('sys/capability.h')
++
+     conf.CHECK_HEADERS('port.h')
+     conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
+     conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
+@@ -73,7 +102,9 @@ def configure(conf):
+ 
+     conf.CHECK_CODE('', headers='rpc/rpc.h rpcsvc/yp_prot.h', define='HAVE_RPCSVC_YP_PROT_H')
+ 
+-    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
++    if Options.options.enable_valgrind:
++        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
++
+     conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
+     conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h')
+     conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
+diff --git a/wscript b/wscript
+index 41f3be7..f900c24 100644
+--- a/wscript
++++ b/wscript
+@@ -35,6 +35,10 @@ def set_options(opt):
+         opt.add_option('--disable-python',
+                        help=("disable the pytalloc module"),
+                        action="store_true", dest='disable_python', default=False)
++        opt.add_option('--with-valgrind',
++                       help=("enable use of valgrind"),
++                       action="store_true", dest='enable_valgrind', default=False)
++
+ 
+ 
+ def configure(conf):
+-- 
+2.8.3
+
diff --git a/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb b/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
index 7c85ab3..8b2ae33 100644
--- a/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
+++ b/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
@@ -3,9 +3,11 @@ HOMEPAGE = "http://talloc.samba.org"
 SECTION = "libs"
 LICENSE = "LGPL-3.0+ & GPL-3.0+"
 
-DEPENDS += "libaio libbsd"
+DEPENDS += "libbsd"
 
-SRC_URI = "http://samba.org/ftp/talloc/talloc-${PV}.tar.gz"
+SRC_URI = "http://samba.org/ftp/talloc/talloc-${PV}.tar.gz \
+           file://talloc-Add-configure-options-for-packages.patch \
+"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/LGPL-3.0;md5=bfccfe952269fff2b407dd11f2f3083b \
                     file://${COREBASE}/meta/files/common-licenses/GPL-3.0;md5=c79ff39f19dfec6d293b95dea7b07891"
 
@@ -15,7 +17,15 @@ SRC_URI[sha256sum] = "22d14911164d4de67ff76b5269fa5250d01f78c955bc77e28615350996
 
 inherit waf-samba
 
-PACKAGECONFIG[attr] = ",,attr"
+PACKAGECONFIG ??= "\
+    ${@bb.utils.contains('DISTRO_FEATURES', 'acl', 'acl', '', d)} \
+    ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} \
+"
+PACKAGECONFIG[acl] = "--with-acl,,acl"
+PACKAGECONFIG[attr] = "--with-attr,,attr"
+PACKAGECONFIG[libaio] = "--with-libaio,,libaio,"
+PACKAGECONFIG[libcap] = "--with-libcap,,libcap,"
+PACKAGECONFIG[valgrind] = "--with-valgrind,,valgrind,"
 
 SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'attr', '', 'file://avoid-attr-unless-wanted.patch', d)}"
 
-- 
2.8.3



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [meta-networking][PATCH 2/4] libtevent: fixes for deterministic builds
  2016-09-20  5:42 [meta-networking][PATCH 0/4] libtalloc/tevent/ldb/tdb: fixes for deterministic builds jackie.huang
  2016-09-20  5:42 ` [meta-networking][PATCH 1/4] libtalloc: " jackie.huang
@ 2016-09-20  5:42 ` jackie.huang
  2016-09-20  5:42 ` [meta-networking][PATCH 3/4] libldb: " jackie.huang
  2016-09-20  5:42 ` [meta-networking][PATCH 4/4] libtdb: " jackie.huang
  3 siblings, 0 replies; 9+ messages in thread
From: jackie.huang @ 2016-09-20  5:42 UTC (permalink / raw)
  To: openembedded-devel

From: Jackie Huang <jackie.huang@windriver.com>

* Add configure option and PACKAGECONFIG for
  the following packages:
  - acl
  - attr
  - libaio
  - libcap
  - valgrind

* They are all optional, so disable by default
  or control them based on DISTRO_FEATURES.

* Remove the direct dependency on libaio

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
---
 ...tevent-Add-configure-options-for-packages.patch | 127 +++++++++++++++++++++
 .../recipes-support/libtevent/libtevent_0.9.29.bb  |  16 ++-
 2 files changed, 140 insertions(+), 3 deletions(-)
 create mode 100644 meta-networking/recipes-support/libtevent/libtevent/tevent-Add-configure-options-for-packages.patch

diff --git a/meta-networking/recipes-support/libtevent/libtevent/tevent-Add-configure-options-for-packages.patch b/meta-networking/recipes-support/libtevent/libtevent/tevent-Add-configure-options-for-packages.patch
new file mode 100644
index 0000000..ea3e609
--- /dev/null
+++ b/meta-networking/recipes-support/libtevent/libtevent/tevent-Add-configure-options-for-packages.patch
@@ -0,0 +1,127 @@
+From ce6d267ae4070d98667829752dd8ca3a24993b50 Mon Sep 17 00:00:00 2001
+From: Jackie Huang <jackie.huang@windriver.com>
+Date: Wed, 14 Sep 2016 15:44:54 +0800
+Subject: [PATCH] tevent: Add configure options for packages
+
+Add configure options for the following packages:
+ - acl
+ - attr
+ - libaio
+ - libcap
+ - valgrind
+
+Upstream-Status: Inappropriate [oe deterministic build specific]
+
+Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
+---
+ lib/replace/system/wscript_configure |  6 ++++-
+ lib/replace/wscript                  | 43 +++++++++++++++++++++++++++++++-----
+ wscript                              |  4 ++++
+ 3 files changed, 46 insertions(+), 7 deletions(-)
+ mode change 100755 => 100644 wscript
+
+diff --git a/lib/replace/system/wscript_configure b/lib/replace/system/wscript_configure
+index 2035474..10f9ae7 100644
+--- a/lib/replace/system/wscript_configure
++++ b/lib/replace/system/wscript_configure
+@@ -1,6 +1,10 @@
+ #!/usr/bin/env python
+ 
+-conf.CHECK_HEADERS('sys/capability.h')
++import Options
++
++if Options.options.enable_libcap:
++    conf.CHECK_HEADERS('sys/capability.h')
++
+ conf.CHECK_FUNCS('getpwnam_r getpwuid_r getpwent_r')
+ 
+ # solaris varients of getXXent_r
+diff --git a/lib/replace/wscript b/lib/replace/wscript
+index fc43e1a..a899dd2 100644
+--- a/lib/replace/wscript
++++ b/lib/replace/wscript
+@@ -23,6 +23,22 @@ def set_options(opt):
+     opt.PRIVATE_EXTENSION_DEFAULT('')
+     opt.RECURSE('buildtools/wafsamba')
+ 
++    opt.add_option('--with-acl',
++                   help=("Enable use of acl"),
++                   action="store_true", dest='enable_acl', default=False)
++
++    opt.add_option('--with-attr',
++                   help=("Enable use of attr"),
++                   action="store_true", dest='enable_attr', default=False)
++
++    opt.add_option('--with-libaio',
++                   help=("Enable use of libaio"),
++                   action="store_true", dest='enable_libaio', default=False)
++
++    opt.add_option('--with-libcap',
++                   help=("Enable use of libcap"),
++                   action="store_true", dest='enable_libcap', default=False)
++
+ @Utils.run_once
+ def configure(conf):
+     conf.RECURSE('buildtools/wafsamba')
+@@ -32,12 +48,25 @@ def configure(conf):
+     conf.DEFINE('HAVE_LIBREPLACE', 1)
+     conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
+ 
+-    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h acl/libacl.h compat.h')
+-    conf.CHECK_HEADERS('acl/libacl.h attr/xattr.h compat.h ctype.h dustat.h')
++    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h')
++    conf.CHECK_HEADERS('compat.h ctype.h dustat.h')
+     conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h langinfo.h')
+-    conf.CHECK_HEADERS('libaio.h locale.h ndir.h pwd.h')
+-    conf.CHECK_HEADERS('shadow.h sys/acl.h')
+-    conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h')
++    conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
++    conf.CHECK_HEADERS('shadow.h')
++    conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h')
++
++    if Options.options.enable_acl:
++        conf.CHECK_HEADERS('acl/libacl.h sys/acl.h')
++
++    if Options.options.enable_attr:
++        conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h')
++
++    if Options.options.enable_libaio:
++        conf.CHECK_HEADERS('libaio.h')
++
++    if Options.options.enable_libcap:
++        conf.CHECK_HEADERS('sys/capability.h')
++
+     conf.CHECK_HEADERS('port.h')
+     conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
+     conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
+@@ -73,7 +102,9 @@ def configure(conf):
+ 
+     conf.CHECK_CODE('', headers='rpc/rpc.h rpcsvc/yp_prot.h', define='HAVE_RPCSVC_YP_PROT_H')
+ 
+-    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
++    if Options.options.enable_valgrind:
++        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
++
+     conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
+     conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h')
+     conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
+diff --git a/wscript b/wscript
+old mode 100755
+new mode 100644
+index 71b9475..f7a5194
+--- a/wscript
++++ b/wscript
+@@ -26,6 +26,10 @@ def set_options(opt):
+         opt.add_option('--disable-python',
+                        help=("disable the pytevent module"),
+                        action="store_true", dest='disable_python', default=False)
++        opt.add_option('--with-valgrind',
++                       help=("enable use of valgrind"),
++                       action="store_true", dest='enable_valgrind', default=False)
++
+ 
+ 
+ def configure(conf):
+-- 
+2.8.3
+
diff --git a/meta-networking/recipes-support/libtevent/libtevent_0.9.29.bb b/meta-networking/recipes-support/libtevent/libtevent_0.9.29.bb
index 6acdeb5..e15bd56 100644
--- a/meta-networking/recipes-support/libtevent/libtevent_0.9.29.bb
+++ b/meta-networking/recipes-support/libtevent/libtevent_0.9.29.bb
@@ -3,10 +3,12 @@ HOMEPAGE = "http://tevent.samba.org"
 SECTION = "libs"
 LICENSE = "LGPLv3+"
 
-DEPENDS += "libaio libbsd libtalloc"
+DEPENDS += "libbsd libtalloc"
 RDEPENDS_python-tevent = "python"
 
-SRC_URI = "http://samba.org/ftp/tevent/tevent-${PV}.tar.gz"
+SRC_URI = "http://samba.org/ftp/tevent/tevent-${PV}.tar.gz \
+           file://tevent-Add-configure-options-for-packages.patch \
+"
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/LGPL-3.0;md5=bfccfe952269fff2b407dd11f2f3083b"
 
 SRC_URI[md5sum] = "4372c1430a1ecb7ea0adddfdf21c0d55"
@@ -14,7 +16,15 @@ SRC_URI[sha256sum] = "a4f519b0bbb718fe2175bee9011ee4d199675f28c2ef80531be38e7bba
 
 inherit waf-samba
 
-PACKAGECONFIG[attr] = ",,attr"
+PACKAGECONFIG ??= "\
+    ${@bb.utils.contains('DISTRO_FEATURES', 'acl', 'acl', '', d)} \
+    ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} \
+"
+PACKAGECONFIG[acl] = "--with-acl,,acl"
+PACKAGECONFIG[attr] = "--with-attr,,attr"
+PACKAGECONFIG[libaio] = "--with-libaio,,libaio,"
+PACKAGECONFIG[libcap] = "--with-libcap,,libcap,"
+PACKAGECONFIG[valgrind] = "--with-valgrind,,valgrind,"
 
 SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'attr', '', 'file://avoid-attr-unless-wanted.patch', d)}"
 
-- 
2.8.3



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [meta-networking][PATCH 3/4] libldb: fixes for deterministic builds
  2016-09-20  5:42 [meta-networking][PATCH 0/4] libtalloc/tevent/ldb/tdb: fixes for deterministic builds jackie.huang
  2016-09-20  5:42 ` [meta-networking][PATCH 1/4] libtalloc: " jackie.huang
  2016-09-20  5:42 ` [meta-networking][PATCH 2/4] libtevent: " jackie.huang
@ 2016-09-20  5:42 ` jackie.huang
  2016-09-20  5:42 ` [meta-networking][PATCH 4/4] libtdb: " jackie.huang
  3 siblings, 0 replies; 9+ messages in thread
From: jackie.huang @ 2016-09-20  5:42 UTC (permalink / raw)
  To: openembedded-devel

From: Jackie Huang <jackie.huang@windriver.com>

* Add configure option and PACKAGECONFIG for
  the following packages:
  - acl
  - attr
  - libaio
  - libcap
  - valgrind

* They are all optional, so disable by default
  or control them based on DISTRO_FEATURES.

* Remove the direct dependency on libaio

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
---
 .../ldb-Add-configure-options-for-packages.patch   | 124 +++++++++++++++++++++
 .../recipes-support/libldb/libldb_1.1.27.bb        |  13 ++-
 2 files changed, 136 insertions(+), 1 deletion(-)
 create mode 100644 meta-networking/recipes-support/libldb/libldb/ldb-Add-configure-options-for-packages.patch

diff --git a/meta-networking/recipes-support/libldb/libldb/ldb-Add-configure-options-for-packages.patch b/meta-networking/recipes-support/libldb/libldb/ldb-Add-configure-options-for-packages.patch
new file mode 100644
index 0000000..b628912
--- /dev/null
+++ b/meta-networking/recipes-support/libldb/libldb/ldb-Add-configure-options-for-packages.patch
@@ -0,0 +1,124 @@
+From 75c66723bf2f76085038f0cb6f6824a5554c6f15 Mon Sep 17 00:00:00 2001
+From: Jackie Huang <jackie.huang@windriver.com>
+Date: Wed, 14 Sep 2016 16:01:07 +0800
+Subject: [PATCH] ldb: Add configure options for packages
+
+Add configure options for the following packages:
+ - acl
+ - attr
+ - libaio
+ - libcap
+ - valgrind
+
+Upstream-Status: Inappropriate [oe deterministic build specific]
+
+Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
+---
+ lib/replace/system/wscript_configure |  6 ++++-
+ lib/replace/wscript                  | 43 +++++++++++++++++++++++++++++++-----
+ wscript                              |  4 ++++
+ 3 files changed, 46 insertions(+), 7 deletions(-)
+
+diff --git a/lib/replace/system/wscript_configure b/lib/replace/system/wscript_configure
+index 2035474..10f9ae7 100644
+--- a/lib/replace/system/wscript_configure
++++ b/lib/replace/system/wscript_configure
+@@ -1,6 +1,10 @@
+ #!/usr/bin/env python
+ 
+-conf.CHECK_HEADERS('sys/capability.h')
++import Options
++
++if Options.options.enable_libcap:
++    conf.CHECK_HEADERS('sys/capability.h')
++
+ conf.CHECK_FUNCS('getpwnam_r getpwuid_r getpwent_r')
+ 
+ # solaris varients of getXXent_r
+diff --git a/lib/replace/wscript b/lib/replace/wscript
+index 145300d..c9e6a45 100644
+--- a/lib/replace/wscript
++++ b/lib/replace/wscript
+@@ -23,6 +23,22 @@ def set_options(opt):
+     opt.PRIVATE_EXTENSION_DEFAULT('')
+     opt.RECURSE('buildtools/wafsamba')
+ 
++    opt.add_option('--with-acl',
++                   help=("Enable use of acl"),
++                   action="store_true", dest='enable_acl', default=False)
++
++    opt.add_option('--with-attr',
++                   help=("Enable use of attr"),
++                   action="store_true", dest='enable_attr', default=False)
++
++    opt.add_option('--with-libaio',
++                   help=("Enable use of libaio"),
++                   action="store_true", dest='enable_libaio', default=False)
++
++    opt.add_option('--with-libcap',
++                   help=("Enable use of libcap"),
++                   action="store_true", dest='enable_libcap', default=False)
++
+ @Utils.run_once
+ def configure(conf):
+     conf.RECURSE('buildtools/wafsamba')
+@@ -32,12 +48,25 @@ def configure(conf):
+     conf.DEFINE('HAVE_LIBREPLACE', 1)
+     conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
+ 
+-    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h acl/libacl.h compat.h')
+-    conf.CHECK_HEADERS('acl/libacl.h attr/xattr.h compat.h ctype.h dustat.h')
++    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h')
++    conf.CHECK_HEADERS('compat.h ctype.h dustat.h')
+     conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h langinfo.h')
+-    conf.CHECK_HEADERS('libaio.h locale.h ndir.h pwd.h')
+-    conf.CHECK_HEADERS('shadow.h sys/acl.h')
+-    conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h')
++    conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
++    conf.CHECK_HEADERS('shadow.h')
++    conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h')
++
++    if Options.options.enable_acl:
++        conf.CHECK_HEADERS('acl/libacl.h sys/acl.h')
++
++    if Options.options.enable_attr:
++        conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h')
++
++    if Options.options.enable_libaio:
++        conf.CHECK_HEADERS('libaio.h')
++
++    if Options.options.enable_libcap:
++        conf.CHECK_HEADERS('sys/capability.h')
++
+     conf.CHECK_HEADERS('port.h')
+     conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
+     conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
+@@ -73,7 +102,9 @@ def configure(conf):
+ 
+     conf.CHECK_CODE('', headers='rpc/rpc.h rpcsvc/yp_prot.h', define='HAVE_RPCSVC_YP_PROT_H')
+ 
+-    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
++    if Options.options.enable_valgrind:
++        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
++
+     conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
+     conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h')
+     conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
+diff --git a/wscript b/wscript
+index 2af8571..92145fd 100755
+--- a/wscript
++++ b/wscript
+@@ -29,6 +29,10 @@ def set_options(opt):
+     opt.RECURSE('lib/replace')
+     opt.tool_options('python') # options for disabling pyc or pyo compilation
+ 
++    opt.add_option('--with-valgrind',
++                   help=("enable use of valgrind"),
++                   action="store_true", dest='enable_valgrind', default=False)
++
+ def configure(conf):
+     conf.RECURSE('lib/tdb')
+     conf.RECURSE('lib/tevent')
+-- 
+2.8.3
+
diff --git a/meta-networking/recipes-support/libldb/libldb_1.1.27.bb b/meta-networking/recipes-support/libldb/libldb_1.1.27.bb
index b92bf22..80c95f9 100644
--- a/meta-networking/recipes-support/libldb/libldb_1.1.27.bb
+++ b/meta-networking/recipes-support/libldb/libldb_1.1.27.bb
@@ -3,14 +3,25 @@ HOMEPAGE = "http://ldb.samba.org"
 SECTION = "libs"
 LICENSE = "LGPL-3.0+ & LGPL-2.1+ & GPL-3.0+"
 
-DEPENDS += "libaio libbsd libtdb libtalloc libtevent popt"
+DEPENDS += "libbsd libtdb libtalloc libtevent popt"
 RDEPENDS_pyldb += "python"
 
 SRC_URI = "http://samba.org/ftp/ldb/ldb-${PV}.tar.gz \
            file://do-not-import-target-module-while-cross-compile.patch \
+           file://ldb-Add-configure-options-for-packages.patch \
           "
 
+PACKAGECONFIG ??= "\
+    ${@bb.utils.contains('DISTRO_FEATURES', 'acl', 'acl', '', d)} \
+    ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} \
+"
+PACKAGECONFIG[acl] = "--with-acl,,acl"
+PACKAGECONFIG[attr] = "--with-attr,,attr"
 PACKAGECONFIG[ldap] = ",,openldap"
+PACKAGECONFIG[libaio] = "--with-libaio,,libaio,"
+PACKAGECONFIG[libcap] = "--with-libcap,,libcap,"
+PACKAGECONFIG[valgrind] = "--with-valgrind,,valgrind,"
+
 SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'ldap', '', 'file://avoid-openldap-unless-wanted.patch', d)}"
 
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/LGPL-3.0;md5=bfccfe952269fff2b407dd11f2f3083b \
-- 
2.8.3



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [meta-networking][PATCH 4/4] libtdb: fixes for deterministic builds
  2016-09-20  5:42 [meta-networking][PATCH 0/4] libtalloc/tevent/ldb/tdb: fixes for deterministic builds jackie.huang
                   ` (2 preceding siblings ...)
  2016-09-20  5:42 ` [meta-networking][PATCH 3/4] libldb: " jackie.huang
@ 2016-09-20  5:42 ` jackie.huang
  3 siblings, 0 replies; 9+ messages in thread
From: jackie.huang @ 2016-09-20  5:42 UTC (permalink / raw)
  To: openembedded-devel

From: Jackie Huang <jackie.huang@windriver.com>

* Add configure option and PACKAGECONFIG for
  the following packages:
  - acl
  - attr
  - libaio
  - libcap
  - valgrind

* They are all optional, so disable by default
  or control them based on DISTRO_FEATURES.

* Remove the direct dependency on libaio

Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
---
 .../tdb-Add-configure-options-for-packages.patch   | 127 +++++++++++++++++++++
 .../recipes-support/libtdb/libtdb_1.3.10.bb        |  16 ++-
 2 files changed, 140 insertions(+), 3 deletions(-)
 create mode 100644 meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch

diff --git a/meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch b/meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch
new file mode 100644
index 0000000..6db0f9c
--- /dev/null
+++ b/meta-networking/recipes-support/libtdb/libtdb/tdb-Add-configure-options-for-packages.patch
@@ -0,0 +1,127 @@
+From 7f86be29df07fd6c371e3f4315cb7629c1b49eaa Mon Sep 17 00:00:00 2001
+From: Jackie Huang <jackie.huang@windriver.com>
+Date: Tue, 20 Sep 2016 09:04:47 +0800
+Subject: [PATCH] tdb: Add configure options for packages
+
+Add configure options for the following packages:
+ - acl
+ - attr
+ - libaio
+ - libcap
+ - valgrind
+
+Upstream-Status: Inappropriate [oe deterministic build specific]
+
+Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
+---
+ lib/replace/system/wscript_configure |  6 ++++-
+ lib/replace/wscript                  | 43 +++++++++++++++++++++++++++++++-----
+ wscript                              |  4 ++++
+ 3 files changed, 46 insertions(+), 7 deletions(-)
+ mode change 100644 => 100755 wscript
+
+diff --git a/lib/replace/system/wscript_configure b/lib/replace/system/wscript_configure
+index 2035474..10f9ae7 100644
+--- a/lib/replace/system/wscript_configure
++++ b/lib/replace/system/wscript_configure
+@@ -1,6 +1,10 @@
+ #!/usr/bin/env python
+ 
+-conf.CHECK_HEADERS('sys/capability.h')
++import Options
++
++if Options.options.enable_libcap:
++    conf.CHECK_HEADERS('sys/capability.h')
++
+ conf.CHECK_FUNCS('getpwnam_r getpwuid_r getpwent_r')
+ 
+ # solaris varients of getXXent_r
+diff --git a/lib/replace/wscript b/lib/replace/wscript
+index 145300d..c9e6a45 100644
+--- a/lib/replace/wscript
++++ b/lib/replace/wscript
+@@ -23,6 +23,22 @@ def set_options(opt):
+     opt.PRIVATE_EXTENSION_DEFAULT('')
+     opt.RECURSE('buildtools/wafsamba')
+ 
++    opt.add_option('--with-acl',
++                   help=("Enable use of acl"),
++                   action="store_true", dest='enable_acl', default=False)
++
++    opt.add_option('--with-attr',
++                   help=("Enable use of attr"),
++                   action="store_true", dest='enable_attr', default=False)
++
++    opt.add_option('--with-libaio',
++                   help=("Enable use of libaio"),
++                   action="store_true", dest='enable_libaio', default=False)
++
++    opt.add_option('--with-libcap',
++                   help=("Enable use of libcap"),
++                   action="store_true", dest='enable_libcap', default=False)
++
+ @Utils.run_once
+ def configure(conf):
+     conf.RECURSE('buildtools/wafsamba')
+@@ -32,12 +48,25 @@ def configure(conf):
+     conf.DEFINE('HAVE_LIBREPLACE', 1)
+     conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
+ 
+-    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h acl/libacl.h compat.h')
+-    conf.CHECK_HEADERS('acl/libacl.h attr/xattr.h compat.h ctype.h dustat.h')
++    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h')
++    conf.CHECK_HEADERS('compat.h ctype.h dustat.h')
+     conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h langinfo.h')
+-    conf.CHECK_HEADERS('libaio.h locale.h ndir.h pwd.h')
+-    conf.CHECK_HEADERS('shadow.h sys/acl.h')
+-    conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h')
++    conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
++    conf.CHECK_HEADERS('shadow.h')
++    conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h')
++
++    if Options.options.enable_acl:
++        conf.CHECK_HEADERS('acl/libacl.h sys/acl.h')
++
++    if Options.options.enable_attr:
++        conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h')
++
++    if Options.options.enable_libaio:
++        conf.CHECK_HEADERS('libaio.h')
++
++    if Options.options.enable_libcap:
++        conf.CHECK_HEADERS('sys/capability.h')
++
+     conf.CHECK_HEADERS('port.h')
+     conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
+     conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
+@@ -73,7 +102,9 @@ def configure(conf):
+ 
+     conf.CHECK_CODE('', headers='rpc/rpc.h rpcsvc/yp_prot.h', define='HAVE_RPCSVC_YP_PROT_H')
+ 
+-    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
++    if Options.options.enable_valgrind:
++        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
++
+     conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
+     conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h')
+     conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
+diff --git a/wscript b/wscript
+old mode 100644
+new mode 100755
+index 50b2286..eb5f90e
+--- a/wscript
++++ b/wscript
+@@ -66,6 +66,10 @@ def set_options(opt):
+                        action="store_true", dest='disable_python', default=False)
+ 
+ 
++    opt.add_option('--with-valgrind',
++                   help=("enable use of valgrind"),
++                   action="store_true", dest='enable_valgrind', default=False)
++
+ def configure(conf):
+     conf.env.disable_tdb_mutex_locking = getattr(Options.options,
+                                                  'disable_tdb_mutex_locking',
+-- 
+2.8.3
+
diff --git a/meta-networking/recipes-support/libtdb/libtdb_1.3.10.bb b/meta-networking/recipes-support/libtdb/libtdb_1.3.10.bb
index 35ae8c0..9ab0811 100644
--- a/meta-networking/recipes-support/libtdb/libtdb_1.3.10.bb
+++ b/meta-networking/recipes-support/libtdb/libtdb_1.3.10.bb
@@ -2,17 +2,27 @@ SUMMARY = "The tdb library"
 SECTION = "libs"
 LICENSE = "LGPL-3.0+ & GPL-3.0+"
 
-DEPENDS += "libaio"
-
 LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/LGPL-3.0;md5=bfccfe952269fff2b407dd11f2f3083b \
                     file://${COREBASE}/meta/files/common-licenses/GPL-3.0;md5=c79ff39f19dfec6d293b95dea7b07891"
 
 SRC_URI = "http://samba.org/ftp/tdb/tdb-${PV}.tar.gz \
-           file://do-not-check-xsltproc-manpages.patch"
+           file://do-not-check-xsltproc-manpages.patch \
+           file://tdb-Add-configure-options-for-packages.patch \
+"
 
 SRC_URI[md5sum] = "c98f24eb469022b0f1741d3a504cfda5"
 SRC_URI[sha256sum] = "5578fb726bd04835f250bea11fe7d1398fe0bb3a7c9390404241c83cd6b50c1c"
 
+PACKAGECONFIG ??= "\
+    ${@bb.utils.contains('DISTRO_FEATURES', 'acl', 'acl', '', d)} \
+    ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} \
+"
+PACKAGECONFIG[acl] = "--with-acl,,acl"
+PACKAGECONFIG[attr] = "--with-attr,,attr"
+PACKAGECONFIG[libaio] = "--with-libaio,,libaio,"
+PACKAGECONFIG[libcap] = "--with-libcap,,libcap,"
+PACKAGECONFIG[valgrind] = "--with-valgrind,,valgrind,"
+
 S = "${WORKDIR}/tdb-${PV}"
 
 inherit waf-samba
-- 
2.8.3



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [meta-networking][PATCH 1/4] libtalloc: fixes for deterministic builds
  2016-09-20  5:42 ` [meta-networking][PATCH 1/4] libtalloc: " jackie.huang
@ 2016-09-20  6:46   ` Martin Jansa
  2016-09-20  7:32     ` Huang, Jie (Jackie)
  0 siblings, 1 reply; 9+ messages in thread
From: Martin Jansa @ 2016-09-20  6:46 UTC (permalink / raw)
  To: openembedded-devel

[-- Attachment #1: Type: text/plain, Size: 8522 bytes --]

On Tue, Sep 20, 2016 at 01:42:23PM +0800, jackie.huang@windriver.com wrote:
> From: Jackie Huang <jackie.huang@windriver.com>
> 
> * Add configure option and PACKAGECONFIG for
>   the following packages:
>   - acl
>   - attr
>   - libaio
>   - libcap
>   - valgrind
> 
> * They are all optional, so disable by default
>   or control them based on DISTRO_FEATURES.
> 
> * Remove the direct dependency on libaio
> 
> Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
> ---
>  ...talloc-Add-configure-options-for-packages.patch | 124 +++++++++++++++++++++
>  .../recipes-support/libtalloc/libtalloc_2.1.8.bb   |  16 ++-
>  2 files changed, 137 insertions(+), 3 deletions(-)
>  create mode 100644 meta-networking/recipes-support/libtalloc/libtalloc/talloc-Add-configure-options-for-packages.patch
> 
> diff --git a/meta-networking/recipes-support/libtalloc/libtalloc/talloc-Add-configure-options-for-packages.patch b/meta-networking/recipes-support/libtalloc/libtalloc/talloc-Add-configure-options-for-packages.patch
> new file mode 100644
> index 0000000..d383df4
> --- /dev/null
> +++ b/meta-networking/recipes-support/libtalloc/libtalloc/talloc-Add-configure-options-for-packages.patch
> @@ -0,0 +1,124 @@
> +From 77fd757624c9b20073a7abefaca8382caa4fd376 Mon Sep 17 00:00:00 2001
> +From: Jackie Huang <jackie.huang@windriver.com>
> +Date: Wed, 14 Sep 2016 11:11:35 +0800
> +Subject: [PATCH] talloc: Add configure options for packages
> +
> +Add configure options for the following packages:
> + - acl
> + - attr
> + - libaio
> + - libcap
> + - valgrind
> +
> +Upstream-Status: Inappropriate [oe deterministic build specific]
> +
> +Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
> +---
> + lib/replace/system/wscript_configure |  6 ++++-
> + lib/replace/wscript                  | 43 +++++++++++++++++++++++++++++++-----
> + wscript                              |  4 ++++
> + 3 files changed, 46 insertions(+), 7 deletions(-)
> +
> +diff --git a/lib/replace/system/wscript_configure b/lib/replace/system/wscript_configure
> +index 2035474..10f9ae7 100644
> +--- a/lib/replace/system/wscript_configure
> ++++ b/lib/replace/system/wscript_configure
> +@@ -1,6 +1,10 @@
> + #!/usr/bin/env python
> + 
> +-conf.CHECK_HEADERS('sys/capability.h')
> ++import Options
> ++
> ++if Options.options.enable_libcap:
> ++    conf.CHECK_HEADERS('sys/capability.h')
> ++
> + conf.CHECK_FUNCS('getpwnam_r getpwuid_r getpwent_r')
> + 
> + # solaris varients of getXXent_r
> +diff --git a/lib/replace/wscript b/lib/replace/wscript
> +index fc43e1a..a899dd2 100644
> +--- a/lib/replace/wscript
> ++++ b/lib/replace/wscript
> +@@ -23,6 +23,22 @@ def set_options(opt):
> +     opt.PRIVATE_EXTENSION_DEFAULT('')
> +     opt.RECURSE('buildtools/wafsamba')
> + 
> ++    opt.add_option('--with-acl',
> ++                   help=("Enable use of acl"),
> ++                   action="store_true", dest='enable_acl', default=False)
> ++
> ++    opt.add_option('--with-attr',
> ++                   help=("Enable use of attr"),
> ++                   action="store_true", dest='enable_attr', default=False)
> ++
> ++    opt.add_option('--with-libaio',
> ++                   help=("Enable use of libaio"),
> ++                   action="store_true", dest='enable_libaio', default=False)
> ++
> ++    opt.add_option('--with-libcap',
> ++                   help=("Enable use of libcap"),
> ++                   action="store_true", dest='enable_libcap', default=False)
> ++
> + @Utils.run_once
> + def configure(conf):
> +     conf.RECURSE('buildtools/wafsamba')
> +@@ -32,12 +48,25 @@ def configure(conf):
> +     conf.DEFINE('HAVE_LIBREPLACE', 1)
> +     conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
> + 
> +-    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h acl/libacl.h compat.h')
> +-    conf.CHECK_HEADERS('acl/libacl.h attr/xattr.h compat.h ctype.h dustat.h')
> ++    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h')
> ++    conf.CHECK_HEADERS('compat.h ctype.h dustat.h')
> +     conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h langinfo.h')
> +-    conf.CHECK_HEADERS('libaio.h locale.h ndir.h pwd.h')
> +-    conf.CHECK_HEADERS('shadow.h sys/acl.h')
> +-    conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h')
> ++    conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
> ++    conf.CHECK_HEADERS('shadow.h')
> ++    conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h')
> ++
> ++    if Options.options.enable_acl:
> ++        conf.CHECK_HEADERS('acl/libacl.h sys/acl.h')
> ++
> ++    if Options.options.enable_attr:
> ++        conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h')
> ++
> ++    if Options.options.enable_libaio:
> ++        conf.CHECK_HEADERS('libaio.h')
> ++
> ++    if Options.options.enable_libcap:
> ++        conf.CHECK_HEADERS('sys/capability.h')
> ++
> +     conf.CHECK_HEADERS('port.h')
> +     conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
> +     conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h')
> +@@ -73,7 +102,9 @@ def configure(conf):
> + 
> +     conf.CHECK_CODE('', headers='rpc/rpc.h rpcsvc/yp_prot.h', define='HAVE_RPCSVC_YP_PROT_H')
> + 
> +-    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
> ++    if Options.options.enable_valgrind:
> ++        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
> ++
> +     conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
> +     conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h')
> +     conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
> +diff --git a/wscript b/wscript
> +index 41f3be7..f900c24 100644
> +--- a/wscript
> ++++ b/wscript
> +@@ -35,6 +35,10 @@ def set_options(opt):
> +         opt.add_option('--disable-python',
> +                        help=("disable the pytalloc module"),
> +                        action="store_true", dest='disable_python', default=False)
> ++        opt.add_option('--with-valgrind',
> ++                       help=("enable use of valgrind"),
> ++                       action="store_true", dest='enable_valgrind', default=False)
> ++
> + 
> + 
> + def configure(conf):
> +-- 
> +2.8.3
> +
> diff --git a/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb b/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
> index 7c85ab3..8b2ae33 100644
> --- a/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
> +++ b/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
> @@ -3,9 +3,11 @@ HOMEPAGE = "http://talloc.samba.org"
>  SECTION = "libs"
>  LICENSE = "LGPL-3.0+ & GPL-3.0+"
>  
> -DEPENDS += "libaio libbsd"
> +DEPENDS += "libbsd"
>  
> -SRC_URI = "http://samba.org/ftp/talloc/talloc-${PV}.tar.gz"
> +SRC_URI = "http://samba.org/ftp/talloc/talloc-${PV}.tar.gz \
> +           file://talloc-Add-configure-options-for-packages.patch \
> +"
>  LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/LGPL-3.0;md5=bfccfe952269fff2b407dd11f2f3083b \
>                      file://${COREBASE}/meta/files/common-licenses/GPL-3.0;md5=c79ff39f19dfec6d293b95dea7b07891"

I know you haven't changed this, but

This is wrong, we should use some files in talloc source, not
common-license.

>  
> @@ -15,7 +17,15 @@ SRC_URI[sha256sum] = "22d14911164d4de67ff76b5269fa5250d01f78c955bc77e28615350996
>  
>  inherit waf-samba
>  
> -PACKAGECONFIG[attr] = ",,attr"
> +PACKAGECONFIG ??= "\
> +    ${@bb.utils.contains('DISTRO_FEATURES', 'acl', 'acl', '', d)} \
> +    ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} \
> +"
> +PACKAGECONFIG[acl] = "--with-acl,,acl"
> +PACKAGECONFIG[attr] = "--with-attr,,attr"
> +PACKAGECONFIG[libaio] = "--with-libaio,,libaio,"
> +PACKAGECONFIG[libcap] = "--with-libcap,,libcap,"
> +PACKAGECONFIG[valgrind] = "--with-valgrind,,valgrind,"

What about disable options for clarity?

>  
>  SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'attr', '', 'file://avoid-attr-unless-wanted.patch', d)}"
>  
> -- 
> 2.8.3
> 
> -- 
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel

-- 
Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 169 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [meta-networking][PATCH 1/4] libtalloc: fixes for deterministic builds
  2016-09-20  6:46   ` Martin Jansa
@ 2016-09-20  7:32     ` Huang, Jie (Jackie)
  2016-09-20  8:13       ` Martin Jansa
  0 siblings, 1 reply; 9+ messages in thread
From: Huang, Jie (Jackie) @ 2016-09-20  7:32 UTC (permalink / raw)
  To: openembedded-devel@lists.openembedded.org



> -----Original Message-----
> From: openembedded-devel-bounces@lists.openembedded.org [mailto:openembedded-devel-
> bounces@lists.openembedded.org] On Behalf Of Martin Jansa
> Sent: Tuesday, September 20, 2016 2:47 PM
> To: openembedded-devel@lists.openembedded.org
> Subject: Re: [oe] [meta-networking][PATCH 1/4] libtalloc: fixes for deterministic builds
> 
> On Tue, Sep 20, 2016 at 01:42:23PM +0800, jackie.huang@windriver.com wrote:
> > From: Jackie Huang <jackie.huang@windriver.com>
> >
> > * Add configure option and PACKAGECONFIG for
> >   the following packages:
> >   - acl
> >   - attr
> >   - libaio
> >   - libcap
> >   - valgrind
> >
> > * They are all optional, so disable by default
> >   or control them based on DISTRO_FEATURES.
> >
> > * Remove the direct dependency on libaio
> >
> > Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
> > ---
> >  ...talloc-Add-configure-options-for-packages.patch | 124 +++++++++++++++++++++
> >  .../recipes-support/libtalloc/libtalloc_2.1.8.bb   |  16 ++-
> >  2 files changed, 137 insertions(+), 3 deletions(-)
> >  create mode 100644 meta-networking/recipes-support/libtalloc/libtalloc/talloc-Add-configure-
> options-for-packages.patch
> >
> > diff --git a/meta-networking/recipes-support/libtalloc/libtalloc/talloc-Add-configure-options-for-
> packages.patch b/meta-networking/recipes-support/libtalloc/libtalloc/talloc-Add-configure-
> options-for-packages.patch
> > new file mode 100644
> > index 0000000..d383df4
> > --- /dev/null
> > +++ b/meta-networking/recipes-support/libtalloc/libtalloc/talloc-Add-configure-options-for-
> packages.patch
> > @@ -0,0 +1,124 @@
> > +From 77fd757624c9b20073a7abefaca8382caa4fd376 Mon Sep 17 00:00:00 2001
> > +From: Jackie Huang <jackie.huang@windriver.com>
> > +Date: Wed, 14 Sep 2016 11:11:35 +0800
> > +Subject: [PATCH] talloc: Add configure options for packages
> > +
> > +Add configure options for the following packages:
> > + - acl
> > + - attr
> > + - libaio
> > + - libcap
> > + - valgrind
> > +
> > +Upstream-Status: Inappropriate [oe deterministic build specific]
> > +
> > +Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
> > +---
> > + lib/replace/system/wscript_configure |  6 ++++-
> > + lib/replace/wscript                  | 43 +++++++++++++++++++++++++++++++-----
> > + wscript                              |  4 ++++
> > + 3 files changed, 46 insertions(+), 7 deletions(-)
> > +
> > +diff --git a/lib/replace/system/wscript_configure b/lib/replace/system/wscript_configure
> > +index 2035474..10f9ae7 100644
> > +--- a/lib/replace/system/wscript_configure
> > ++++ b/lib/replace/system/wscript_configure
> > +@@ -1,6 +1,10 @@
> > + #!/usr/bin/env python
> > +
> > +-conf.CHECK_HEADERS('sys/capability.h')
> > ++import Options
> > ++
> > ++if Options.options.enable_libcap:
> > ++    conf.CHECK_HEADERS('sys/capability.h')
> > ++
> > + conf.CHECK_FUNCS('getpwnam_r getpwuid_r getpwent_r')
> > +
> > + # solaris varients of getXXent_r
> > +diff --git a/lib/replace/wscript b/lib/replace/wscript
> > +index fc43e1a..a899dd2 100644
> > +--- a/lib/replace/wscript
> > ++++ b/lib/replace/wscript
> > +@@ -23,6 +23,22 @@ def set_options(opt):
> > +     opt.PRIVATE_EXTENSION_DEFAULT('')
> > +     opt.RECURSE('buildtools/wafsamba')
> > +
> > ++    opt.add_option('--with-acl',
> > ++                   help=("Enable use of acl"),
> > ++                   action="store_true", dest='enable_acl', default=False)
> > ++
> > ++    opt.add_option('--with-attr',
> > ++                   help=("Enable use of attr"),
> > ++                   action="store_true", dest='enable_attr', default=False)
> > ++
> > ++    opt.add_option('--with-libaio',
> > ++                   help=("Enable use of libaio"),
> > ++                   action="store_true", dest='enable_libaio', default=False)
> > ++
> > ++    opt.add_option('--with-libcap',
> > ++                   help=("Enable use of libcap"),
> > ++                   action="store_true", dest='enable_libcap', default=False)
> > ++
> > + @Utils.run_once
> > + def configure(conf):
> > +     conf.RECURSE('buildtools/wafsamba')
> > +@@ -32,12 +48,25 @@ def configure(conf):
> > +     conf.DEFINE('HAVE_LIBREPLACE', 1)
> > +     conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
> > +
> > +-    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h acl/libacl.h compat.h')
> > +-    conf.CHECK_HEADERS('acl/libacl.h attr/xattr.h compat.h ctype.h dustat.h')
> > ++    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h')
> > ++    conf.CHECK_HEADERS('compat.h ctype.h dustat.h')
> > +     conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h langinfo.h')
> > +-    conf.CHECK_HEADERS('libaio.h locale.h ndir.h pwd.h')
> > +-    conf.CHECK_HEADERS('shadow.h sys/acl.h')
> > +-    conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h')
> > ++    conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
> > ++    conf.CHECK_HEADERS('shadow.h')
> > ++    conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h')
> > ++
> > ++    if Options.options.enable_acl:
> > ++        conf.CHECK_HEADERS('acl/libacl.h sys/acl.h')
> > ++
> > ++    if Options.options.enable_attr:
> > ++        conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h')
> > ++
> > ++    if Options.options.enable_libaio:
> > ++        conf.CHECK_HEADERS('libaio.h')
> > ++
> > ++    if Options.options.enable_libcap:
> > ++        conf.CHECK_HEADERS('sys/capability.h')
> > ++
> > +     conf.CHECK_HEADERS('port.h')
> > +     conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h sys/fs/vx/quota.h')
> > +     conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h
> sys/priv.h')
> > +@@ -73,7 +102,9 @@ def configure(conf):
> > +
> > +     conf.CHECK_CODE('', headers='rpc/rpc.h rpcsvc/yp_prot.h', define='HAVE_RPCSVC_YP_PROT_H')
> > +
> > +-    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
> > ++    if Options.options.enable_valgrind:
> > ++        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h valgrind/memcheck.h')
> > ++
> > +     conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
> > +     conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h')
> > +     conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
> > +diff --git a/wscript b/wscript
> > +index 41f3be7..f900c24 100644
> > +--- a/wscript
> > ++++ b/wscript
> > +@@ -35,6 +35,10 @@ def set_options(opt):
> > +         opt.add_option('--disable-python',
> > +                        help=("disable the pytalloc module"),
> > +                        action="store_true", dest='disable_python', default=False)
> > ++        opt.add_option('--with-valgrind',
> > ++                       help=("enable use of valgrind"),
> > ++                       action="store_true", dest='enable_valgrind', default=False)
> > ++
> > +
> > +
> > + def configure(conf):
> > +--
> > +2.8.3
> > +
> > diff --git a/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb b/meta-
> networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
> > index 7c85ab3..8b2ae33 100644
> > --- a/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
> > +++ b/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
> > @@ -3,9 +3,11 @@ HOMEPAGE = "http://talloc.samba.org"
> >  SECTION = "libs"
> >  LICENSE = "LGPL-3.0+ & GPL-3.0+"
> >
> > -DEPENDS += "libaio libbsd"
> > +DEPENDS += "libbsd"
> >
> > -SRC_URI = "http://samba.org/ftp/talloc/talloc-${PV}.tar.gz"
> > +SRC_URI = "http://samba.org/ftp/talloc/talloc-${PV}.tar.gz \
> > +           file://talloc-Add-configure-options-for-packages.patch \
> > +"
> >  LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/LGPL-
> 3.0;md5=bfccfe952269fff2b407dd11f2f3083b \
> >                      file://${COREBASE}/meta/files/common-licenses/GPL-
> 3.0;md5=c79ff39f19dfec6d293b95dea7b07891"
> 
> I know you haven't changed this, but
> 
> This is wrong, we should use some files in talloc source, not
> common-license.

Yes, I will fix this as follow-up.

> 
> >
> > @@ -15,7 +17,15 @@ SRC_URI[sha256sum] =
> "22d14911164d4de67ff76b5269fa5250d01f78c955bc77e28615350996
> >
> >  inherit waf-samba
> >
> > -PACKAGECONFIG[attr] = ",,attr"
> > +PACKAGECONFIG ??= "\
> > +    ${@bb.utils.contains('DISTRO_FEATURES', 'acl', 'acl', '', d)} \
> > +    ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)} \
> > +"
> > +PACKAGECONFIG[acl] = "--with-acl,,acl"
> > +PACKAGECONFIG[attr] = "--with-attr,,attr"
> > +PACKAGECONFIG[libaio] = "--with-libaio,,libaio,"
> > +PACKAGECONFIG[libcap] = "--with-libcap,,libcap,"
> > +PACKAGECONFIG[valgrind] = "--with-valgrind,,valgrind,"
> 
> What about disable options for clarity?

Do you mean something like:
PACKAGECONFIG[valgrind] = ",--disable-valgrind,valgrind,"

Thanks,
Jackie

> 
> >
> >  SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'attr', '', 'file://avoid-attr-unless-
> wanted.patch', d)}"
> >
> > --
> > 2.8.3
> >
> > --
> > _______________________________________________
> > Openembedded-devel mailing list
> > Openembedded-devel@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> 
> --
> Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [meta-networking][PATCH 1/4] libtalloc: fixes for deterministic builds
  2016-09-20  7:32     ` Huang, Jie (Jackie)
@ 2016-09-20  8:13       ` Martin Jansa
  2016-09-21  0:51         ` Huang, Jie (Jackie)
  0 siblings, 1 reply; 9+ messages in thread
From: Martin Jansa @ 2016-09-20  8:13 UTC (permalink / raw)
  To: openembedded-devel

something like:
PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind,"


On Tue, Sep 20, 2016 at 9:32 AM, Huang, Jie (Jackie) <
Jackie.Huang@windriver.com> wrote:

>
>
> > -----Original Message-----
> > From: openembedded-devel-bounces@lists.openembedded.org [mailto:
> openembedded-devel-
> > bounces@lists.openembedded.org] On Behalf Of Martin Jansa
> > Sent: Tuesday, September 20, 2016 2:47 PM
> > To: openembedded-devel@lists.openembedded.org
> > Subject: Re: [oe] [meta-networking][PATCH 1/4] libtalloc: fixes for
> deterministic builds
> >
> > On Tue, Sep 20, 2016 at 01:42:23PM +0800, jackie.huang@windriver.com
> wrote:
> > > From: Jackie Huang <jackie.huang@windriver.com>
> > >
> > > * Add configure option and PACKAGECONFIG for
> > >   the following packages:
> > >   - acl
> > >   - attr
> > >   - libaio
> > >   - libcap
> > >   - valgrind
> > >
> > > * They are all optional, so disable by default
> > >   or control them based on DISTRO_FEATURES.
> > >
> > > * Remove the direct dependency on libaio
> > >
> > > Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
> > > ---
> > >  ...talloc-Add-configure-options-for-packages.patch | 124
> +++++++++++++++++++++
> > >  .../recipes-support/libtalloc/libtalloc_2.1.8.bb   |  16 ++-
> > >  2 files changed, 137 insertions(+), 3 deletions(-)
> > >  create mode 100644 meta-networking/recipes-
> support/libtalloc/libtalloc/talloc-Add-configure-
> > options-for-packages.patch
> > >
> > > diff --git a/meta-networking/recipes-support/libtalloc/libtalloc/
> talloc-Add-configure-options-for-
> > packages.patch b/meta-networking/recipes-support/libtalloc/libtalloc/
> talloc-Add-configure-
> > options-for-packages.patch
> > > new file mode 100644
> > > index 0000000..d383df4
> > > --- /dev/null
> > > +++ b/meta-networking/recipes-support/libtalloc/libtalloc/
> talloc-Add-configure-options-for-
> > packages.patch
> > > @@ -0,0 +1,124 @@
> > > +From 77fd757624c9b20073a7abefaca8382caa4fd376 Mon Sep 17 00:00:00
> 2001
> > > +From: Jackie Huang <jackie.huang@windriver.com>
> > > +Date: Wed, 14 Sep 2016 11:11:35 +0800
> > > +Subject: [PATCH] talloc: Add configure options for packages
> > > +
> > > +Add configure options for the following packages:
> > > + - acl
> > > + - attr
> > > + - libaio
> > > + - libcap
> > > + - valgrind
> > > +
> > > +Upstream-Status: Inappropriate [oe deterministic build specific]
> > > +
> > > +Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
> > > +---
> > > + lib/replace/system/wscript_configure |  6 ++++-
> > > + lib/replace/wscript                  | 43
> +++++++++++++++++++++++++++++++-----
> > > + wscript                              |  4 ++++
> > > + 3 files changed, 46 insertions(+), 7 deletions(-)
> > > +
> > > +diff --git a/lib/replace/system/wscript_configure
> b/lib/replace/system/wscript_configure
> > > +index 2035474..10f9ae7 100644
> > > +--- a/lib/replace/system/wscript_configure
> > > ++++ b/lib/replace/system/wscript_configure
> > > +@@ -1,6 +1,10 @@
> > > + #!/usr/bin/env python
> > > +
> > > +-conf.CHECK_HEADERS('sys/capability.h')
> > > ++import Options
> > > ++
> > > ++if Options.options.enable_libcap:
> > > ++    conf.CHECK_HEADERS('sys/capability.h')
> > > ++
> > > + conf.CHECK_FUNCS('getpwnam_r getpwuid_r getpwent_r')
> > > +
> > > + # solaris varients of getXXent_r
> > > +diff --git a/lib/replace/wscript b/lib/replace/wscript
> > > +index fc43e1a..a899dd2 100644
> > > +--- a/lib/replace/wscript
> > > ++++ b/lib/replace/wscript
> > > +@@ -23,6 +23,22 @@ def set_options(opt):
> > > +     opt.PRIVATE_EXTENSION_DEFAULT('')
> > > +     opt.RECURSE('buildtools/wafsamba')
> > > +
> > > ++    opt.add_option('--with-acl',
> > > ++                   help=("Enable use of acl"),
> > > ++                   action="store_true", dest='enable_acl',
> default=False)
> > > ++
> > > ++    opt.add_option('--with-attr',
> > > ++                   help=("Enable use of attr"),
> > > ++                   action="store_true", dest='enable_attr',
> default=False)
> > > ++
> > > ++    opt.add_option('--with-libaio',
> > > ++                   help=("Enable use of libaio"),
> > > ++                   action="store_true", dest='enable_libaio',
> default=False)
> > > ++
> > > ++    opt.add_option('--with-libcap',
> > > ++                   help=("Enable use of libcap"),
> > > ++                   action="store_true", dest='enable_libcap',
> default=False)
> > > ++
> > > + @Utils.run_once
> > > + def configure(conf):
> > > +     conf.RECURSE('buildtools/wafsamba')
> > > +@@ -32,12 +48,25 @@ def configure(conf):
> > > +     conf.DEFINE('HAVE_LIBREPLACE', 1)
> > > +     conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
> > > +
> > > +-    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h acl/libacl.h
> compat.h')
> > > +-    conf.CHECK_HEADERS('acl/libacl.h attr/xattr.h compat.h ctype.h
> dustat.h')
> > > ++    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h')
> > > ++    conf.CHECK_HEADERS('compat.h ctype.h dustat.h')
> > > +     conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h
> langinfo.h')
> > > +-    conf.CHECK_HEADERS('libaio.h locale.h ndir.h pwd.h')
> > > +-    conf.CHECK_HEADERS('shadow.h sys/acl.h')
> > > +-    conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h
> sys/capability.h sys/dir.h sys/epoll.h')
> > > ++    conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
> > > ++    conf.CHECK_HEADERS('shadow.h')
> > > ++    conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h')
> > > ++
> > > ++    if Options.options.enable_acl:
> > > ++        conf.CHECK_HEADERS('acl/libacl.h sys/acl.h')
> > > ++
> > > ++    if Options.options.enable_attr:
> > > ++        conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h')
> > > ++
> > > ++    if Options.options.enable_libaio:
> > > ++        conf.CHECK_HEADERS('libaio.h')
> > > ++
> > > ++    if Options.options.enable_libcap:
> > > ++        conf.CHECK_HEADERS('sys/capability.h')
> > > ++
> > > +     conf.CHECK_HEADERS('port.h')
> > > +     conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h
> sys/fs/s5param.h sys/fs/vx/quota.h')
> > > +     conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h
> sys/mode.h sys/ndir.h
> > sys/priv.h')
> > > +@@ -73,7 +102,9 @@ def configure(conf):
> > > +
> > > +     conf.CHECK_CODE('', headers='rpc/rpc.h rpcsvc/yp_prot.h',
> define='HAVE_RPCSVC_YP_PROT_H')
> > > +
> > > +-    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h
> valgrind/memcheck.h')
> > > ++    if Options.options.enable_valgrind:
> > > ++        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h
> valgrind/memcheck.h')
> > > ++
> > > +     conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
> > > +     conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h
> sys/cdefs.h')
> > > +     conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
> > > +diff --git a/wscript b/wscript
> > > +index 41f3be7..f900c24 100644
> > > +--- a/wscript
> > > ++++ b/wscript
> > > +@@ -35,6 +35,10 @@ def set_options(opt):
> > > +         opt.add_option('--disable-python',
> > > +                        help=("disable the pytalloc module"),
> > > +                        action="store_true", dest='disable_python',
> default=False)
> > > ++        opt.add_option('--with-valgrind',
> > > ++                       help=("enable use of valgrind"),
> > > ++                       action="store_true", dest='enable_valgrind',
> default=False)
> > > ++
> > > +
> > > +
> > > + def configure(conf):
> > > +--
> > > +2.8.3
> > > +
> > > diff --git a/meta-networking/recipes-support/libtalloc/libtalloc_2.
> 1.8.bb b/meta-
> > networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
> > > index 7c85ab3..8b2ae33 100644
> > > --- a/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
> > > +++ b/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
> > > @@ -3,9 +3,11 @@ HOMEPAGE = "http://talloc.samba.org"
> > >  SECTION = "libs"
> > >  LICENSE = "LGPL-3.0+ & GPL-3.0+"
> > >
> > > -DEPENDS += "libaio libbsd"
> > > +DEPENDS += "libbsd"
> > >
> > > -SRC_URI = "http://samba.org/ftp/talloc/talloc-${PV}.tar.gz"
> > > +SRC_URI = "http://samba.org/ftp/talloc/talloc-${PV}.tar.gz \
> > > +           file://talloc-Add-configure-options-for-packages.patch \
> > > +"
> > >  LIC_FILES_CHKSUM = "file://${COREBASE}/meta/
> files/common-licenses/LGPL-
> > 3.0;md5=bfccfe952269fff2b407dd11f2f3083b \
> > >                      file://${COREBASE}/meta/files/
> common-licenses/GPL-
> > 3.0;md5=c79ff39f19dfec6d293b95dea7b07891"
> >
> > I know you haven't changed this, but
> >
> > This is wrong, we should use some files in talloc source, not
> > common-license.
>
> Yes, I will fix this as follow-up.
>
> >
> > >
> > > @@ -15,7 +17,15 @@ SRC_URI[sha256sum] =
> > "22d14911164d4de67ff76b5269fa5250d01f78c955bc77e28615350996
> > >
> > >  inherit waf-samba
> > >
> > > -PACKAGECONFIG[attr] = ",,attr"
> > > +PACKAGECONFIG ??= "\
> > > +    ${@bb.utils.contains('DISTRO_FEATURES', 'acl', 'acl', '', d)} \
> > > +    ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)}
> \
> > > +"
> > > +PACKAGECONFIG[acl] = "--with-acl,,acl"
> > > +PACKAGECONFIG[attr] = "--with-attr,,attr"
> > > +PACKAGECONFIG[libaio] = "--with-libaio,,libaio,"
> > > +PACKAGECONFIG[libcap] = "--with-libcap,,libcap,"
> > > +PACKAGECONFIG[valgrind] = "--with-valgrind,,valgrind,"
> >
> > What about disable options for clarity?
>
> Do you mean something like:
> PACKAGECONFIG[valgrind] = ",--disable-valgrind,valgrind,"
>
> Thanks,
> Jackie
>
> >
> > >
> > >  SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'attr', '',
> 'file://avoid-attr-unless-
> > wanted.patch', d)}"
> > >
> > > --
> > > 2.8.3
> > >
> > > --
> > > _______________________________________________
> > > Openembedded-devel mailing list
> > > Openembedded-devel@lists.openembedded.org
> > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> >
> > --
> > Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel
>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [meta-networking][PATCH 1/4] libtalloc: fixes for deterministic builds
  2016-09-20  8:13       ` Martin Jansa
@ 2016-09-21  0:51         ` Huang, Jie (Jackie)
  0 siblings, 0 replies; 9+ messages in thread
From: Huang, Jie (Jackie) @ 2016-09-21  0:51 UTC (permalink / raw)
  To: openembedded-devel@lists.openembedded.org



> -----Original Message-----
> From: openembedded-devel-bounces@lists.openembedded.org [mailto:openembedded-devel-
> bounces@lists.openembedded.org] On Behalf Of Martin Jansa
> Sent: Tuesday, September 20, 2016 4:14 PM
> To: openembedded-devel
> Subject: Re: [oe] [meta-networking][PATCH 1/4] libtalloc: fixes for deterministic builds
> 
> something like:
> PACKAGECONFIG[valgrind] = "--with-valgrind,--without-valgrind,valgrind,"

That's what I wanted as well, but there is not an implicit option "--without-pkg" when
"--with-pkg" is added, we have to explicitly add both of them, which I thought may not
be necessary.

It's definitely more clear, so I will add them as suggested in v2.

Thanks,
Jackie

> 
> 
> On Tue, Sep 20, 2016 at 9:32 AM, Huang, Jie (Jackie) <
> Jackie.Huang@windriver.com> wrote:
> 
> >
> >
> > > -----Original Message-----
> > > From: openembedded-devel-bounces@lists.openembedded.org [mailto:
> > openembedded-devel-
> > > bounces@lists.openembedded.org] On Behalf Of Martin Jansa
> > > Sent: Tuesday, September 20, 2016 2:47 PM
> > > To: openembedded-devel@lists.openembedded.org
> > > Subject: Re: [oe] [meta-networking][PATCH 1/4] libtalloc: fixes for
> > deterministic builds
> > >
> > > On Tue, Sep 20, 2016 at 01:42:23PM +0800, jackie.huang@windriver.com
> > wrote:
> > > > From: Jackie Huang <jackie.huang@windriver.com>
> > > >
> > > > * Add configure option and PACKAGECONFIG for
> > > >   the following packages:
> > > >   - acl
> > > >   - attr
> > > >   - libaio
> > > >   - libcap
> > > >   - valgrind
> > > >
> > > > * They are all optional, so disable by default
> > > >   or control them based on DISTRO_FEATURES.
> > > >
> > > > * Remove the direct dependency on libaio
> > > >
> > > > Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
> > > > ---
> > > >  ...talloc-Add-configure-options-for-packages.patch | 124
> > +++++++++++++++++++++
> > > >  .../recipes-support/libtalloc/libtalloc_2.1.8.bb   |  16 ++-
> > > >  2 files changed, 137 insertions(+), 3 deletions(-)
> > > >  create mode 100644 meta-networking/recipes-
> > support/libtalloc/libtalloc/talloc-Add-configure-
> > > options-for-packages.patch
> > > >
> > > > diff --git a/meta-networking/recipes-support/libtalloc/libtalloc/
> > talloc-Add-configure-options-for-
> > > packages.patch b/meta-networking/recipes-support/libtalloc/libtalloc/
> > talloc-Add-configure-
> > > options-for-packages.patch
> > > > new file mode 100644
> > > > index 0000000..d383df4
> > > > --- /dev/null
> > > > +++ b/meta-networking/recipes-support/libtalloc/libtalloc/
> > talloc-Add-configure-options-for-
> > > packages.patch
> > > > @@ -0,0 +1,124 @@
> > > > +From 77fd757624c9b20073a7abefaca8382caa4fd376 Mon Sep 17 00:00:00
> > 2001
> > > > +From: Jackie Huang <jackie.huang@windriver.com>
> > > > +Date: Wed, 14 Sep 2016 11:11:35 +0800
> > > > +Subject: [PATCH] talloc: Add configure options for packages
> > > > +
> > > > +Add configure options for the following packages:
> > > > + - acl
> > > > + - attr
> > > > + - libaio
> > > > + - libcap
> > > > + - valgrind
> > > > +
> > > > +Upstream-Status: Inappropriate [oe deterministic build specific]
> > > > +
> > > > +Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
> > > > +---
> > > > + lib/replace/system/wscript_configure |  6 ++++-
> > > > + lib/replace/wscript                  | 43
> > +++++++++++++++++++++++++++++++-----
> > > > + wscript                              |  4 ++++
> > > > + 3 files changed, 46 insertions(+), 7 deletions(-)
> > > > +
> > > > +diff --git a/lib/replace/system/wscript_configure
> > b/lib/replace/system/wscript_configure
> > > > +index 2035474..10f9ae7 100644
> > > > +--- a/lib/replace/system/wscript_configure
> > > > ++++ b/lib/replace/system/wscript_configure
> > > > +@@ -1,6 +1,10 @@
> > > > + #!/usr/bin/env python
> > > > +
> > > > +-conf.CHECK_HEADERS('sys/capability.h')
> > > > ++import Options
> > > > ++
> > > > ++if Options.options.enable_libcap:
> > > > ++    conf.CHECK_HEADERS('sys/capability.h')
> > > > ++
> > > > + conf.CHECK_FUNCS('getpwnam_r getpwuid_r getpwent_r')
> > > > +
> > > > + # solaris varients of getXXent_r
> > > > +diff --git a/lib/replace/wscript b/lib/replace/wscript
> > > > +index fc43e1a..a899dd2 100644
> > > > +--- a/lib/replace/wscript
> > > > ++++ b/lib/replace/wscript
> > > > +@@ -23,6 +23,22 @@ def set_options(opt):
> > > > +     opt.PRIVATE_EXTENSION_DEFAULT('')
> > > > +     opt.RECURSE('buildtools/wafsamba')
> > > > +
> > > > ++    opt.add_option('--with-acl',
> > > > ++                   help=("Enable use of acl"),
> > > > ++                   action="store_true", dest='enable_acl',
> > default=False)
> > > > ++
> > > > ++    opt.add_option('--with-attr',
> > > > ++                   help=("Enable use of attr"),
> > > > ++                   action="store_true", dest='enable_attr',
> > default=False)
> > > > ++
> > > > ++    opt.add_option('--with-libaio',
> > > > ++                   help=("Enable use of libaio"),
> > > > ++                   action="store_true", dest='enable_libaio',
> > default=False)
> > > > ++
> > > > ++    opt.add_option('--with-libcap',
> > > > ++                   help=("Enable use of libcap"),
> > > > ++                   action="store_true", dest='enable_libcap',
> > default=False)
> > > > ++
> > > > + @Utils.run_once
> > > > + def configure(conf):
> > > > +     conf.RECURSE('buildtools/wafsamba')
> > > > +@@ -32,12 +48,25 @@ def configure(conf):
> > > > +     conf.DEFINE('HAVE_LIBREPLACE', 1)
> > > > +     conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1)
> > > > +
> > > > +-    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h acl/libacl.h
> > compat.h')
> > > > +-    conf.CHECK_HEADERS('acl/libacl.h attr/xattr.h compat.h ctype.h
> > dustat.h')
> > > > ++    conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h')
> > > > ++    conf.CHECK_HEADERS('compat.h ctype.h dustat.h')
> > > > +     conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h
> > langinfo.h')
> > > > +-    conf.CHECK_HEADERS('libaio.h locale.h ndir.h pwd.h')
> > > > +-    conf.CHECK_HEADERS('shadow.h sys/acl.h')
> > > > +-    conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h
> > sys/capability.h sys/dir.h sys/epoll.h')
> > > > ++    conf.CHECK_HEADERS('locale.h ndir.h pwd.h')
> > > > ++    conf.CHECK_HEADERS('shadow.h')
> > > > ++    conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h')
> > > > ++
> > > > ++    if Options.options.enable_acl:
> > > > ++        conf.CHECK_HEADERS('acl/libacl.h sys/acl.h')
> > > > ++
> > > > ++    if Options.options.enable_attr:
> > > > ++        conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h')
> > > > ++
> > > > ++    if Options.options.enable_libaio:
> > > > ++        conf.CHECK_HEADERS('libaio.h')
> > > > ++
> > > > ++    if Options.options.enable_libcap:
> > > > ++        conf.CHECK_HEADERS('sys/capability.h')
> > > > ++
> > > > +     conf.CHECK_HEADERS('port.h')
> > > > +     conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h
> > sys/fs/s5param.h sys/fs/vx/quota.h')
> > > > +     conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h
> > sys/mode.h sys/ndir.h
> > > sys/priv.h')
> > > > +@@ -73,7 +102,9 @@ def configure(conf):
> > > > +
> > > > +     conf.CHECK_CODE('', headers='rpc/rpc.h rpcsvc/yp_prot.h',
> > define='HAVE_RPCSVC_YP_PROT_H')
> > > > +
> > > > +-    conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h
> > valgrind/memcheck.h')
> > > > ++    if Options.options.enable_valgrind:
> > > > ++        conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h
> > valgrind/memcheck.h')
> > > > ++
> > > > +     conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h')
> > > > +     conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h
> > sys/cdefs.h')
> > > > +     conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h')
> > > > +diff --git a/wscript b/wscript
> > > > +index 41f3be7..f900c24 100644
> > > > +--- a/wscript
> > > > ++++ b/wscript
> > > > +@@ -35,6 +35,10 @@ def set_options(opt):
> > > > +         opt.add_option('--disable-python',
> > > > +                        help=("disable the pytalloc module"),
> > > > +                        action="store_true", dest='disable_python',
> > default=False)
> > > > ++        opt.add_option('--with-valgrind',
> > > > ++                       help=("enable use of valgrind"),
> > > > ++                       action="store_true", dest='enable_valgrind',
> > default=False)
> > > > ++
> > > > +
> > > > +
> > > > + def configure(conf):
> > > > +--
> > > > +2.8.3
> > > > +
> > > > diff --git a/meta-networking/recipes-support/libtalloc/libtalloc_2.
> > 1.8.bb b/meta-
> > > networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
> > > > index 7c85ab3..8b2ae33 100644
> > > > --- a/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
> > > > +++ b/meta-networking/recipes-support/libtalloc/libtalloc_2.1.8.bb
> > > > @@ -3,9 +3,11 @@ HOMEPAGE = "http://talloc.samba.org"
> > > >  SECTION = "libs"
> > > >  LICENSE = "LGPL-3.0+ & GPL-3.0+"
> > > >
> > > > -DEPENDS += "libaio libbsd"
> > > > +DEPENDS += "libbsd"
> > > >
> > > > -SRC_URI = "http://samba.org/ftp/talloc/talloc-${PV}.tar.gz"
> > > > +SRC_URI = "http://samba.org/ftp/talloc/talloc-${PV}.tar.gz \
> > > > +           file://talloc-Add-configure-options-for-packages.patch \
> > > > +"
> > > >  LIC_FILES_CHKSUM = "file://${COREBASE}/meta/
> > files/common-licenses/LGPL-
> > > 3.0;md5=bfccfe952269fff2b407dd11f2f3083b \
> > > >                      file://${COREBASE}/meta/files/
> > common-licenses/GPL-
> > > 3.0;md5=c79ff39f19dfec6d293b95dea7b07891"
> > >
> > > I know you haven't changed this, but
> > >
> > > This is wrong, we should use some files in talloc source, not
> > > common-license.
> >
> > Yes, I will fix this as follow-up.
> >
> > >
> > > >
> > > > @@ -15,7 +17,15 @@ SRC_URI[sha256sum] =
> > > "22d14911164d4de67ff76b5269fa5250d01f78c955bc77e28615350996
> > > >
> > > >  inherit waf-samba
> > > >
> > > > -PACKAGECONFIG[attr] = ",,attr"
> > > > +PACKAGECONFIG ??= "\
> > > > +    ${@bb.utils.contains('DISTRO_FEATURES', 'acl', 'acl', '', d)} \
> > > > +    ${@bb.utils.contains('DISTRO_FEATURES', 'xattr', 'attr', '', d)}
> > \
> > > > +"
> > > > +PACKAGECONFIG[acl] = "--with-acl,,acl"
> > > > +PACKAGECONFIG[attr] = "--with-attr,,attr"
> > > > +PACKAGECONFIG[libaio] = "--with-libaio,,libaio,"
> > > > +PACKAGECONFIG[libcap] = "--with-libcap,,libcap,"
> > > > +PACKAGECONFIG[valgrind] = "--with-valgrind,,valgrind,"
> > >
> > > What about disable options for clarity?
> >
> > Do you mean something like:
> > PACKAGECONFIG[valgrind] = ",--disable-valgrind,valgrind,"
> >
> > Thanks,
> > Jackie
> >
> > >
> > > >
> > > >  SRC_URI += "${@bb.utils.contains('PACKAGECONFIG', 'attr', '',
> > 'file://avoid-attr-unless-
> > > wanted.patch', d)}"
> > > >
> > > > --
> > > > 2.8.3
> > > >
> > > > --
> > > > _______________________________________________
> > > > Openembedded-devel mailing list
> > > > Openembedded-devel@lists.openembedded.org
> > > > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> > >
> > > --
> > > Martin 'JaMa' Jansa     jabber: Martin.Jansa@gmail.com
> > --
> > _______________________________________________
> > Openembedded-devel mailing list
> > Openembedded-devel@lists.openembedded.org
> > http://lists.openembedded.org/mailman/listinfo/openembedded-devel
> >
> --
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-devel


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2016-09-21  0:51 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-20  5:42 [meta-networking][PATCH 0/4] libtalloc/tevent/ldb/tdb: fixes for deterministic builds jackie.huang
2016-09-20  5:42 ` [meta-networking][PATCH 1/4] libtalloc: " jackie.huang
2016-09-20  6:46   ` Martin Jansa
2016-09-20  7:32     ` Huang, Jie (Jackie)
2016-09-20  8:13       ` Martin Jansa
2016-09-21  0:51         ` Huang, Jie (Jackie)
2016-09-20  5:42 ` [meta-networking][PATCH 2/4] libtevent: " jackie.huang
2016-09-20  5:42 ` [meta-networking][PATCH 3/4] libldb: " jackie.huang
2016-09-20  5:42 ` [meta-networking][PATCH 4/4] libtdb: " jackie.huang

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.