summaryrefslogtreecommitdiffstats
path: root/buildtools
Commit message (Collapse)AuthorAgeFilesLines
* build: test the generic md5 function after importing it from hashlibBjörn Jacke2014-01-081-1/+1
| | | | | | | | | | otherwise we used the one from md5 which lead to the following warning on SerNet-imini: the md5 module is deprecated; use hashlib instead import md5 Signed-off-by: Bjoern Jacke <bj@sernet.de> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
* waf: parse LDFLAGS from pythonSteven Siloti2013-10-251-1/+2
| | | | | | | | | | | | | | | The LDFLAGS returned by get_python_variables may contain additional library search paths. These need to be parsed out and placed in LIBPATH to maintain correct ordering of search paths in the final link flags. Specifically, appending LDFLAGS directly to LINKFLAGS on my system was causing /usr/lib to be the first search path specified. This lead to linking against installed libraries rather than the versions from the current build. Reviewed-by: Andrew Bartlett <abartlet@samba.org> Autobuild-User(master): Andrew Bartlett <abartlet@samba.org> Autobuild-Date(master): Fri Oct 25 02:48:35 CEST 2013 on sn-devel-104
* build: fix ordering problems with lib-provided and internal RPATHsMichael Adam2013-10-251-0/+13
| | | | | | | | | | | | | | | | | | | | | When a library or system (like cups) provides an RPATH, e.g. with -Wl,-R or -Wl,-rpath, this was added by waf to the LINKFLAGS, wich was later prepended to our RPATH. But if the path by chance contains an older version of one of our internal libraries like talloc, this would lead to linking the too old talloc into our binaries. This has been observed on, e.g., FreeBSD, but it is a general problem. This patch fixes the problem by specially parsing the RPATH linker options from the pkg-config(, cups-config, ....) output and putting the paths into the RPATH_<lib> container, which is then later correctly appended to our internal RPATH. Signed-off-by: Michael Adam <obnox@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
* Backport 0e97908 from WAF repository: symlink fix for OpenBSDMatthieu Patou2013-09-211-3/+6
| | | | | | | | | Author: Thomas Nagy <tnagy1024@gmail.com> Signed-off-by: Matthieu Patou <mat@matws.net> Reviewed-by: Kai Blin <kai@samba.org> Autobuild-User(master): Kai Blin <kai@samba.org> Autobuild-Date(master): Sat Sep 21 11:14:30 CEST 2013 on sn-devel-104
* waf: add --without-gettext optionChristian Ambach2013-08-091-0/+3
| | | | | Signed-off-by: Christian Ambach <ambi@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
* waf: fix build on AIX7Christian Ambach2013-08-091-1/+1
| | | | | | | the same works for AIX 5,6,7 so leave away the version specifics (as autoconf build did) Signed-off-by: Christian Ambach <ambi@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
* waf: Build with RELRO if supported by the compiler.Andreas Schneider2013-07-091-0/+2
| | | | | | | | | | | | | Make sure we create binaries with full RELocation Read-Only support. See https://isisblogs.poly.edu/2011/06/01/relro-relocation-read-only/ for more details. The default is to check if the compiler supports RELRO and then enable it. Specifying '--with-relro' will make it mandatory and '--without-relro' will disable it. Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* build: Add missing new line to replaced python shebang line. (Fix bug #9909)Michael Adam2013-05-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | When configuring with a non-standard python specified in the PYTHON environment variable, the shebang lines in various python tools like samba-tool and samba_dnsupdate get replaced. This replace line for the shebang was missing a newline which joined the shebang line with the following line, rendereing those scripts with a nonempty second line unusuable, for example samba_dnsupdate. This patch fixes this bug which is bug #9909 on bugzilla. Pair-Programmed-With: Karolin Seeger <kseeger@samba.org> Signed-off-by: Michael Adam <obnox@samba.org> Signed-off-by: Karolin Seeger <kseeger@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Autobuild-User(master): Michael Adam <obnox@samba.org> Autobuild-Date(master): Wed May 29 13:21:51 CEST 2013 on sn-devel-104
* build: Remove unused tool for config.h comparisonAndrew Bartlett2013-05-282-37/+0
| | | | | | Reviewed-by: Jelmer Vernooij <jelmer@samba.org> Reviewed-by: David Disseldorp <ddiss@samba.org>
* waf: build position independent executablesDavid Disseldorp2013-05-281-2/+9
| | | | | | | | | | | | | | This patch re-instates support for building Position Independent Executables using the '-fPIE' and '-pie' compiler and linker flags respectively. PIE builds are enabled by default, and can be explicitly disabled using the '--without-pie' configure argument. Reviewed-by: Andrew Bartlett <abartlet@samba.org> Autobuild-User(master): Andrew Bartlett <abartlet@samba.org> Autobuild-Date(master): Tue May 28 02:56:36 CEST 2013 on sn-devel-104
* build: Do not always regenerate the version.h fileAndrew Bartlett2013-05-271-1/+5
| | | | Reviewed-by: Jelmer Vernooij <jelmer@samba.org>
* build: Remove binaries and libraries build groupsAndrew Bartlett2013-05-271-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Build groups are used in Samba to ensure that even if the dependency chain for a target is not perfect, that it builds reliably. This matters most in the early build stages, where we are building the asn1 compiler and autogenerating files. Once we get to the main stage, dependencies between C files, libraries and binaries are much clearer, because the C compiler and linker takes these as inputs anyway. Groups were added to our waf build for stability during early development, as dependency information was first imported from the previous autoconf/perl based build system. I don't think we need this distinction in the main build of C files into .o, and when linking these into binaries, because the invocation of these tools is very well defined, and we will find any missing inputs very quickly. As such, I've removed the libraries and binaries targets, consolidating them with 'main' By making this change, a build of smbtorture only on a clean tree drops from 3778 to 2489 targets, and much of the expensive linker stage is skipped. The time for a null build of smbtorture only also drops from 4.673s to as low as 2.499s on my laptop. Andrew Bartlett Reviewed-by: Jelmer Vernooij <jelmer@samba.org>
* buildtools: Fix compilation warningsMatthieu Patou2013-05-201-1/+1
| | | | | | | | | | | STATIC_%s_MODULES_PROTO is defined on the compilation command line by -DSTATIC_<something>_MODULES_PROTO which the compiler seems to turn into define STATIC_<something>_MODULES_PROTO 1 thus yielding a warning due to unused var Signed-off-by: Matthieu Patou <mat@matws.net> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
* swat: Remove swat.Kai Blin2013-05-181-1/+0
| | | | | | | | Signed-off-by: Kai Blin <kai@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Autobuild-User(master): Kai Blin <kai@samba.org> Autobuild-Date(master): Sat May 18 16:32:38 CEST 2013 on sn-devel-104
* More generic check for OpenBSD platformVadim Zhukov2013-05-171-2/+2
| | | | | | | | | | | | | | | | OpenBSD versioning is different from many other projects, and, say, 5.0 does not differ from 4.9 more than from 5.1. So the right approach will be to check that platform name starts with "openbsd" instead. This is also the thing OpenBSD developers do when patching other software, so this patch is consistent with already existing practicies. BUG: https://bugzilla.samba.org/show_bug.cgi?id=9888 Reviewed-by: Lars Müller <lars@samba.org> Reviewed-by: Björn Jacke <bj@sernet.de> Autobuild-User(master): Björn Jacke <bj@sernet.de> Autobuild-Date(master): Fri May 17 17:58:16 CEST 2013 on sn-devel-104
* configure: print a message when docbook.xsl is missing localyMatthieu Patou2013-05-061-0/+3
| | | | | | Signed-off-by: Matthieu Patou <mat@matws.net> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
* build: Raise minimum python version to 2.5.0 for samba buildAndrew Bartlett2013-04-111-2/+2
| | | | | | | | | | | | | | | | RHEL5 has a python26 package for a modern python, and was the main reason we kept python 2.5 support. However, this support never actually worked for AD DC installations, as samba-tool uses a feature only in 2.5 and above. Very few folks noticed and those were on RHEL5, and moving to 2.5 allows us to remove some other workarounds. Andrew Bartlett Reviewed-by: Matthieu Patou <mat@matws.net> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
* build: Replace #!/usr/bin/env python with passed in PYTHON=Andrew Bartlett2013-04-102-1/+24
| | | | | | | | | | This means that if we were forced to use a specific python for the build, we will put that binary into the top of samba-tool, so it continues to work after the install. Andrew Bartlett Reviewed-by: Michael Adam <obnox@samba.org>
* wafsamba: fix samba_abi for default catch-all caseAlexander Bokovoy2013-04-091-1/+3
| | | | | | | | | | | | | | | | Only filter out the symbol when positive match was not found and there is negative match. ABI signature file generator worked incorrectly for cases when mixture of positive and negative matches were provided. This resulted in generating empty signature file for libpdb since there was no catch-all positive match anymore. Commit 9ba44cc610426fb558b49aa9680b5bdf55c29082 removed explicit '*' positive match and corresponding vscript generator adds '*' by default if global match list is empty, so this commit introduces feature parity into signature generator. Reviewed-by: Andreas Schneider <asn@samba.org>
* wafsamba: display the default value in help for SAMBA3_ADD_OPTIONStefan Metzmacher2013-04-031-1/+10
| | | | | Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org>
* build: Do not pass CPP="" to pidl, skip the env variable entirelyAndrew Bartlett2013-03-251-1/+1
| | | | | | | | This will cause pidl to use $CC -E instead. Andrew Bartlett Reviewed-by: Stefan Metzmacher <metze@samba.org>
* build: Remove the forced use of only the first part of the compiler stringAndrew Bartlett2013-03-251-2/+2
| | | | | | | | | | This corrects parts of 378295c3fe813c70815a14c7de608e4a859bd6cc and 301d59caf2ee6f49e108b748b0e38221dec9bb96. This is seen if CC="ccache gcc" and CPP isn't used for some reason. Andrew Bartlett Reviewed-by: Stefan Metzmacher <metze@samba.org>
* build: Change bin/default/python -> bin/python symlink to ↵Andrew Bartlett2013-03-022-4/+4
| | | | | | | | bin/default/python_modules This avoids a collision with the new top level python directory. Andrew Bartlett
* wafsamba: add CHECK_VALUEOF() helperStefan Metzmacher2013-03-011-1/+19
| | | | | Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
* wafsamba: use additional xml catalog file (bug #9512)Björn Baumbach2013-01-151-1/+2
| | | | | | | | | | Add additional "/usr/local/share/xml/catalog" catalog file platforms (used by freebsd). Fix manual page build on freebsd. Signed-off-by: Björn Baumbach <bb@sernet.de> Reviewed-by: Michael Adam <obnox@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org>
* build: Remove bashism from SAMBAMANPAGES ruleAndrew Bartlett2013-01-101-1/+2
| | | | | | | | In sh, you must assign the variable, then export it. Andrew Bartlett Reviewed-by: Stefan Metzmacher <metze@samba.org>
* wafsamba: python-config is not always a script.Jelmer Vernooij2012-12-261-1/+1
|
* wafsamba: replace try:except: case with explicit comment about FIPS modeAlexander Bokovoy2012-12-081-8/+7
| | | | | | | | | | | Since exceptions will be caught be outer try:except: pair anyway, mark the test of MD5 code by the comment that explains why we need to really test it. Do it for both hashlib.md5 and md5 modules. Autobuild-User(master): Alexander Bokovoy <ab@samba.org> Autobuild-Date(master): Sat Dec 8 18:41:07 CET 2012 on sn-devel-104
* wafsamba: Make sure md5 is really work before using it or overriding the ↵Alexander Bokovoy2012-12-081-0/+8
| | | | | | | | | | | | | | | hash function In FIPS mode importing md5 Python module will not cause any error but calling md5.md5() function will throw ValueError since md5 is not available. Make sure md5.md5() actually works and if not, fall back to use hash replacement that we already have in wafsamba. Reviewed-by: Andreas Schneider <asn@samba.org> Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org> Autobuild-Date(master): Sat Dec 8 13:30:07 CET 2012 on sn-devel-104
* BUG 9459: Install manpages only if we install the target.Andreas Schneider2012-12-041-4/+5
| | | | | | | Reviewed-by: Alexander Bokovoy <ab@samba.org> Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org> Autobuild-Date(master): Tue Dec 4 18:07:47 CET 2012 on sn-devel-104
* build(waf): support AIX 6.1Christian Ambach2012-11-091-1/+1
| | | | | on AIX6.1, we need to define _ALL_SOURCE as well, otherwise system headers with BSD types like u_int cannot be used
* wafsamba.abi: Fix abi_match with both excludes and includes.Jelmer Vernooij2012-11-062-3/+20
| | | | | | | | | | | This fixes a regression introduced by 9c3e294400234ebdf9b98031bae583524fd0b0ac which caused internal symbols in libldb to be exposed. Bug: https://bugzilla.samba.org/show_bug.cgi?id=9357 Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Stephen Gallagher <sgallagh@redhat.com>
* wafsamba.samba_abi: Add basic unit tests.Jelmer Vernooij2012-11-062-1/+51
| | | | | | Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Stephen Gallagher <sgallagh@redhat.com>
* buildtools: Remove extra space from global: lineAndrew Bartlett2012-11-061-1/+1
| | | | | | | | | | | | This makes it easier to put the expected values in a file as we will not have trailing whitespace that is against git style. Andrew Bartlett Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Jelmer Vernooij <jelmer@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
* wafsamba.samba_abi: Refactor abi_write_vscript to take file argument.Jelmer Vernooij2012-11-061-9/+13
| | | | | | Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Stephen Gallagher <sgallagh@redhat.com>
* build: Remove support for IDL-generated files in git treeAndrew Bartlett2012-10-281-24/+2
| | | | | | | This was added in a9ea3d6fa510286b83c4bda42c9a857da3625451 but is no longer required, as we do not store IDL-generated files in GIT. Andrew Bartlett
* wafsamba: If we define a realname and a soname create a symlink.Andreas Schneider2012-10-221-0/+2
| | | | | This is needed that libnss_winbind.so.2 and libnss_wins.so.2 will get a corresponding symlinks.
* buildtools/wafsamba: only display 'ok' if the result is TrueStefan Metzmacher2012-10-191-2/+2
| | | | | | | | Otherwise we print the raw value. metze Signed-off-by: Michael Adam <obnox@samba.org>
* wafsamba: Ignore some more symbols when checking for dupes.Jelmer Vernooij2012-10-111-1/+1
|
* build: Remove --disable-sharedAndrew Bartlett2012-10-112-15/+2
| | | | | | | | | | | This does not work, and has no known use cases. Remove it so we do not waste time trying to support it. This also removes it for ldb/tdb/ntdb/talloc, but as these are first shared libraries, and then tools on top of those, rpath or (for emergency tools) --nonshared-binary= seems more appropriate. Andrew Bartlett
* s4-python: Various formatting fixes.Jelmer Vernooij2012-09-2713-27/+28
| | | | | | * Trailing whitespace * use of "==" where "is" should be used * double spaces
* waf: Make samba "ok" with directories for install being symlinksIra Cooper2012-09-201-2/+2
| | | | | | | | stat -> lstat conversion. This allows people for whom $PREFIX/var is a symlink to complete make install. Autobuild-User(master): Ira Cooper <ira@samba.org> Autobuild-Date(master): Thu Sep 20 23:26:26 CEST 2012 on sn-devel-104
* docs-xml: convert smb.conf.5 build to wafAlexander Bokovoy2012-09-171-2/+4
| | | | | | | | | | | | | | | | | | smb.conf(5) is different from other manpages because before it is built, it gets merged together from a number of smaller files, one per parameter. So we first create a parameters.all.xml file that references all these files and then include it into master smb.conf.5.xml One small issue is how to handle generated files in WAF build from xi:include perspective as the files are generated in bin/default/docs-xml rather than in docs-xml. We solve this by further expanding use of XML catalogs and rewriting virtual path http://www.samba.org/samba/smbdotconf/ to proper location. Both docs-xml autoconf and waf builds work correctly now. Autobuild-User(master): Alexander Bokovoy <ab@samba.org> Autobuild-Date(master): Mon Sep 17 14:18:31 CEST 2012 on sn-devel-104
* build:dist: extend meaning of DIST_FILES to also recurse into directoriesMichael Adam2012-09-121-2/+16
| | | | Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
* build:dist: make use of file / distfile more obvious in handling of ↵Michael Adam2012-09-121-5/+2
| | | | | | DIST_FILES in "make dist" Signed-off-by: Stefan Metzmacher <metze@samba.org>
* build:dist: extend samba_dist.DIST_FILES() to take optional parameter ↵Michael Adam2012-09-121-1/+3
| | | | | | | | | extend(=False) This allows to do multpile DIST_FILES() calls that will extend the list rather than only setting it initially. Signed-off-by: Stefan Metzmacher <metze@samba.org>
* build:waf dist: factor out function to add list of files to the tarballMichael Adam2012-09-121-22/+29
| | | | Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
* wafsamba: Add a SAMBAMANPAGES function.Andreas Schneider2012-09-121-1/+15
|
* wafsamba/samba_abi: allow negative matches in abi_matchAlexander Bokovoy2012-09-071-3/+12
| | | | | | | | | abi_match keyword for samba libraries allows to selectively apply ABI versions. samba_abi.py implied !sym to be used to say 'all symbols but this one' but the actual demotion of !sym to the local scope was not implemented. Now abi_match='!sym' properly moves symbol to a local scope.
* gen_abi.sh: filter out symbols not needed for ABIAlexander Bokovoy2012-09-071-1/+1
| | | | | | | | | | | | | | | | | | gdb does not allow to print definitions of certain section names and special symbols used for dynamic loading machinery: __bss_start _edata _init _fini _end Please note the space before the pattern, it is needed to avoid hungry matches of valid symbols with these as substrings (foo_init, for example). Without this patch gdb on Fedora 18 breaks when attempting to print function and struct signature.