NetBSD-Bugs archive

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

Re: toolchain/53314: strncasecmp conflict when cross-compiling libgroff on FreeBSD



The following reply was made to PR toolchain/53314; it has been noted by GNATS.

From: Sevan Janiyan <venture37%geeklan.co.uk@localhost>
To: gnats-bugs%NetBSD.org@localhost
Cc: 
Subject: Re: toolchain/53314: strncasecmp conflict when cross-compiling
 libgroff on FreeBSD
Date: Sat, 26 May 2018 20:30:38 +0100

 On 05/26/18 18:45, Valery Ushakov wrote:
 >  Check your tools/groff/build/src/include/config.h and
 >  tools/groff/build/config.log, search for strncasecmp
 >  (case-insensitive).
 >  
 
 
 /* Define to 1 if you have the `strncasecmp' function. */
 #define HAVE_STRNCASECMP 1
 
 /* Define if your C++ doesn't declare strncasecmp(). */
 #define NEED_DECLARATION_STRNCASECMP 1
 
 
 configure:7436: checking whether strncasecmp must be declared
 configure:7493: c++ -c -O
 -I/home/sevan/sandbox/tools/amd64/include/compat
 -I/netbsd-src-ro/tools/compat  -DHAVE_NBTOOL_CONFIG_H=1
 -D_FILE_OFFSET_BITS=64 conftest.cc >&5
 In file included from conftest.cc:52:
 In file included from /usr/include/c++/v1/stdlib.h:94:
 /usr/include/stdlib.h:95:1: error: function declared '[[noreturn]]'
 after its first declaration
 _Noreturn void   exit(int);
 ^
 /usr/include/sys/cdefs.h:291:22: note: expanded from macro '_Noreturn'
 #define _Noreturn               [[noreturn]]
                                   ^
 conftest.cc:10:6: note: declaration missing '[[noreturn]]' attribute is here
 void exit (int);
      ^
 In file included from conftest.cc:52:
 In file included from /usr/include/c++/v1/stdlib.h:94:
 /usr/include/stdlib.h:95:17: error: declaration of 'exit' has a
 different language linkage
 _Noreturn void   exit(int);
                  ^
 conftest.cc:10:6: note: previous declaration is here
 void exit (int);
      ^
 2 errors generated.
 configure:7499: $? = 1
 configure: failed program was:
 |
 | 	  /* confdefs.h.  */
 |
 | #define PACKAGE_NAME ""
 | #define PACKAGE_TARNAME ""
 | #define PACKAGE_VERSION ""
 | #define PACKAGE_STRING ""
 | #define PACKAGE_BUGREPORT ""
 | #ifdef __cplusplus
 | void exit (int);
 | #endif
 | #define X_DISPLAY_MISSING 1
 | #define STDC_HEADERS 1
 | #define HAVE_SYS_TYPES_H 1
 | #define HAVE_SYS_STAT_H 1
 | #define HAVE_STDLIB_H 1
 | #define HAVE_STRING_H 1
 | #define HAVE_MEMORY_H 1
 | #define HAVE_STRINGS_H 1
 | #define HAVE_INTTYPES_H 1
 | #define HAVE_STDINT_H 1
 | #define HAVE_UNISTD_H 1
 | #define HAVE_STDLIB_H 1
 | #define HAVE_UNISTD_H 1
 | #define HAVE_DIRENT_H 1
 | #define HAVE_LIMITS_H 1
 | #define HAVE_SYS_DIR_H 1
 | #define HAVE_STRING_H 1
 | #define HAVE_STRINGS_H 1
 | #define HAVE_MATH_H 1
 | #define HAVE_SYS_TIME_H 1
 | #define NEED_DECLARATION_GETTIMEOFDAY 1
 | #define NEED_DECLARATION_HYPOT 1
 | #define NEED_DECLARATION_POPEN 1
 | #define NEED_DECLARATION_PCLOSE 1
 | #define NEED_DECLARATION_PUTENV 1
 | #define NEED_DECLARATION_RAND 1
 | #define NEED_DECLARATION_SNPRINTF 1
 | #define NEED_DECLARATION_SRAND 1
 | #define NEED_DECLARATION_STRCASECMP 1
 | /* end confdefs.h.  */
 |
 |
 | #include <stdio.h>
 | #ifdef HAVE_STRING_H
 | #include <string.h>
 | #endif
 | #ifdef HAVE_STRINGS_H
 | #include <strings.h>
 | #endif
 | #ifdef HAVE_STDLIB_H
 | #include <stdlib.h>
 | #endif
 | #ifdef HAVE_SYS_TIME_H
 | #include <sys/time.h>
 | #endif
 | #ifdef HAVE_UNISTD_H
 | #include <unistd.h>
 | #endif
 | #ifdef HAVE_MATH_H
 | #include <math.h>
 | #endif
 |
 |
 | int
 | main ()
 | {
 |
 |
 | #ifndef strncasecmp
 |   char *p = (char *) strncasecmp;
 | #endif
 |
 |
 |   ;
 |   return 0;
 | }
 |
 configure:7524: result: yes
 
 
 configure:9016: checking for strncasecmp
 configure:9073: cc -o conftest -O
 -I/home/sevan/sandbox/tools/amd64/include/compat
 -I/netbsd-src-ro/tools/compat  -DHAVE_NBTOOL_CONFIG_H=1
 -D_FILE_OFFSET_BITS=64  conftest.c  -lc -lm >&5
 conftest.c:82:6: warning: incompatible redeclaration of library function
 'strncasecmp' [-Wincompatible-library-redeclaration]
 char strncasecmp ();
      ^
 conftest.c:82:6: note: 'strncasecmp' is a builtin with type 'int (const
 char *, const char *, unsigned long)'
 1 warning generated.
 configure:9079: $? = 0
 configure:9083: test -z
 			 || test ! -s conftest.err
 configure:9086: $? = 0
 configure:9089: test -s conftest
 configure:9092: $? = 0
 configure:9104: result: yes
 configure:9016: checking for strtol
 configure:9073: cc -o conftest -O
 -I/home/sevan/sandbox/tools/amd64/include/compat
 -I/netbsd-src-ro/tools/compat  -DHAVE_NBTOOL_CONFIG_H=1
 -D_FILE_OFFSET_BITS=64  conftest.c  -lc -lm >&5
 configure:9079: $? = 0
 configure:9083: test -z
 			 || test ! -s conftest.err
 configure:9086: $? = 0
 configure:9089: test -s conftest
 configure:9092: $? = 0
 configure:9104: result: yes
 
 
 
 configure:7436: checking whether strncasecmp must be declared
 configure:7493: c++ -c -O
 -I/home/sevan/sandbox/tools/amd64/include/compat
 -I/netbsd-src-ro/tools/compat  -DHAVE_NBTOOL_CONFIG_H=1
 -D_FILE_OFFSET_BITS=64 conftest.cc >&5
 In file included from conftest.cc:52:
 In file included from /usr/include/c++/v1/stdlib.h:94:
 /usr/include/stdlib.h:95:1: error: function declared '[[noreturn]]'
 after its first declaration
 _Noreturn void   exit(int);
 ^
 /usr/include/sys/cdefs.h:291:22: note: expanded from macro '_Noreturn'
 #define _Noreturn               [[noreturn]]
                                   ^
 conftest.cc:10:6: note: declaration missing '[[noreturn]]' attribute is here
 void exit (int);
      ^
 In file included from conftest.cc:52:
 In file included from /usr/include/c++/v1/stdlib.h:94:
 /usr/include/stdlib.h:95:17: error: declaration of 'exit' has a
 different language linkage
 _Noreturn void   exit(int);
                  ^
 conftest.cc:10:6: note: previous declaration is here
 void exit (int);
      ^
 2 errors generated.
 configure:7499: $? = 1
 configure: failed program was:
 |
 | 	  /* confdefs.h.  */
 |
 | #define PACKAGE_NAME ""
 | #define PACKAGE_TARNAME ""
 | #define PACKAGE_VERSION ""
 | #define PACKAGE_STRING ""
 | #define PACKAGE_BUGREPORT ""
 | #ifdef __cplusplus
 | void exit (int);
 | #endif
 | #define X_DISPLAY_MISSING 1
 | #define STDC_HEADERS 1
 | #define HAVE_SYS_TYPES_H 1
 | #define HAVE_SYS_STAT_H 1
 | #define HAVE_STDLIB_H 1
 | #define HAVE_STRING_H 1
 | #define HAVE_MEMORY_H 1
 | #define HAVE_STRINGS_H 1
 | #define HAVE_INTTYPES_H 1
 | #define HAVE_STDINT_H 1
 | #define HAVE_UNISTD_H 1
 | #define HAVE_STDLIB_H 1
 | #define HAVE_UNISTD_H 1
 | #define HAVE_DIRENT_H 1
 | #define HAVE_LIMITS_H 1
 | #define HAVE_SYS_DIR_H 1
 | #define HAVE_STRING_H 1
 | #define HAVE_STRINGS_H 1
 | #define HAVE_MATH_H 1
 | #define HAVE_SYS_TIME_H 1
 | #define NEED_DECLARATION_GETTIMEOFDAY 1
 | #define NEED_DECLARATION_HYPOT 1
 | #define NEED_DECLARATION_POPEN 1
 | #define NEED_DECLARATION_PCLOSE 1
 | #define NEED_DECLARATION_PUTENV 1
 | #define NEED_DECLARATION_RAND 1
 | #define NEED_DECLARATION_SNPRINTF 1
 | #define NEED_DECLARATION_SRAND 1
 | #define NEED_DECLARATION_STRCASECMP 1
 | /* end confdefs.h.  */
 |
 |
 | #include <stdio.h>
 | #ifdef HAVE_STRING_H
 | #include <string.h>
 | #endif
 | #ifdef HAVE_STRINGS_H
 | #include <strings.h>
 | #endif
 | #ifdef HAVE_STDLIB_H
 | #include <stdlib.h>
 | #endif
 | #ifdef HAVE_SYS_TIME_H
 | #include <sys/time.h>
 | #endif
 | #ifdef HAVE_UNISTD_H
 | #include <unistd.h>
 | #endif
 | #ifdef HAVE_MATH_H
 | #include <math.h>
 | #endif
 |
 |
 | int
 | main ()
 | {
 |
 |
 | #ifndef strncasecmp
 |   char *p = (char *) strncasecmp;
 | #endif
 |
 |
 |   ;
 |   return 0;
 | }
 |
 configure:7524: result: yes
 


Home | Main Index | Thread Index | Old Index