From 5e4b3b90981d67d48f1996cf77340dd953015cd0 Mon Sep 17 00:00:00 2001 From: Chris Johns Date: Thu, 7 Dec 2023 08:13:58 +1100 Subject: sb: Set the uid and gid on POSIX systems This improves performance because it avoids an exec each time the _uid macro is referenced and that can be a number of times for each config parsed. --- source-builder/sb/options.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/source-builder/sb/options.py b/source-builder/sb/options.py index d554097..05ad208 100644 --- a/source-builder/sb/options.py +++ b/source-builder/sb/options.py @@ -46,7 +46,7 @@ basepath = 'sb' # # Save the host and POSIX state. # -host_windows = False +host_windows = os.name == 'nt' host_posix = True class command_line: @@ -103,6 +103,10 @@ class command_line: self.defaults[self._long_opts[lo][0]] = ('none', 'none', self._long_opts[lo][3]) + # Set the _uid field, performance improvement on Unix + if not host_windows: + self.defaults['_uid'] = str(os.getuid()) + self.defaults['_gid'] = str(os.getgid()) def __str__(self): def _dict(dd): -- cgit v1.2.3