1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-12 20:58:37 +03:00

build: Add --vendor-name --vendor-patch-revision options to ./configure

These options are for packagers and vendors to set so that when
Samba developers are debugging an issue, we know exactly which
package is in use, and so have an idea if any patches have been
applied.

This is included in the string that a Samba backtrace gives,
as part of the PANIC message.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=15654
REF: https://lists.samba.org/archive/samba-technical/2024-May/138992.html

Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
(cherry picked from commit 651fb94c374c7f84405d960a9e0a0fd7fcb285dd)
This commit is contained in:
Andrew Bartlett 2024-05-30 10:50:12 +12:00 committed by Jule Anger
parent 7ccbbb4baf
commit 80655e2213
2 changed files with 25 additions and 0 deletions

View File

@ -253,6 +253,11 @@ def samba_version_file(version_file, path, env=None, is_install=True):
print("Failed to parse line %s from %s" % (line, version_file)) print("Failed to parse line %s from %s" % (line, version_file))
raise raise
if "SAMBA_VERSION_VENDOR_SUFFIX" in env:
version_dict["SAMBA_VERSION_VENDOR_SUFFIX"] = env.SAMBA_VERSION_VENDOR_SUFFIX
if "SAMBA_VERSION_VENDOR_PATCH" in env:
version_dict["SAMBA_VERSION_VENDOR_PATCH"] = str(env.SAMBA_VERSION_VENDOR_PATCH)
return SambaVersion(version_dict, path, env=env, is_install=is_install) return SambaVersion(version_dict, path, env=env, is_install=is_install)

20
wscript
View File

@ -140,7 +140,27 @@ def options(opt):
dest='with_smb1server', dest='with_smb1server',
help=("Build smbd with SMB1 support (default=yes).")) help=("Build smbd with SMB1 support (default=yes)."))
opt.add_option('--vendor-name',
help=('Specify a vendor (or packager) name to include in the version string'),
type="string",
dest='SAMBA_VERSION_VENDOR_SUFFIX',
default=None)
opt.add_option('--vendor-patch-revision',
help=('Specify a vendor (or packager) patch revision number include in the version string (requires --vendor-name)'),
type="int",
dest='SAMBA_VERSION_VENDOR_PATCH',
default=None)
def configure(conf): def configure(conf):
if Options.options.SAMBA_VERSION_VENDOR_SUFFIX:
conf.env.SAMBA_VERSION_VENDOR_SUFFIX = Options.options.SAMBA_VERSION_VENDOR_SUFFIX
if Options.options.SAMBA_VERSION_VENDOR_PATCH:
if not Options.options.SAMBA_VERSION_VENDOR_SUFFIX:
raise conf.fatal('--vendor-patch-revision requires --vendor-version')
conf.env.SAMBA_VERSION_VENDOR_PATCH = Options.options.SAMBA_VERSION_VENDOR_PATCH
version = samba_version.load_version(env=conf.env) version = samba_version.load_version(env=conf.env)
conf.DEFINE('CONFIG_H_IS_FROM_SAMBA', 1) conf.DEFINE('CONFIG_H_IS_FROM_SAMBA', 1)