1From 71a10c176c34da898c0169371b3c1b032d2f88b1 Mon Sep 17 00:00:00 2001 2From: Changqing Li <changqing.li@windriver.com> 3Date: Wed, 19 Jun 2019 17:53:34 +0800 4Subject: [PATCH] tdb: Add configure options for packages 5 6Add configure options for the following packages: 7 - acl 8 - attr 9 - libaio 10 - libbsd 11 - libcap 12 - valgrind 13 14Upstream-Status: Inappropriate [oe deterministic build specific] 15 16Signed-off-by: Jackie Huang <jackie.huang@windriver.com> 17 18Update to 1.4.0 19 20Signed-off-by: Changqing Li <changqing.li@windriver.com> 21--- 22 lib/replace/wscript | 94 ++++++++++++++++++++++++++++++++++++++++------------- 23 wscript | 6 ++++ 24 2 files changed, 78 insertions(+), 22 deletions(-) 25 26diff --git a/lib/replace/wscript b/lib/replace/wscript 27index 1d01e1e..2336dc3 100644 28--- a/lib/replace/wscript 29+++ b/lib/replace/wscript 30@@ -25,6 +25,41 @@ def options(opt): 31 opt.PRIVATE_EXTENSION_DEFAULT('') 32 opt.RECURSE('buildtools/wafsamba') 33 34+ opt.add_option('--with-acl', 35+ help=("Enable use of acl"), 36+ action="store_true", dest='enable_acl') 37+ opt.add_option('--without-acl', 38+ help=("Disable use of acl"), 39+ action="store_false", dest='enable_acl', default=False) 40+ 41+ opt.add_option('--with-attr', 42+ help=("Enable use of attr"), 43+ action="store_true", dest='enable_attr') 44+ opt.add_option('--without-attr', 45+ help=("Disable use of attr"), 46+ action="store_false", dest='enable_attr', default=False) 47+ 48+ opt.add_option('--with-libaio', 49+ help=("Enable use of libaio"), 50+ action="store_true", dest='enable_libaio') 51+ opt.add_option('--without-libaio', 52+ help=("Disable use of libaio"), 53+ action="store_false", dest='enable_libaio', default=False) 54+ 55+ opt.add_option('--with-libbsd', 56+ help=("Enable use of libbsd"), 57+ action="store_true", dest='enable_libbsd') 58+ opt.add_option('--without-libbsd', 59+ help=("Disable use of libbsd"), 60+ action="store_false", dest='enable_libbsd', default=False) 61+ 62+ opt.add_option('--with-libcap', 63+ help=("Enable use of libcap"), 64+ action="store_true", dest='enable_libcap') 65+ opt.add_option('--without-libcap', 66+ help=("Disable use of libcap"), 67+ action="store_false", dest='enable_libcap', default=False) 68+ 69 @Utils.run_once 70 def configure(conf): 71 conf.RECURSE('buildtools/wafsamba') 72@@ -34,12 +69,25 @@ def configure(conf): 73 conf.DEFINE('HAVE_LIBREPLACE', 1) 74 conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1) 75 76- conf.CHECK_HEADERS('linux/types.h crypt.h locale.h acl/libacl.h compat.h') 77- conf.CHECK_HEADERS('acl/libacl.h attr/xattr.h compat.h ctype.h dustat.h') 78+ conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h') 79+ conf.CHECK_HEADERS('attr/xattr.h compat.h ctype.h dustat.h') 80 conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h langinfo.h') 81- conf.CHECK_HEADERS('locale.h ndir.h pwd.h') 82- conf.CHECK_HEADERS('shadow.h sys/acl.h') 83- conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h') 84+ conf.CHECK_HEADERS('locale.h ndir.h pwd.h') 85+ conf.CHECK_HEADERS('shadow.h') 86+ conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h') 87+ 88+ if Options.options.enable_acl: 89+ conf.CHECK_HEADERS('acl/libacl.h sys/acl.h') 90+ 91+ if Options.options.enable_attr: 92+ conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h') 93+ 94+ if Options.options.enable_libaio: 95+ conf.CHECK_HEADERS('libaio.h') 96+ 97+ if Options.options.enable_libcap: 98+ conf.CHECK_HEADERS('sys/capability.h') 99+ 100 conf.CHECK_HEADERS('port.h') 101 conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h') 102 conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h') 103@@ -110,9 +158,10 @@ def configure(conf): 104 conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h') 105 conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h') 106 107- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h') 108- conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h') 109- conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h') 110+ if Options.options.enable_valgrind: 111+ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h') 112+ conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h') 113+ 114 conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h') 115 conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h') 116 conf.CHECK_HEADERS('syscall.h sys/syscall.h inttypes.h') 117@@ -380,20 +429,21 @@ def configure(conf): 118 119 strlcpy_in_bsd = False 120 121- # libbsd on some platforms provides strlcpy and strlcat 122- if not conf.CHECK_FUNCS('strlcpy strlcat'): 123- if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h', 124- checklibc=True): 125- strlcpy_in_bsd = True 126- if not conf.CHECK_FUNCS('getpeereid'): 127- conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h') 128- if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'): 129- conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h') 130- if not conf.CHECK_FUNCS('setproctitle_init'): 131- conf.CHECK_FUNCS_IN('setproctitle_init', 'bsd', headers='sys/types.h bsd/unistd.h') 132- 133- if not conf.CHECK_FUNCS('closefrom'): 134- conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h') 135+ if Options.options.enable_libbsd: 136+ # libbsd on some platforms provides strlcpy and strlcat 137+ if not conf.CHECK_FUNCS('strlcpy strlcat'): 138+ if conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h', 139+ checklibc=True): 140+ strlcpy_in_bsd = True 141+ if not conf.CHECK_FUNCS('getpeereid'): 142+ conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h') 143+ if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'): 144+ conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h') 145+ if not conf.CHECK_FUNCS('setproctitle_init'): 146+ conf.CHECK_FUNCS_IN('setproctitle_init', 'bsd', headers='sys/types.h bsd/unistd.h') 147+ 148+ if not conf.CHECK_FUNCS('closefrom'): 149+ conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h') 150 151 conf.CHECK_CODE(''' 152 struct ucred cred; 153diff --git a/wscript b/wscript 154index 5598d02..8d47244 100644 155--- a/wscript 156+++ b/wscript 157@@ -69,6 +69,12 @@ def options(opt): 158 action="store_true", dest='disable_tdb_mutex_locking', 159 default=False) 160 161+ opt.add_option('--with-valgrind', 162+ help=("enable use of valgrind"), 163+ action="store_true", dest='enable_valgrind') 164+ opt.add_option('--without-valgrind', 165+ help=("disable use of valgrind"), 166+ action="store_false", dest='enable_valgrind', default=False) 167 168 def configure(conf): 169 conf.env.disable_tdb_mutex_locking = getattr(Options.options, 170-- 1712.7.4 172 173