bug in perl autoscan
I just installed autoscan version 2.21 (on guixSD), and it gave me this warning in a recently un-tar-ed linphone.tar.gz directory. #BEGIN_SRC sh autoscan #END_SRC Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.30), passed through in regex; marked by <-- HERE in m/\${ <-- HERE [^\}]*}/ at /home/joshua/.guix-profile/bin/autoscan line 361. configure.ac: warning: missing AC_CHECK_FUNCS([__argz_count]) wanted by: intl/l10nflist.c:323 configure.ac: warning: missing AC_CHECK_FUNCS([__argz_next]) wanted by: intl/l10nflist.c:371 configure.ac: warning: missing AC_CHECK_FUNCS([__argz_stringify]) wanted by: intl/l10nflist.c:248 configure.ac: warning: missing AC_CHECK_FUNCS([atexit]) wanted by: gtk/chat.c:54 configure.ac: warning: missing AC_CHECK_FUNCS([dup2]) wanted by: console/shell.c:195 configure.ac: warning: missing AC_CHECK_FUNCS([inet_ntoa]) wanted by: coreapi/misc.c:415 configure.ac: warning: missing AC_CHECK_FUNCS([localtime_r]) wanted by: gtk/main.c:852 configure.ac: warning: missing AC_CHECK_FUNCS([memmove]) wanted by: coreapi/linphonecall.c:4770 configure.ac: warning: missing AC_CHECK_FUNCS([mempcpy]) wanted by: intl/localealias.c:213 configure.ac: warning: missing AC_CHECK_FUNCS([memset]) wanted by: gtk/status_notifier.c:458 configure.ac: warning: missing AC_CHECK_FUNCS([mkdir]) wanted by: gtk/logging.c:103 configure.ac: warning: missing AC_CHECK_FUNCS([munmap]) wanted by: intl/loadmsgcat.c:1005 configure.ac: warning: missing AC_CHECK_FUNCS([nl_langinfo]) wanted by: coreapi/sqlite3_bctbx_vfs.c:272 configure.ac: warning: missing AC_CHECK_FUNCS([pow]) wanted by: coreapi/linphonecall.c:2859 configure.ac: warning: missing AC_CHECK_FUNCS([putenv]) wanted by: intl/cat-compat.c:199 configure.ac: warning: missing AC_CHECK_FUNCS([realpath]) wanted by: coreapi/lpconfig.c:103 configure.ac: warning: missing AC_CHECK_FUNCS([regcomp]) wanted by: coreapi/account_creator.c:262 configure.ac: warning: missing AC_CHECK_FUNCS([setenv]) wanted by: intl/cat-compat.c:196 configure.ac: warning: missing AC_CHECK_FUNCS([setlocale]) wanted by: gtk/main.c:2187 configure.ac: warning: missing AC_CHECK_FUNCS([socket]) wanted by: coreapi/misc.c:296 configure.ac: warning: missing AC_CHECK_FUNCS([strcasecmp]) wanted by: gtk/friendlist.c:645 configure.ac: warning: missing AC_CHECK_FUNCS([strchr]) wanted by: gtk/support.c:218 configure.ac: warning: missing AC_CHECK_FUNCS([strcspn]) wanted by: intl/loadmsgcat.c:800 configure.ac: warning: missing AC_CHECK_FUNCS([strdup]) wanted by: gtk/main.c:196 configure.ac: warning: missing AC_CHECK_FUNCS([strerror]) wanted by: gtk/singleinstance.c:82 configure.ac: warning: missing AC_CHECK_FUNCS([strncasecmp]) wanted by: tools/generator.cc:213 configure.ac: warning: missing AC_CHECK_FUNCS([strpbrk]) wanted by: coreapi/linphonecore.c:993 configure.ac: warning: missing AC_CHECK_FUNCS([strrchr]) wanted by: gtk/main.c:198 configure.ac: warning: missing AC_CHECK_FUNCS([strstr]) wanted by: gtk/support.c:144 configure.ac: warning: missing AC_CHECK_FUNCS([strtol]) wanted by: console/linphonec.c:1292 configure.ac: warning: missing AC_CHECK_FUNCS([strtoull]) wanted by: coreapi/proxy.c:174 configure.ac: warning: missing AC_CHECK_HEADERS([argz.h]) wanted by: intl/l10nflist.c:33 configure.ac: warning: missing AC_CHECK_HEADERS([fcntl.h]) wanted by: console/wav2raw.c:8 configure.ac: warning: missing AC_CHECK_HEADERS([langinfo.h]) wanted by: intl/loadmsgcat.c:61 configure.ac: warning: missing AC_CHECK_HEADERS([libintl.h]) wanted by: gtk/linphone.h:58 configure.ac: warning: missing AC_CHECK_HEADERS([limits.h]) wanted by: build/wp8/zlib/zconf.h:397 configure.ac: warning: missing AC_CHECK_HEADERS([locale.h]) wanted by: gtk/main.c:55 configure.ac: warning: missing AC_CHECK_HEADERS([malloc.h]) wanted by: intl/cat-compat.c:30 configure.ac: warning: missing AC_CHECK_HEADERS([netdb.h]) wanted by: console/linphonec.c:51 configure.ac: warning: missing AC_CHECK_HEADERS([nl_types.h]) wanted by: intl/cat-compat.c:35 configure.ac: warning: missing AC_CHECK_HEADERS([stddef.h]) wanted by: build/wp8/zlib/zconf.h:435 configure.ac: warning: missing AC_CHECK_HEADERS([stdio_ext.h]) wanted by: intl/localealias.c:33 configure.ac: warning: missing AC_CHECK_HEADERS([sys/ioctl.h]) wanted by: daemon/daemon.cc:22 configure.ac: warning: missing AC_CHECK_HEADERS([sys/socket.h]) wanted by: console/linphonec.c:49 configure.ac: warning: missing AC_CHECK_HEADERS([sys/time.h]) wanted by: console/linphonec.c:50 configure.ac: warning: missing AC_CHECK_HEADERS([wchar.h]) wanted by: include/MSVC/stdint.h:52 configure.ac: warning: missing AC_CHECK_HEADER_STDBOOL wanted by: wrappers/cpp/object.cc:63 configure.ac: warning: missing AC_FUNC_ALLOCA wanted by: intl/localealias.c:42 co
Re: autoconf: AC_SEARCH_LIBS with AC_LANG([C++]) broken when using gcc 8
On 1/17/19, Paul Gevers wrote: > On 14-01-2019 11:57, Matthias Klose wrote: >> On 12.01.19 21:37, Chaim Zax wrote: >>> Because autoconf can be used outside a Debian environment this solution >>> might not work for everyone. Perhaps the AC_SEARCH_LIBS function should >>> be extended so function arguments needed to check a library could be >>> provided as well, or perhaps there is an other way to make it compatible >>> with g++ 8. >> >> g++ 8 got more strict. You could check if that's the case for g++ 9 as >> well (or >> gcc-snapshot). In any case, autoconf should be adjusted to avoid the >> warning/error. > > Do you happen to know why g++ 8 happens to fail on this library and > doesn't fail on other libraries we checked? Does g++ know which > libraries it includes and is it pickier on those? I'm not familiar with the library in question but the problem appears to be specific to these __atomic_xyz builtins which seem to get special treatment in g++. Other builtins I tested do not exhibit such failures. There is no obvious way to disable the error in GCC: -fno-buitlin appears not to affect these functions and -fpermissive does not resolve the error at the call site. AC_SEARCH_LIBS can present a simple interface based on the assumption that correct declarations are not required to test linking against a particular symbol in a library. Clearly this assumption is not valid for these particular functions in C++ mode, so it is likely that AC_SEARCH_LIBS simply cannot be used to reliably probe for __atomic_xyz functions in libatomic. In that case, configure authors must use an alternate approach. For example, - probing a different function from libatomic, if possible, - probing in C mode, if possible, - using AC_LINK_IFELSE with a valid test program, or - something else? Cheers, Nick
Re: autoconf: AC_SEARCH_LIBS with AC_LANG([C++]) broken when using gcc 8
Hi Doko, Thanks for your reply. On 14-01-2019 11:57, Matthias Klose wrote: > On 12.01.19 21:37, Chaim Zax wrote: >> Because autoconf can be used outside a Debian environment this solution >> might not work for everyone. Perhaps the AC_SEARCH_LIBS function should >> be extended so function arguments needed to check a library could be >> provided as well, or perhaps there is an other way to make it compatible >> with g++ 8. > > g++ 8 got more strict. You could check if that's the case for g++ 9 as well > (or > gcc-snapshot). In any case, autoconf should be adjusted to avoid the > warning/error. Do you happen to know why g++ 8 happens to fail on this library and doesn't fail on other libraries we checked? Does g++ know which libraries it includes and is it pickier on those? Paul signature.asc Description: OpenPGP digital signature