Bug 11369 - obsoleted autoconf macros
Summary: obsoleted autoconf macros
Alias: None
Product: rsync
Classification: Unclassified
Component: core (show other bugs)
Version: 3.1.1
Hardware: All All
: P5 trivial (vote)
Target Milestone: ---
Assignee: Wayne Davison
QA Contact: Rsync QA Contact
Depends on:
Reported: 2015-06-28 05:25 UTC by Brant Gurganus
Modified: 2015-07-07 17:41 UTC (History)
0 users

See Also:

patch consisting of autoupdate changes that do not involve evaluating code compatibility impact (22.72 KB, patch)
2015-07-04 00:48 UTC, Brant Gurganus
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Brant Gurganus 2015-06-28 05:25:28 UTC
There are a few autoconf macros in use deemed obsolete upstream with straight forward alternatives. The autoscan tool can correct most of them, but there are two that take a little bit of code analysis.

Most items are replacing AC_TRY_COMPILE with AC_COMPILE_IFELSE.

Of those taking a bit more code analysis, there is the assessment by the autoconf developers that sufficient time has passed that you can assume the signal return type. In other words, it's my understanding that instead of having it return RETSIGTYPE and having autoconf determine the type, it can just be void and remove the check. The defined token seems to only occur in rsync.c and main.c.

The second item is AC_C_LONG_DOUBLE which is replaced by AC_TYPE_LONG_DOUBLE and/or AC_TYPE_LONG_DOUBLE_WIDER. By their assessment, currently available compilers do indeed have long double types without needing to check for them. What may need checked is whether that long double type is wider than a double using AC_TYPE_LONG_DOUBLE_WIDER. The libs/snprintf.c file is the only one affected by the header definition currently in use.
Comment 1 Brant Gurganus 2015-07-04 00:48:03 UTC
Created attachment 11232 [details]
patch consisting of autoupdate changes that do not involve evaluating code compatibility impact

I've created a patch consisting of the autoupdate changes.
Comment 2 Wayne Davison 2015-07-07 17:41:46 UTC
Thanks for digging into the autoconf code and providing a patch.  I've incorporated your changes, simplified the parts related to RETSIGTYPE and "long double", and tweaked some helper scripts to handle the removed spaces in AC_INIT() (they now allow spaces or no spaces).