Skip to content

meson: Don't use undocumented -export-dynamic option

GNU libtool is documented to support -export-dynamic and GNU ld is documented to support --export-dynamic. However, GCC isn't documented to support them. While GCC does support -export-dynamic for backwards compatibility, Clang doesn't support it and interprets it wrongly. This causes warnings to be shown during linking because Clang splits it into '-e xport-dynamic' and the linker can't find 'xport-dynamic' symbol.

This fixes warnings when compiling with Clang.

[189/335] Linking target doc/cookbook/examples/script-ui.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[194/335] Linking target doc/cookbook/examples/script-signals.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[195/335] Linking target doc/cookbook/examples/text-shadow.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[196/335] Linking target doc/cookbook/examples/script-states.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[197/335] Linking target doc/cookbook/examples/textures-crossfade.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[201/335] Linking target doc/cookbook/examples/textures-crossfade-cogl.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[204/335] Linking target doc/cookbook/examples/textures-sub-texture.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[206/335] Linking target doc/cookbook/examples/textures-crossfade-slideshow.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[207/335] Linking target doc/cookbook/examples/textures-reflection.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[208/335] Linking target doc/cookbook/examples/textures-split-go.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[217/335] Linking target doc/cookbook/examples/animations-complex.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[218/335] Linking target doc/cookbook/examples/actors-composite-main.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[221/335] Linking target doc/cookbook/examples/animations-looping-animator.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[225/335] Linking target doc/cookbook/examples/animations-moving-animator.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[226/335] Linking target doc/cookbook/examples/animations-looping-implicit.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[227/335] Linking target doc/cookbook/examples/animations-looping-state.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[230/335] Linking target doc/cookbook/examples/animations-moving-implicit.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[231/335] Linking target doc/cookbook/examples/animations-moving-state.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[233/335] Linking target doc/cookbook/examples/animations-path.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[237/335] Linking target doc/cookbook/examples/animations-reuse.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[239/335] Linking target doc/cookbook/examples/animations-rotating.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[240/335] Linking target doc/cookbook/examples/animations-path-circle.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[242/335] Linking target doc/cookbook/examples/animations-scaling.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[243/335] Linking target doc/cookbook/examples/animations-scaling-zoom.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[299/335] Linking target doc/cookbook/examples/effects-built-in.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[301/335] Linking target doc/cookbook/examples/effects-basic.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x203000
[303/335] Linking target doc/cookbook/examples/effects-custom-deform.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[307/335] Linking target doc/cookbook/examples/events-buttons.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[308/335] Linking target doc/cookbook/examples/events-buttons-click.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[311/335] Linking target doc/cookbook/examples/events-buttons-lasso.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[312/335] Linking target doc/cookbook/examples/events-pointer-motion.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[313/335] Linking target doc/cookbook/examples/events-mouse-scroll.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[315/335] Linking target doc/cookbook/examples/events-pointer-motion-crossing.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[319/335] Linking target doc/cookbook/examples/events-pointer-motion-stacked.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[320/335] Linking target doc/cookbook/examples/events-pointer-motion-scribbler.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[322/335] Linking target doc/cookbook/examples/layouts-bind-constraint-allocation.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[324/335] Linking target doc/cookbook/examples/layouts-bind-constraint-overlay.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[325/335] Linking target doc/cookbook/examples/layouts-bind-constraint-stage.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[327/335] Linking target doc/cookbook/examples/layouts-box.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[330/335] Linking target doc/cookbook/examples/layouts-box-menu.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[332/335] Linking target doc/cookbook/examples/layouts-box-property-effects.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x202000
[333/335] Linking target doc/cookbook/examples/layouts-stacking.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
[335/335] Linking target doc/cookbook/examples/layouts-stacking-diff-sized-actors.
/usr/bin/ld: warning: cannot find entry symbol xport-dynamic; defaulting to 0x201000
Edited by Ting-Wei Lan

Merge request reports