summaryrefslogtreecommitdiff
path: root/buildtools
AgeCommit message (Collapse)AuthorFilesLines
2014-05-20wafsamba: Fail with error message if perl doesn't provide valid dirs.Stefan Metzmacher1-19/+39
We try harder to get valid directories, we now fallback like this: vendorarch => sitearch => archlib and vendorlib => sitelib => privlib The new options are --with-perl-arch-install-dir and --with-perl-lib-install-dir. Bug: https://bugzilla.samba.org/show_bug.cgi?id=10472 Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org> (cherry picked from commit 2637890ef42a238093f0f3cbdda0d621d5f9b2e2)
2014-05-20wafsamba: If perl can't provide defaults, define them.Andreas Schneider1-2/+8
This should fix the installation on FreeBSD. BUG: https://bugzilla.samba.org/show_bug.cgi?id=10472 Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Alexander Bokovoy <ab@samba.org> Autobuild-User(master): Andreas Schneider <asn@cryptomilk.org> Autobuild-Date(master): Thu May 8 13:55:50 CEST 2014 on sn-devel-104 (cherry picked from commit 0ba276ebad57d75a769e22414f94acbe8c177d97)
2014-04-29build: fix ordering problems with lib-provided and internal RPATHsMichael Adam1-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> (cherry picked from commit 64f5e24100a764ec198cab9a8d2c43fa86e7027c) Bug: https://bugzilla.samba.org/show_bug.cgi?id=10548
2014-04-01buildtools: Add perl vendorlib configure option.Andreas Schneider1-0/+10
After this patch has been pushed, we need to change autobuild to compile with this option or we will not be able to install pidl. Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
2014-04-01buildtools: Rename perl vendorarch configure option.Andreas Schneider1-4/+9
Signed-off-by: Andreas Schneider <asn@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org>
2014-03-10waf:lib/replace change detection of gettextChristian Ambach1-2/+1
convert this to an automatic check: if no option is given, try to find gettext and if found, use it if user has specified --with-gettext, then bail out if it could not be found in case of --without-gettext, skip all gettext related configure checks Bug: https://bugzilla.samba.org/show_bug.cgi?id=9911 Signed-off-by: Christian Ambach <ambi@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> (cherry picked from commit a83f491810d34cc8b6eb4b0f40bbbb1440e0f84d)
2013-08-20waf: add --without-gettext optionChristian Ambach1-0/+3
Signed-off-by: Christian Ambach <ambi@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> (cherry picked from commit a742e87b39bed97ac59f5ec8bff9bf3cedf8b68a)
2013-08-20waf: fix build on AIX7Christian Ambach1-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> (cherry picked from commit ce8fbdf76ee2792d011d9da4d0116f04d9656886)
2013-05-29build: Add missing new line to replaced python shebang line. (Fix bug #9909)Michael Adam1-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
2013-05-28build: Remove unused tool for config.h comparisonAndrew Bartlett2-37/+0
Reviewed-by: Jelmer Vernooij <jelmer@samba.org> Reviewed-by: David Disseldorp <ddiss@samba.org>
2013-05-28waf: build position independent executablesDavid Disseldorp1-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
2013-05-27build: Do not always regenerate the version.h fileAndrew Bartlett1-1/+5
Reviewed-by: Jelmer Vernooij <jelmer@samba.org>
2013-05-27build: Remove binaries and libraries build groupsAndrew Bartlett1-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>
2013-05-20buildtools: Fix compilation warningsMatthieu Patou1-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>
2013-05-18swat: Remove swat.Kai Blin1-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
2013-05-17More generic check for OpenBSD platformVadim Zhukov1-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
2013-05-06configure: print a message when docbook.xsl is missing localyMatthieu Patou1-0/+3
Signed-off-by: Matthieu Patou <mat@matws.net> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
2013-04-11build: Raise minimum python version to 2.5.0 for samba buildAndrew Bartlett1-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>
2013-04-10build: Replace #!/usr/bin/env python with passed in PYTHON=Andrew Bartlett2-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>
2013-04-09wafsamba: fix samba_abi for default catch-all caseAlexander Bokovoy1-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>
2013-04-03wafsamba: display the default value in help for SAMBA3_ADD_OPTIONStefan Metzmacher1-1/+10
Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Volker Lendecke <vl@samba.org>
2013-03-25build: Do not pass CPP="" to pidl, skip the env variable entirelyAndrew Bartlett1-1/+1
This will cause pidl to use $CC -E instead. Andrew Bartlett Reviewed-by: Stefan Metzmacher <metze@samba.org>
2013-03-25build: Remove the forced use of only the first part of the compiler stringAndrew Bartlett1-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>
2013-03-02build: Change bin/default/python -> bin/python symlink to ↵Andrew Bartlett2-4/+4
bin/default/python_modules This avoids a collision with the new top level python directory. Andrew Bartlett
2013-03-01wafsamba: add CHECK_VALUEOF() helperStefan Metzmacher1-1/+19
Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Jeremy Allison <jra@samba.org>
2013-01-15wafsamba: use additional xml catalog file (bug #9512)Björn Baumbach1-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>
2013-01-10build: Remove bashism from SAMBAMANPAGES ruleAndrew Bartlett1-1/+2
In sh, you must assign the variable, then export it. Andrew Bartlett Reviewed-by: Stefan Metzmacher <metze@samba.org>
2012-12-26wafsamba: python-config is not always a script.Jelmer Vernooij1-1/+1
2012-12-08wafsamba: replace try:except: case with explicit comment about FIPS modeAlexander Bokovoy1-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
2012-12-08wafsamba: Make sure md5 is really work before using it or overriding the ↵Alexander Bokovoy1-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
2012-12-04BUG 9459: Install manpages only if we install the target.Andreas Schneider1-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
2012-11-09build(waf): support AIX 6.1Christian Ambach1-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
2012-11-06wafsamba.abi: Fix abi_match with both excludes and includes.Jelmer Vernooij2-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>
2012-11-06wafsamba.samba_abi: Add basic unit tests.Jelmer Vernooij2-1/+51
Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Stephen Gallagher <sgallagh@redhat.com>
2012-11-06buildtools: Remove extra space from global: lineAndrew Bartlett1-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>
2012-11-06wafsamba.samba_abi: Refactor abi_write_vscript to take file argument.Jelmer Vernooij1-9/+13
Signed-off-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org> Reviewed-by: Stephen Gallagher <sgallagh@redhat.com>
2012-10-28build: Remove support for IDL-generated files in git treeAndrew Bartlett1-24/+2
This was added in a9ea3d6fa510286b83c4bda42c9a857da3625451 but is no longer required, as we do not store IDL-generated files in GIT. Andrew Bartlett
2012-10-22wafsamba: If we define a realname and a soname create a symlink.Andreas Schneider1-0/+2
This is needed that libnss_winbind.so.2 and libnss_wins.so.2 will get a corresponding symlinks.
2012-10-19buildtools/wafsamba: only display 'ok' if the result is TrueStefan Metzmacher1-2/+2
Otherwise we print the raw value. metze Signed-off-by: Michael Adam <obnox@samba.org>
2012-10-11wafsamba: Ignore some more symbols when checking for dupes.Jelmer Vernooij1-1/+1
2012-10-11build: Remove --disable-sharedAndrew Bartlett2-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
2012-09-27s4-python: Various formatting fixes.Jelmer Vernooij13-27/+28
* Trailing whitespace * use of "==" where "is" should be used * double spaces
2012-09-20waf: Make samba "ok" with directories for install being symlinksIra Cooper1-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
2012-09-17docs-xml: convert smb.conf.5 build to wafAlexander Bokovoy1-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
2012-09-12build:dist: extend meaning of DIST_FILES to also recurse into directoriesMichael Adam1-2/+16
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-09-12build:dist: make use of file / distfile more obvious in handling of ↵Michael Adam1-5/+2
DIST_FILES in "make dist" Signed-off-by: Stefan Metzmacher <metze@samba.org>
2012-09-12build:dist: extend samba_dist.DIST_FILES() to take optional parameter ↵Michael Adam1-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>
2012-09-12build:waf dist: factor out function to add list of files to the tarballMichael Adam1-22/+29
Pair-Programmed-With: Stefan Metzmacher <metze@samba.org>
2012-09-12wafsamba: Add a SAMBAMANPAGES function.Andreas Schneider1-1/+15
2012-09-07wafsamba/samba_abi: allow negative matches in abi_matchAlexander Bokovoy1-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.