[AC_HELP_STRING([--disable-rebuilds],
[disable all source autogeneration rules])],,
[enable_rebuilds=yes])
-AC_ARG_ENABLE(visibility,
- [AC_HELP_STRING([--disable-visibility],
- [don't use ELF visibility attributes])],,
- [enable_visibility=yes])
if test "x$enable_threads" != "xyes"; then
enable_threads=no
fi
fi
-if test "x$enable_visibility" = "xno"; then
- GLIB_DEBUG_FLAGS="$GLIB_DEBUG_FLAGS -DDISABLE_VISIBILITY"
-fi
-
# Ensure MSVC-compatible struct packing convention is used when
# compiling for Win32 with gcc.
# What flag to depends on gcc version: gcc3 uses "-mms-bitfields", while
<arg>--enable-included-printf</arg>
</group>
<group>
- <arg>--disable-visibility</arg>
- <arg>--enable-visibility</arg>
+ <arg>--disable-Bsymbolic</arg>
+ <arg>--enable-Bsymbolic</arg>
</group>
<group>
<arg>--disable-gtk-doc</arg>
</formalpara>
<formalpara>
- <title><systemitem>--disable-visibility</systemitem> and
- <systemitem>--enable-visibility</systemitem></title>
+ <title><systemitem>--disable-Bsymbolic</systemitem> and
+ <systemitem>--enable-Bsymbolic</systemitem></title>
<para>
- By default, GLib uses ELF visibility attributes to optimize
- PLT table entries if the compiler supports ELF visibility
- attributes. A side-effect of the way in which this is currently
- implemented is that any header change forces a full
- recompilation, and missing includes may go unnoticed.
- Therefore, it makes sense to turn this feature off while
- doing GLib development, even if the compiler supports ELF
- visibility attributes. The <option>--disable-visibility</option>
- option allows to do that.
+ By default, GLib uses the -Bsymbolic-functions linker
+ flag to avoid intra-library PLT jumps. A side-effect
+ of this is that it is no longer possible to override
+ internal uses of GLib functions with
+ <envvar>LD_PRELOAD</envvar>. Therefore, it may make
+ sense to turn this feature off in some situations.
+ The <option>--disable-Bsymbolic</option> option allows
+ to do that.
</para>
</formalpara>