1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-28 07:21:54 +03:00
samba-mirror/buildtools/wafsamba
Alexander Bokovoy 4e123c4682 wafsamba/samba_abi: always hide ABI symbols which must be local
binutils 2.31 is going to change how shared libraries are linked, such
that they always provide their own local definitions of the _end, _edata
and _bss_start symbols.  This would all be fine, except for shared
libraries that export all symbols be default.  (Rather than just
exporting those symbols that form part of their API).

According to binutils developers, we should only export the symbols we
explicitly want to be used. We don't use this principle for all our
libraries and deliberately don't want to have ABI versioning control for
all of them, so the change I introduce here is to explicitly mark those
symbols that will always be added by default linker configuration with
binutils 2.31 as local. Right now these are '_end', '_edata', and
'__bss_start' symbols.

Signed-off-by: Alexander Bokovoy <ab@samba.org>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>

Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Fri Jul 13 17:45:36 CEST 2018 on sn-devel-144
2018-07-13 17:45:35 +02:00
..
tests wafsamba/samba_abi: always hide ABI symbols which must be local 2018-07-13 17:45:35 +02:00
__init__.py
configure_file.py build:wafsamba: removed most import * statements 2015-10-28 12:52:17 +01:00
generic_cc.py
hpuxcc.py
irixcc.py
nothreads.py buildtools python: convert 'except X, e' to 'except X as e' 2018-02-15 05:40:55 +01:00
pkgconfig.py talloc: use the system pytalloc-util for python3 as well 2017-03-10 07:31:10 +01:00
README
samba3.py wafsamba: Move command line option function labelled as 'samba3' to the common set of functions 2017-02-09 20:04:12 +01:00
samba_abi.py wafsamba/samba_abi: always hide ABI symbols which must be local 2018-07-13 17:45:35 +02:00
samba_autoconf.py wafsamba: Add strict option to CHECK_CODE 2018-07-04 23:56:42 +02:00
samba_autoproto.py build:wafsamba: removed most import * statements 2015-10-28 12:52:17 +01:00
samba_bundled.py wscript: Add --with-system-heimdalkrb5 2018-07-11 05:18:59 +02:00
samba_conftests.py buildtools python: convert 'except X, e' to 'except X as e' 2018-02-15 05:40:55 +01:00
samba_cross.py build:wafsamba: removed most import * statements 2015-10-28 12:52:17 +01:00
samba_deps.py buildtools: Work around a . being in the target name when building python3 helpers 2017-03-10 07:31:11 +01:00
samba_dist.py buildtools python: convert 'except X, e' to 'except X as e' 2018-02-15 05:40:55 +01:00
samba_git.py Factor out submodule presence checking. 2015-05-19 22:17:47 +02:00
samba_headers.py build:wafsamba: removed most import * statements 2015-10-28 12:52:17 +01:00
samba_install.py build:wafsamba: Ensure that target clones get a different name 2015-11-24 05:00:27 +01:00
samba_optimisation.py build:wafsamba: Moved samba_before_apply_obj_vars to samba_utils 2015-11-06 10:37:24 +01:00
samba_patterns.py param: Add 'binddns dir' parameter 2017-09-05 23:58:20 +02:00
samba_perl.py build: Fix build with perl on debian sid. 2016-10-29 09:32:36 +02:00
samba_pidl.py build:wafsamba: removed most import * statements 2015-10-28 12:52:17 +01:00
samba_python.py build: allow adding cflags to end of python module build command 2017-11-22 10:20:20 +01:00
samba_third_party.py third_party: Update socket_wrapper to version 1.1.9 2017-12-06 19:06:21 +01:00
samba_utils.py wafsamba: Remove 2010 comments that seems not accurate anymore 2017-02-09 20:04:12 +01:00
samba_version.py python: bulk replace dict.iteritems to items for py3 2018-04-13 07:27:12 +02:00
samba_wildcard.py build:wafsamba: Replace Options.is_install by bld.is_install 2015-11-16 11:48:14 +01:00
stale_files.py
symbols.py build:wafsamba: removed most import * statements 2015-10-28 12:52:17 +01:00
test_duplicate_symbol.sh test_duplicate_symbol: Use Samba subunit emitter. 2015-03-06 04:41:47 +01:00
tru64cc.py
wafsamba.py wafsamba: Add missing cflags_end argument to SAMBA_BINARY 2018-04-03 23:08:33 +02:00
wscript wscript: Add --with-system-heimdalkrb5 2018-07-11 05:18:59 +02:00

This is a set of waf 'tools' to help make building the Samba
components easier, by having common functions in one place. This gives
us a more consistent build, and ensures that our project rules are
obeyed


TODO:
	see http://wiki.samba.org/index.php/Waf