Re: Dealing with *_DISABLE_DEPRECATED now and in the future
- From: Owen Taylor <otaylor redhat com>
- To: Jeff Waugh <jdub perkypants org>
- Cc: GNOME Desktop Hackers <desktop-devel-list gnome org>
- Subject: Re: Dealing with *_DISABLE_DEPRECATED now and in the future
- Date: Mon, 27 Oct 2003 09:43:56 -0500
On Mon, 2003-10-27 at 07:53, Jeff Waugh wrote:
> Hey everyone (and Owen),
>
> It is unlikely that we can put out a sane 2.5 tarball release soon due to
> breakage between unported 2.4-series modules building against GTK+ 2.3 with
> deprecated widgets. This is due to tarballs using -D*_DISABLE_DEPRECATED.
>
> There have been a number of suggestions as to how to fix this including:
>
> - Don't ever build tarballs with *_DISABLE_DEPRECATED flags.
Tarballs should never be released with *_DISABLE_DEPRECATED.
DISABLE_DEPRECATED is a developer tool; it's meant to tell you what is
disabled so you can fix it. It doesn't add anything to people
testing software to have it compiled with DISABLE_DEPRECATED.
If you release a tarball with DISABLE_DEPRECATED you are *lucky* if
it fails in a obvious way. Subtle miscompilations are also possible.
> - Don't release unstable platform or desktop tarballs with *_D_D flags
> (some argue that platform and maybe even desktop modules should only
> ever be built against their intended platform).
The argument is even strong for *stable* platform and desktop tarballs.
> - Use versioned *_D_D flags.
This would make things much more complicated.
> Obviously this has come up already in GTK+ and some GNOME circles, but we
> need to resolve it for 2.5 very soon, or we won't be able to do regular
> tarball releases for testing (arguments about usefulness aside).
>
> As it stands, we will need to build fresh, fixed tarballs for *every* module
> in the 2.5 series before we can do a complete release. It would make sense
> to hold off until we have a good solution in place, however... So, we need
> to work that out quickly! :-)
>
> (Owen, just wanted to bring this conversation up in GNOME-land to see how we
> should be dealing with this, and what your thoughts are.)
Versioned *DISABLE_DEPRECATED flags would have to be brought up on
gtk-devel-list, if we wanted them, but I don't think they are a good
idea or needed.
We probably should set come up with a standard configure option name
for turning on deprecation warnings, and it might make sense to put
that option in the default autogen.sh configure flags.
Untested autoconf and automake fragments:
AC_ARG_ENABLE(deprecations,
[AC_HELP_STRING([--enable-deprecations],
[warn about deprecated usages [default=no]])],,
[enable_deprecations=no])
AM_CONDITIONAL(ENABLE_DEPRECATIONS, test "x$enable_deprecations" = xyes)
if ENABLE_DEPRECATIONS
INCLUDES += -DG_DISABLE_DEPRECATED -DPANGO_DISABLE_DEPRECATED
fi
Regards,
Owen
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]