diff options
author | Max Filippov <jcmvbkbc@gmail.com> | 2015-04-23 20:46:59 +0200 |
---|---|---|
committer | Mark Wielaard <mjw@redhat.com> | 2015-04-23 21:39:41 +0200 |
commit | bafacacaf7659a4933604662daba26a480b29a8d (patch) | |
tree | 5f8884d6866942089011328ecb45c4a89ac780a1 /config | |
parent | f98b99db09f80666d5cf491a2ce126a59af0fdb1 (diff) |
Allow disabling symbol versioning at configure time
Due to missing symbol versioning support in uClibc calls to versioned
functions that internally call different version of themselves results
in infinite recursion.
Introduce macro SYMBOL_VERSIONING and use it instead of plain SHARED to
decide whether symbol versioning is needed. Control this macro
definition with new configure option --disable-symbol-versioning.
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Mark Wielaard <mjw@redhat.com>
Diffstat (limited to 'config')
-rw-r--r-- | config/ChangeLog | 4 | ||||
-rw-r--r-- | config/eu.am | 10 |
2 files changed, 12 insertions, 2 deletions
diff --git a/config/ChangeLog b/config/ChangeLog index 586ebb03..bff3b6dd 100644 --- a/config/ChangeLog +++ b/config/ChangeLog @@ -1,3 +1,7 @@ +2015-04-23 Max Filippov <jcmvbkbc@gmail.com> + + * eu.am (DEFS.os): New variable. + 2015-03-18 Petr Machata <pmachata@redhat.com> * known-dwarf.awk (comment): Drop all uses of this variable. diff --git a/config/eu.am b/config/eu.am index faf8add4..6103a3ef 100644 --- a/config/eu.am +++ b/config/eu.am @@ -38,16 +38,22 @@ AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ COMPILE.os = $(filter-out -fprofile-arcs -ftest-coverage, $(COMPILE)) +DEFS.os = -DPIC -DSHARED +if SYMBOL_VERSIONING +DEFS.os += -DSYMBOL_VERSIONING +else +endif + %.os: %.c %.o if AMDEP - if $(COMPILE.os) -c -o $@ -fpic -DPIC -DSHARED -MT $@ -MD -MP \ + if $(COMPILE.os) -c -o $@ -fpic $(DEFS.os) -MT $@ -MD -MP \ -MF "$(DEPDIR)/$*.Tpo" `test -f '$<' || echo '$(srcdir)/'`$<; \ then cat "$(DEPDIR)/$*.Tpo" >> "$(DEPDIR)/$*.Po"; \ rm -f "$(DEPDIR)/$*.Tpo"; \ else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; \ fi else - $(COMPILE.os) -c -o $@ -fpic -DPIC -DSHARED $< + $(COMPILE.os) -c -o $@ -fpic $(DEFS.os) $< endif CLEANFILES = *.gcno *.gcda |