summaryrefslogtreecommitdiff
path: root/wscript
AgeCommit message (Collapse)AuthorFilesLines
2026-02-20build: Move jansson detection and related options to lib/utilMartin Schwenke1-26/+2
This means that standalone builds (e.g. CTDB) can use it. The check for without JSON but with AD DC stays in the top-level wscript. Signed-off-by: Martin Schwenke <mschwenke@ddn.com> Reviewed-by: Anoop C S <anoopcs@samba.org>
2026-01-20build: add '--with-varlink' configure optionJohn Mulligan1-0/+5
When building with varlink support, require explicit '--with-varlink' configure option to be set. If set, allow ceph+fscrypt configuration. Pair-Programmed-With: Shachar Sharon <ssharon@redhat.com> Signed-off-by: Shachar Sharon <ssharon@redhat.com> Signed-off-by: John Mulligan <jmulligan@redhat.com> Reviewed-by: Gunther Deschner <gd@samba.org> Reviewed-by: Anoop C S <anoopcs@samba.org>
2025-11-18wscript: Fix help text spellingJennifer Sutton1-2/+2
Signed-off-by: Jennifer Sutton <jennifersutton@catalyst.net.nz> Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
2025-11-04Remove previous himmelblau integration attemptDavid Mulder1-12/+0
This was a project attempting to integrate Himmelblau into Samba, but it has been abandoned. Signed-off-by: David Mulder <dmulder@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org> Autobuild-User(master): David Mulder <dmulder@samba.org> Autobuild-Date(master): Tue Nov 4 09:09:40 UTC 2025 on atb-devel-224
2025-05-16wafsamba: Adjust for waf 2.1.5, add default for '--with/without-json'Noel Power1-1/+1
With argparse we need to specify a default for in order to correctly handle conflicting values for with/without-json Signed-off-by: Noel Power <noel.power@suse.com> Reviewed-by: Andreas Schneider <asn@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
2025-05-16wafsamba: Adjust value type from string name(s) to actualAndreas Schneider1-2/+2
Signed-off-by: Noel Power <noel.power@suse.com> Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
2025-05-16wafsamba: simplify mit kerberos detectionNoel Power1-17/+4
This patch removes the --with-system-mitkrb5 callback and associated ability to store both boolean and path (string list) content. The boolean part is self explanatory, specifying a path list was a way to alternatively specify where krb5-config was found. Instead now after this change to influence where krb5-config is found the PATH variable itself should be modified before running configure. Signed-off-by: Noel Power <noel.power@suse.com> Reviewed-by: Andreas Schneider <asn@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
2025-02-20wscript: Add --with-systemd-userdb optionSamuel Cabrero1-0/+5
Signed-off-by: Samuel Cabrero <scabrero@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
2024-10-23Add configure checks for glibc and openssl versionsDavid Mulder1-0/+8
Add configure checks to determine if rust or specifically himmelblau sources can be compiled. Signed-off-by: David Mulder <dmulder@samba.org> Reviewed-by: Alexander Bokovoy <ab@samba.org>
2024-10-23Introduce build option to enable HimmelblauDavid Mulder1-0/+5
The build for Himmelblau will be disabled by default. Signed-off-by: David Mulder <dmulder@samba.org> Reviewed-by: Alexander Bokovoy <ab@samba.org>
2024-10-23Add simple WAF commands for building Rust bininariesDavid Mulder1-0/+5
Signed-off-by: David Mulder <dmulder@samba.org> Reviewed-by: Alexander Bokovoy <ab@samba.org>
2024-07-03build: --vendor-suffix instead of --vendor-patch-revision --vendor-nameDouglas Bagnall1-11/+1
In practice there isn't a use for two options, and neither quite matched what people thought they were doing. BUG: https://bugzilla.samba.org/show_bug.cgi?id=15673 Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz> Reviewed-by: Jo Sutton <josutton@catalyst.net.nz>
2024-06-05build: Make "samba4" public libraries provided (mostly) for OpenChange privateAndrew Bartlett1-1/+19
These libraries, mostly with ABI versions of 0.0.1 were made public in the early development of Samba4 and have not been seriously considered since. Most are to allow OpenChange to build. While the OpenChange server is no longer actively used, the MAPI client is used and we need to allow packages to be built that will allow the Evolution MAPI client to still work. Some appear to be mistakes (dcerpc-samr), historical abberations (tevent-util) or ideas that did not go very far (the samba-policy library for example). To allow any remaining users to access them, they are not made private in the build system but are instead listed so that they can be made public again via ./configure with the same --private-libraries='!LIB' syntax introduced to make ldb private by default. Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Alexander Bokovoy <ab@samba.org> Autobuild-User(master): Andrew Bartlett <abartlet@samba.org> Autobuild-Date(master): Wed Jun 5 21:47:24 UTC 2024 on atb-devel-224
2024-05-31build: Add --vendor-name --vendor-patch-revision options to ./configureAndrew Bartlett1-0/+20
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>
2024-04-23s3:libads: always require ber_sockbuf_add_io() and LDAP_OPT_SOCKBUFStefan Metzmacher1-1/+1
There's no point in trying to support --with-ads, but only use plaintext ldap without sign/seal. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
2024-03-01build: Move --with-ldap/--without-ldap from source3 build to top levelAndrew Bartlett1-0/+52
This code impacts on LDB, which is now built from the main build so we need to combined this with the check that was in lib/ldb or else we get conflicts. Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
2024-03-01build: Call conf.CHECK_XSLTPROC_MANPAGES() directly in wscriptAndrew Bartlett1-1/+1
This avoids relying on the indirect call via wscript in lib/{talloc,tdb,ldb} Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
2024-03-01ldb: Honour --private-library=!ldb as meaning build as a public libraryAndrew Bartlett1-0/+2
Likewise, let the SAMBA_LIBRARY code handle being a private library rather than in the library declaration. Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
2024-01-04wscript: use opt.PRIVATE_EXTENSION_DEFAULT('private-samba')Stefan Metzmacher1-1/+1
The problem was that we used opt.PRIVATE_EXTENSION_DEFAULT('samba4') and libndr as private will become libndr-samba4 and that already exists as libndr-samba4 as we don't append the extension if it's already there. So meant with --private-libraries=ALL we hit the following problem: $ ./configure --private-libraries=ALL $ make smbd/smbd Waf: Leaving directory `/samba/bin/default' Task dependency cycle in "run_after" constraints: {task ...: cshlib dcerpc-samba4.empty.c.12.o,ndr_winbind_c.c.229.o -> libdcerpc-samba4.so} make: *** [Makefile:131: smbd/smbd] Error 1 BUG: https://bugzilla.samba.org/show_bug.cgi?id=15545 Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Björn Jacke <bjacke@samba.org> Reviewed-by: Ralph Boehme <slow@samba.org>
2023-10-17 build: Add 'make printversion' to provide version stringChristof Schmitt1-0/+5
BUG: https://bugzilla.samba.org/show_bug.cgi?id=15497 Signed-off-by: Christof Schmitt <christof.schmitt@us.ibm.com> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
2023-08-30wscript: Remove unused importsJoseph Sutton1-3/+0
Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
2023-08-30wscript: Use ‘is’ to compare with singletonsJoseph Sutton1-11/+11
Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
2023-08-30wscript: Remove unused variableJoseph Sutton1-1/+1
Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
2023-06-30build: Remove unused check for SHA1_Update and SHA1_RENAME_NEEDEDAndrew Bartlett1-1/+0
I can not find the code that required this, even in the history. Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org> Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org> Autobuild-Date(master): Fri Jun 30 14:59:46 UTC 2023 on atb-devel-224
2023-06-30crypto: Remove aesni-intel accelerated AES crypto functionsAndrew Bartlett1-1/+0
These will shortly be unused as we will rely on GnuTLS for all AES cryptography now that we require GnuTLS 3.6.13 Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
2023-06-06Configure builtin heimdal to use KEYRING ccacheŁukasz Stelmach1-0/+15
Signed-off-by: Łukasz Stelmach <l.stelmach@samsung.com> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz> Reviewed-by: Stefan Metzmacher <metze@samba.org>
2023-03-03wscript: Fix invalid escape sequencesJoseph Sutton1-2/+2
Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
2023-02-02Python: remove pydoctorRob van der Linde1-37/+0
Removes: * waf pydoctor * waf wafdocs * make pydoctor There is no "make wafdocs" it only appears to be in wscript. The reasoning being is these are broken and appear to not have been run for some time. Signed-off-by: Rob van der Linde <rob@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org> Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Thu Feb 2 21:15:54 UTC 2023 on atb-devel-224
2022-12-12tsocket: Fix the build on FreeBSDVolker Lendecke1-0/+1
FreeBSD does not have TCP_USER_TIMEOUT Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
2022-11-08krb5: Detect support for krb5_const_pac typeJoseph Sutton1-0/+1
We can't unconditionally assume (as we did in third_party/heimdal_build/wscript_configure) that Heimdal has this type, since we may have an older system Heimdal that lacks it. We must also check whether krb5_pac_get_buffer() is usable with krb5_const_pac, and declare krb5_const_pac as a non-const typedef if not. Signed-off-by: Joseph Sutton <josephsutton@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
2022-09-08waf: Do not use as-needed if we build with Address SanitizerAndreas Schneider1-1/+2
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98669 Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
2022-04-07configure: Fail smbd w/o smb1 if selftest when configured with ad_dcDavid Mulder1-0/+7
When we build with samba selftest and ad_dc, we must include smb1 in smbd. Signed-off-by: David Mulder <dmulder@suse.com> Reviewed-by: Jeremy Allison <jra@samba.org>
2022-04-07configure: Add option for disabling the smb1 serverDavid Mulder1-0/+7
Signed-off-by: David Mulder <dmulder@suse.com> Reviewed-by: Jeremy Allison <jra@samba.org>
2022-04-04waf: Check for GnuTLS earlierAndreas Schneider1-2/+2
As GnuTLS is an essential part we need to check for it early so we can react on GnuTLS features in other wscripts. Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
2021-08-12wscript: fix installing pre-commit with 'git worktree'Stefan Metzmacher1-5/+15
.git is not always a directory, with 'git worktree' it's a file. 'git rev-parse --git-path hooks' is the generic way to find the patch for the githooks. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org> Autobuild-User(master): Stefan Metzmacher <metze@samba.org> Autobuild-Date(master): Thu Aug 12 08:56:13 UTC 2021 on sn-devel-184
2021-05-14build: wscript. Fix the build on FreeBSD with the clang ld.lld-XX linker.Jeremy Allison1-0/+28
FreeBSD is broken. It doesn't include 'extern char **environ' in any shared library, but statically inside crt0.o. If we're running on a FreeBSD with the GNU linker ld we can get around this by explicitly telling the linker to ignore 'environ' as an unresolved symbol in a shared library. However, the clang linker ld.lld-XX is broken in that it doesn't have that option. First try to see if have '-Wl,--ignore-unresolved-symbol,environ' and just use that if so. If not, we have to use '-Wl,--allow-shlib-undefined' instead and remove all instances of '-Wl,-no-undefined'. Signed-off-by: Jeremy Allison <jra@samba.org> Reviewed-by: Martin Schwenke <martin@meltin.net> Autobuild-User(master): Jeremy Allison <jra@samba.org> Autobuild-Date(master): Fri May 14 01:50:25 UTC 2021 on sn-devel-184
2021-04-28build: Use bison at build time rather than lexyacc.sh to build the embedded ↵Andrew Bartlett1-0/+12
heimdal Because the filenames are changed to the *.tab.{h,c} format a transitional header is added. While the built compilers differ, the output of the compilers and the resulting .o files have been verified not to have changed on Ubuntu 20.04. Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
2021-04-07build: Only add -Wl,--as-needed when supportedMartin Schwenke1-2/+2
If -Wl,--as-needed is added to EXTRA_LDFLAGS (via ADD_LDFLAGS, as per commit 996560191ac6bd603901dcd6c0de5d239e019ef4) then on some platforms (at least CentOS 8 and Fedora 33), any indirect/recursive dependencies (i.e. private libraries) are added to both the binary (reqid_test in the CTDB case) and to samba-util.so. However, only samba-util.so has rpath set to find private libraries. When ld.so tries to resolve these dependencies for the binary it fails. This may be a bug on those platforms, but it occurs reliably and our users will also hit the bug. For binaries that have other private library dependencies (e.g. bundled talloc) rpath will contain the private library directory so the duplicate private library dependencies are then found... that is, when it works, it works by accident! For some reason (deep in waf or wafsamba) if -Wl,--as-needed is added to LINKFLAGS (as is done in conf.add_as_needed()) then it works: the direct dependencies are only added to samba-util.so and the same depenencies (indirect dependencies for binaries) are not added incorrectly to the binaries. So, without changing 1/2 of waf/wafsamba the simplest fix is to revert to adding -Wl,--as-needed to LINKFLAGS, which was the case before commit 996560191ac6bd603901dcd6c0de5d239e019ef4. BUG: https://bugzilla.samba.org/show_bug.cgi?id=14288 Signed-off-by: Amitay Isaacs <amitay@gmail.com> Signed-off-by: Martin Schwenke <martin@meltin.net> Reviewed-by: Bjoern Jacke <bj@sernet.de> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
2021-03-29build: Notice if flex is missing at configure timeAndrew Bartlett1-3/+13
This may also fix the coverage build by ensuring --noline is always specified to flex. BUG: https://bugzilla.samba.org/show_bug.cgi?id=14586 Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Gary Lockyer <gary@catalyst.net.nz> Autobuild-User(master): Andrew Bartlett <abartlet@samba.org> Autobuild-Date(master): Mon Mar 29 02:12:23 UTC 2021 on sn-devel-184
2021-03-26build: Consolidate --with-ntvfs-fileserver into --enable-selftest when ↵Andrew Bartlett1-19/+2
building the AD DC This removes from our configure help a feature which we retain only to support our selftest system. Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
2021-03-03wscript: use --as-needed only if tested successfullyBjörn Jacke1-1/+2
Some OSes like Solaris based OmiOS don't support this. BUG: https://bugzilla.samba.org/show_bug.cgi?id=14288 Signed-off-by: Bjoern Jacke <bjacke@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
2020-08-07Compile .l files (flex) with the waf rule at runtimeAndrew Bartlett1-0/+3
Other parts of Samba already compile these directly. This makes these files compile with modern compiler warnings. The primary difference (other than being built with a newer flex) is the loss of the #include "config.h" but this is not used in the other .l files elsewehre and does not seem to matter on modern systems. The generated output from compile_et asn1_compile has not changed (so I think the hx509 case is safe). The mdssvc case just has changed file locations and line numbers. Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
2020-06-12build: Put the note from the bottom of the old BUILD_SYSTEMS.txt somewhere ↵Andrew Bartlett1-0/+19
useful This statement on how we handle --with options is best placed near where the options are set, so developers see it when trying to choose the correct thing to do. Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
2019-09-25waf: Use waf function to add for -Wl,--as-neededAndreas Schneider1-1/+1
Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Matthias Dieter Wallnöfer <mdw@samba.org> Reviewed-by: Alexander Bokovoy <ab@samba.org> Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org> Autobuild-Date(master): Wed Sep 25 16:56:40 UTC 2019 on sn-devel-184
2019-09-24wscript: avoid inefficient string concatenationsBjörn Jacke1-3/+2
Signed-off-by: Bjoern Jacke <bjacke@samba.org> Reviewed-by: Matthias Dieter Wallnöfer <mdw@samba.org>
2019-08-20build: fix mandatory typo in zlib configure checkDavid Disseldorp1-1/+1
This ensures that waf correctly fails during configure if zlib is missing. msg can also be dropped as it matches the waf validate_cfg() default (ignoring the quotes). Signed-off-by: David Disseldorp <ddiss@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Autobuild-User(master): Andrew Bartlett <abartlet@samba.org> Autobuild-Date(master): Tue Aug 20 06:58:12 UTC 2019 on sn-devel-184
2019-08-17third_party: Remove zlib from third_partyAndrew Bartlett1-4/+5
We require zlib 1.2.3. We stopped requring a patched zlib with 5631a1b9bc03d6cf31af66b13872255f18979fe8 As discussed on samba-technical here: https://lists.samba.org/archive/samba-technical/2019-May/133476.html In short, zlib contains some (old, now broken) crypto code that while not compiled in Samba is best left out of our tarball to ease crypto audits. It is also very very out of date and is a slightly modified copy of something otherwise very likely available on our supported host OSs. It would be strange to say that GnuTLS and dependencies are an acceptable burden to install but say zlib is a step to far. So it is removed from Samba's third_party with this commit. The diff between zlib in Samba and official zlib 1.2.3 is included in third_party/zlib/last-samba-from-1.2.3.diff Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Alexander Bokovoy <ab@samba.org>
2019-04-30waf: Remove configure steps from source4/lib/tlsAndreas Schneider1-2/+0
Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
2019-04-30waf: Add mandatory requirement for GnuTLS >= 3.2.0Andreas Schneider1-0/+2
We plan to move to GnuTLS for crypto in Samba, this is the first step to make it mandatory and to require a version which is in LTS distributions. Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
2019-03-21build: Standardise on calling conf.SAMBA_CHECK_PYTHON() in librariesAndrew Bartlett1-2/+2
We do this by removing the confusing mandatory option to conf.SAMBA_CHECK_PYTHON{,_HEADERS}(), instead just use the value of --disable-python internally This follows the default minimum of Python 3.4 and keeps things consistent with the main Samba build where --disable-python is required to skip building python bindings. Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>