1From c012aa03613e6e74a0598185b222c7b531df1e2d Mon Sep 17 00:00:00 2001 2From: Wang Mingyu <wangmy@cn.fujitsu.com> 3Date: Fri, 25 Dec 2020 15:03:17 +0900 4Subject: [PATCH] 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 18Modified to apply to version 0.9.33. 19 20Signed-off-by: Joe Slater <joe.slater@windriver.com> 21 22Update patch to version 0.10.0 23Signed-off-by: Changqing Li <changqing.li@windriver.com> 24--- 25 lib/replace/wscript | 87 ++++++++++++++++++++++++++++++++++----------- 26 wscript | 6 ++++ 27 2 files changed, 73 insertions(+), 20 deletions(-) 28 29diff --git a/lib/replace/wscript b/lib/replace/wscript 30index a2bc604..e4642e8 100644 31--- a/lib/replace/wscript 32+++ b/lib/replace/wscript 33@@ -25,6 +25,41 @@ def options(opt): 34 opt.PRIVATE_EXTENSION_DEFAULT('') 35 opt.RECURSE('buildtools/wafsamba') 36 37+ opt.add_option('--with-acl', 38+ help=("Enable use of acl"), 39+ action="store_true", dest='enable_acl') 40+ opt.add_option('--without-acl', 41+ help=("Disable use of acl"), 42+ action="store_false", dest='enable_acl', default=False) 43+ 44+ opt.add_option('--with-attr', 45+ help=("Enable use of attr"), 46+ action="store_true", dest='enable_attr') 47+ opt.add_option('--without-attr', 48+ help=("Disable use of attr"), 49+ action="store_false", dest='enable_attr', default=False) 50+ 51+ opt.add_option('--with-libaio', 52+ help=("Enable use of libaio"), 53+ action="store_true", dest='enable_libaio') 54+ opt.add_option('--without-libaio', 55+ help=("Disable use of libaio"), 56+ action="store_false", dest='enable_libaio', default=False) 57+ 58+ opt.add_option('--with-libbsd', 59+ help=("Enable use of libbsd"), 60+ action="store_true", dest='enable_libbsd') 61+ opt.add_option('--without-libbsd', 62+ help=("Disable use of libbsd"), 63+ action="store_false", dest='enable_libbsd', default=False) 64+ 65+ opt.add_option('--with-libcap', 66+ help=("Enable use of libcap"), 67+ action="store_true", dest='enable_libcap') 68+ opt.add_option('--without-libcap', 69+ help=("Disable use of libcap"), 70+ action="store_false", dest='enable_libcap', default=False) 71+ 72 @Utils.run_once 73 def configure(conf): 74 conf.RECURSE('buildtools/wafsamba') 75@@ -34,12 +69,25 @@ def configure(conf): 76 conf.DEFINE('HAVE_LIBREPLACE', 1) 77 conf.DEFINE('LIBREPLACE_NETWORK_CHECKS', 1) 78 79- conf.CHECK_HEADERS('linux/types.h crypt.h locale.h acl/libacl.h compat.h') 80- conf.CHECK_HEADERS('acl/libacl.h attr/xattr.h compat.h ctype.h dustat.h') 81+ conf.CHECK_HEADERS('linux/types.h crypt.h locale.h compat.h') 82+ conf.CHECK_HEADERS('compat.h ctype.h dustat.h') 83 conf.CHECK_HEADERS('fcntl.h fnmatch.h glob.h history.h krb5.h langinfo.h') 84 conf.CHECK_HEADERS('locale.h ndir.h pwd.h') 85- conf.CHECK_HEADERS('shadow.h sys/acl.h') 86- conf.CHECK_HEADERS('sys/attributes.h attr/attributes.h sys/capability.h sys/dir.h sys/epoll.h') 87+ conf.CHECK_HEADERS('shadow.h') 88+ conf.CHECK_HEADERS('sys/attributes.h sys/dir.h sys/epoll.h') 89+ 90+ if Options.options.enable_acl: 91+ conf.CHECK_HEADERS('acl/libacl.h sys/acl.h') 92+ 93+ if Options.options.enable_attr: 94+ conf.CHECK_HEADERS('attr/attributes.h attr/xattr.h') 95+ 96+ if Options.options.enable_libaio: 97+ conf.CHECK_HEADERS('libaio.h') 98+ 99+ if Options.options.enable_libcap: 100+ conf.CHECK_HEADERS('sys/capability.h') 101+ 102 conf.CHECK_HEADERS('port.h') 103 conf.CHECK_HEADERS('sys/fcntl.h sys/filio.h sys/filsys.h sys/fs/s5param.h') 104 conf.CHECK_HEADERS('sys/id.h sys/ioctl.h sys/ipc.h sys/mman.h sys/mode.h sys/ndir.h sys/priv.h') 105@@ -121,8 +169,9 @@ def configure(conf): 106 conf.CHECK_HEADERS('sys/fileio.h sys/filesys.h sys/dustat.h sys/sysmacros.h') 107 conf.CHECK_HEADERS('xfs/libxfs.h netgroup.h') 108 109- conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h') 110- conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h') 111+ if Options.options.enable_valgrind: 112+ conf.CHECK_HEADERS('valgrind.h valgrind/valgrind.h') 113+ conf.CHECK_HEADERS('valgrind/memcheck.h valgrind/helgrind.h') 114 conf.CHECK_HEADERS('nss_common.h nsswitch.h ns_api.h') 115 conf.CHECK_HEADERS('sys/extattr.h sys/ea.h sys/proplist.h sys/cdefs.h') 116 conf.CHECK_HEADERS('utmp.h utmpx.h lastlog.h') 117@@ -418,20 +467,18 @@ 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+ conf.CHECK_FUNCS_IN('strlcpy strlcat', 'bsd', headers='bsd/string.h', 139+ checklibc=True) 140+ if not conf.CHECK_FUNCS('getpeereid'): 141+ conf.CHECK_FUNCS_IN('getpeereid', 'bsd', headers='sys/types.h bsd/unistd.h') 142+ if not conf.CHECK_FUNCS_IN('setproctitle', 'setproctitle', headers='setproctitle.h'): 143+ conf.CHECK_FUNCS_IN('setproctitle', 'bsd', headers='sys/types.h bsd/unistd.h') 144+ 145+ if not conf.CHECK_FUNCS('closefrom'): 146+ conf.CHECK_FUNCS_IN('closefrom', 'bsd', headers='bsd/unistd.h') 147 148 conf.CHECK_CODE(''' 149 struct ucred cred; 150diff --git a/wscript b/wscript 151index 93af416..a0898b1 100644 152--- a/wscript 153+++ b/wscript 154@@ -25,6 +25,12 @@ def options(opt): 155 opt.RECURSE('lib/replace') 156 opt.RECURSE('lib/talloc') 157 158+ opt.add_option('--with-valgrind', 159+ help=("enable use of valgrind"), 160+ action="store_true", dest='enable_valgrind') 161+ opt.add_option('--without-valgrind', 162+ help=("disable use of valgrind"), 163+ action="store_false", dest='enable_valgrind', default=False) 164 165 def configure(conf): 166 conf.RECURSE('lib/replace') 167-- 1682.25.1 169 170