bug-autoconf
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[sr #110367] AC_FUNC_STRERROR_R regression on autoconf-2.69d compared to


From: Sergei Trofimovich
Subject: [sr #110367] AC_FUNC_STRERROR_R regression on autoconf-2.69d compared to 2.69
Date: Sun, 8 Nov 2020 07:21:31 -0500 (EST)
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:82.0) Gecko/20100101 Firefox/82.0

URL:
  <https://savannah.gnu.org/support/?110367>

                 Summary: AC_FUNC_STRERROR_R regression on autoconf-2.69d
compared to 2.69
                 Project: Autoconf
            Submitted by: slyfox
            Submitted on: Вс 08 ноя 2020 12:21:29
                Category: None
                Priority: 5 - Normal
                Severity: 4 - Important
                  Status: None
                 Privacy: Public
             Assigned to: None
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any
        Operating System: GNU/Linux

    _______________________________________________________

Details:

Initially the bug is observed on thin-provisioning-tools-0.9.0 package where
build started failing due to mis-detection of `strerror_r` prototype.

Probably related to C++. Minimal configure snippet that detects different
prototypes:

$ cat configure.ac
AC_PREREQ(2.61)
AC_INIT
AC_PROG_CXX([g++])
AC_PROG_CC([gcc])
AC_LANG(C++)

AC_FUNC_STRERROR_R

AC_OUTPUT

$ autoconf-2.69 && ./configure --host=x86_64-pc-linux-gnu
checking for x86_64-pc-linux-gnu-g++... x86_64-pc-linux-gnu-g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether x86_64-pc-linux-gnu-g++ accepts -g... yes
checking for x86_64-pc-linux-gnu-gcc... x86_64-pc-linux-gnu-gcc
checking whether we are using the GNU C compiler... yes
checking whether x86_64-pc-linux-gnu-gcc accepts -g... yes
checking for x86_64-pc-linux-gnu-gcc option to accept ISO C89... none needed
checking how to run the C++ preprocessor... x86_64-pc-linux-gnu-g++ -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking whether strerror_r is declared... yes
checking for strerror_r... yes
checking whether strerror_r returns char *... yes
configure: creating ./config.status

$ autoconf-2.70_beta3 && ./configure --host=x86_64-pc-linux-gnu
checking for x86_64-pc-linux-gnu-g++... x86_64-pc-linux-gnu-g++
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C++... yes
checking whether x86_64-pc-linux-gnu-g++ accepts -g... yes
checking for x86_64-pc-linux-gnu-g++ option to enable C++11 features... none
needed
checking for x86_64-pc-linux-gnu-gcc... x86_64-pc-linux-gnu-gcc
checking whether the compiler supports GNU C... yes
checking whether x86_64-pc-linux-gnu-gcc accepts -g... yes
checking for x86_64-pc-linux-gnu-gcc option to enable C11 features... none
needed
checking how x86_64-pc-linux-gnu-g++ reports undeclared, standard C
functions... error
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking whether strerror_r is declared... yes
checking whether strerror_r returns char *... no
configure: creating ./config.status

Note, the final problem here is the difference in:

checking whether strerror_r returns char *... yes
checking whether strerror_r returns char *... no

In progobal project it get used in
https://github.com/jthornber/thin-provisioning-tools/blob/main/configure.ac#L63
and fails to build later.

Should AC_FUNC_STRERROR_R pull in more headers (or defines?) explicitly?




    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/support/?110367>

_______________________________________________
  Сообщение отправлено по Savannah
  https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]