Re: [PATCH] Autoconf: Disable inline for compilers that don't support it.

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

Re: [PATCH] Autoconf: Disable inline for compilers that don't support it.

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:46:23

Allan Caffee [off-list ref] writes:
The Autoconf macro AC_C_INLINE will redefine the inline keyword to whatever the
current compiler supports (including possibly nothing).

Signed-off-by: Allan Caffee <redacted>
As far as I can tell, this makes scriptlet to set ac_cv_c_inline and then
the result is written to confdefs.h:

    case $ac_cv_c_inline in
      inline | yes) ;;
      *)
        case $ac_cv_c_inline in
          no) ac_val=;;
          *) ac_val=$ac_cv_c_inline;;
        esac
        cat >>confdefs.h <<_ACEOF
    #ifndef __cplusplus
    #define inline $ac_val
    #endif
    _ACEOF
        ;;
    esac

which is used only during the ./configure run but not during the actual
build.

What am I missing?

Re: [PATCH] Autoconf: Disable inline for compilers that don't support it.

From: Allan Caffee <hidden>
Date: 2016-06-15 22:46:23

On Sat, 14 Mar 2009, Junio C Hamano wrote:
Allan Caffee [off-list ref] writes:
quoted
The Autoconf macro AC_C_INLINE will redefine the inline keyword to whatever the
current compiler supports (including possibly nothing).

Signed-off-by: Allan Caffee <redacted>
As far as I can tell, this makes scriptlet to set ac_cv_c_inline and then
the result is written to confdefs.h:

    case $ac_cv_c_inline in
      inline | yes) ;;
      *)
        case $ac_cv_c_inline in
          no) ac_val=;;
          *) ac_val=$ac_cv_c_inline;;
        esac
        cat >>confdefs.h <<_ACEOF
    #ifndef __cplusplus
    #define inline $ac_val
    #endif
    _ACEOF
        ;;
    esac

which is used only during the ./configure run but not during the actual
build.

What am I missing?
My mistake; it looks like this macro will only work the way I described
when using a config.h, which I see git is not currently doing.  I
assumed that it would also provide a -D flag to the precompiler if a
configuration header isn't used but this doesn't appear to be case (from
a cursory glance at the macros definition).  I could send a patch that
would set up a config header, but that would mean adding an #include
directive to all of the source files (or at least those using inline).
OTOH doing so would allow git to make use of some other handy macros
like AC_C_CONST.  Do you think this is worth adding a configuration
header?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help