public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* basename conflicting definitions
@ 2015-04-21  5:31 Marco Atzeri
  2015-04-21  7:38 ` Corinna Vinschen
  0 siblings, 1 reply; 4+ messages in thread
From: Marco Atzeri @ 2015-04-21  5:31 UTC (permalink / raw)
  To: cygwin

Hi Corinna,
building open-mpi on

  $ uname -svrm
CYGWIN_NT-6.1 2.0.0(0.287/5/3) 2015-04-17 12:08 x86_64

I see a conflict from 2 header of

$ cygcheck -f /usr/include/libgen.h /usr/include/string.h
cygwin-devel-2.0.0-0.7
cygwin-devel-2.0.0-0.7


configure:59845: gcc -std=gnu99 -c -DNDEBUG -ggdb -O2 -pipe 
-Wimplicit-function-declaration 
-fdebug-prefix-map=/pub/devel/openmpi/openmpi-1.8.5pre2-1.x86_64/build=/usr/src/debug/openmpi-1.8.5pre2-1 
-fdebug-prefix-map=/pub/devel/openmpi/openmpi-1.8.5pre2-1.x86_64/src/openmpi-1.8.5pre2=/usr/src/debug/openmpi-1.8.5pre2-1 
-finline-functions -fno-strict-aliasing -fexceptions  conftest.c >&5
In file included from conftest.c:429:0:
/usr/include/libgen.h:18:14: error: conflicting types for 'basename'
  extern char *basename (char *path);
               ^
In file included from /usr/include/stdio.h:29:0,
                  from conftest.c:396:
/usr/include/string.h:172:7: note: previous declaration of 'basename' 
was here
  char *_EXFUN(basename,(const char *))
        ^

Regards
Marco

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: basename conflicting definitions
  2015-04-21  5:31 basename conflicting definitions Marco Atzeri
@ 2015-04-21  7:38 ` Corinna Vinschen
  2015-04-21  8:44   ` Marco Atzeri
  0 siblings, 1 reply; 4+ messages in thread
From: Corinna Vinschen @ 2015-04-21  7:38 UTC (permalink / raw)
  To: cygwin

[-- Attachment #1: Type: text/plain, Size: 1585 bytes --]

Hi Marco,

On Apr 21 07:31, Marco Atzeri wrote:
> Hi Corinna,
> building open-mpi on
> 
>  $ uname -svrm
> CYGWIN_NT-6.1 2.0.0(0.287/5/3) 2015-04-17 12:08 x86_64
> 
> I see a conflict from 2 header of
> 
> $ cygcheck -f /usr/include/libgen.h /usr/include/string.h
> cygwin-devel-2.0.0-0.7
> cygwin-devel-2.0.0-0.7
> 
> 
> configure:59845: gcc -std=gnu99 -c -DNDEBUG -ggdb -O2 -pipe
> -Wimplicit-function-declaration -fdebug-prefix-map=/pub/devel/openmpi/openmpi-1.8.5pre2-1.x86_64/build=/usr/src/debug/openmpi-1.8.5pre2-1 -fdebug-prefix-map=/pub/devel/openmpi/openmpi-1.8.5pre2-1.x86_64/src/openmpi-1.8.5pre2=/usr/src/debug/openmpi-1.8.5pre2-1
> -finline-functions -fno-strict-aliasing -fexceptions  conftest.c >&5
> In file included from conftest.c:429:0:
> /usr/include/libgen.h:18:14: error: conflicting types for 'basename'
>  extern char *basename (char *path);
>               ^
> In file included from /usr/include/stdio.h:29:0,
>                  from conftest.c:396:
> /usr/include/string.h:172:7: note: previous declaration of 'basename' was
> here
>  char *_EXFUN(basename,(const char *))
>        ^

That's Yaakov's patch to introduce GNU basename with the different
behaviour depending whether you include via libgen.h or via #define
_GNU_SOURCE, string,h.

Which one is it here?  The conflict shouldn't occur, one of them should
have been filtered out based on the order.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

[-- Attachment #2: Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: basename conflicting definitions
  2015-04-21  7:38 ` Corinna Vinschen
@ 2015-04-21  8:44   ` Marco Atzeri
  2015-04-21  9:21     ` Corinna Vinschen
  0 siblings, 1 reply; 4+ messages in thread
From: Marco Atzeri @ 2015-04-21  8:44 UTC (permalink / raw)
  To: cygwin

[-- Attachment #1: Type: text/plain, Size: 1697 bytes --]



On 4/21/2015 9:38 AM, Corinna Vinschen wrote:
> Hi Marco,
>
> On Apr 21 07:31, Marco Atzeri wrote:
>> Hi Corinna,
>> building open-mpi on
>>
>>   $ uname -svrm
>> CYGWIN_NT-6.1 2.0.0(0.287/5/3) 2015-04-17 12:08 x86_64
>>
>> I see a conflict from 2 header of
>>
>> $ cygcheck -f /usr/include/libgen.h /usr/include/string.h
>> cygwin-devel-2.0.0-0.7
>> cygwin-devel-2.0.0-0.7
>>
>>
>> configure:59845: gcc -std=gnu99 -c -DNDEBUG -ggdb -O2 -pipe
>> -Wimplicit-function-declaration -fdebug-prefix-map=/pub/devel/openmpi/openmpi-1.8.5pre2-1.x86_64/build=/usr/src/debug/openmpi-1.8.5pre2-1 -fdebug-prefix-map=/pub/devel/openmpi/openmpi-1.8.5pre2-1.x86_64/src/openmpi-1.8.5pre2=/usr/src/debug/openmpi-1.8.5pre2-1
>> -finline-functions -fno-strict-aliasing -fexceptions  conftest.c >&5
>> In file included from conftest.c:429:0:
>> /usr/include/libgen.h:18:14: error: conflicting types for 'basename'
>>   extern char *basename (char *path);
>>                ^
>> In file included from /usr/include/stdio.h:29:0,
>>                   from conftest.c:396:
>> /usr/include/string.h:172:7: note: previous declaration of 'basename' was
>> here
>>   char *_EXFUN(basename,(const char *))
>>         ^
>
> That's Yaakov's patch to introduce GNU basename with the different
> behaviour depending whether you include via libgen.h or via #define
> _GNU_SOURCE, string,h.
>
> Which one is it here?  The conflict shouldn't occur, one of them should
> have been filtered out based on the order.
>
>
> Corinna
>


libgen.h check

AC_CHECK_HEADERS([alloca.h aio.h arpa/inet.h dirent.h \
     dlfcn.h execinfo.h err.h fcntl.h grp.h inttypes.h libgen.h
    ....

attached extract from the config.log

Regards
Marco




[-- Attachment #2: libgen_check.log --]
[-- Type: text/plain, Size: 17065 bytes --]

configure:59873: checking libgen.h usability
configure:59873: gcc -std=gnu99 -c -DNDEBUG -ggdb -O2 -pipe -Wimplicit-function-declaration -fdebug-prefix-map=/pub/devel/openmpi/prova/openmpi-1.8.5rc1-1.x86_64/build=/usr/src/debug/openmpi-1.8.5rc1-1 -fdebug-prefix-map=/pub/devel/openmpi/prova/openmpi-1.8.5rc1-1.x86_64/src/openmpi-1.8.5rc1=/usr/src/debug/openmpi-1.8.5rc1-1 -finline-functions -fno-strict-aliasing -fexceptions  conftest.c >&5
In file included from conftest.c:433:0:
/usr/include/libgen.h:18:14: error: conflicting types for 'basename'
 extern char *basename (char *path);
              ^
In file included from /usr/include/stdio.h:29:0,
                 from conftest.c:400:
/usr/include/string.h:172:7: note: previous declaration of 'basename' was here
 char *_EXFUN(basename,(const char *))
       ^
configure:59873: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "Open MPI"
| #define PACKAGE_TARNAME "openmpi"
| #define PACKAGE_VERSION "1.8.5rc1"
| #define PACKAGE_STRING "Open MPI 1.8.5rc1"
| #define PACKAGE_BUGREPORT "http://www.open-mpi.org/community/help/"
| #define PACKAGE_URL ""
| #define OPAL_ARCH "x86_64-unknown-cygwin"
| #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 __EXTENSIONS__ 1
| #define _ALL_SOURCE 1
| #define _GNU_SOURCE 1
| #define _POSIX_PTHREAD_SEMANTICS 1
| #define _TANDEM_SOURCE 1
| #define OMPI_MAJOR_VERSION 1
| #define OMPI_MINOR_VERSION 8
| #define OMPI_RELEASE_VERSION 5
| #define OMPI_GREEK_VERSION "rc1"
| #define OMPI_REPO_REV "v1.8.4-184-g481d751"
| #define OMPI_TARBALL_VERSION "1.8.5rc1"
| #define OMPI_VERSION "5"
| #define OMPI_RELEASE_DATE "Apr 05, 2015"
| #define ORTE_MAJOR_VERSION 1
| #define ORTE_MINOR_VERSION 8
| #define ORTE_RELEASE_VERSION 5
| #define ORTE_GREEK_VERSION "rc1"
| #define ORTE_REPO_REV "v1.8.4-184-g481d751"
| #define ORTE_TARBALL_VERSION "1.8.5rc1"
| #define ORTE_VERSION "5"
| #define ORTE_RELEASE_DATE "Apr 05, 2015"
| #define OSHMEM_MAJOR_VERSION 1
| #define OSHMEM_MINOR_VERSION 8
| #define OSHMEM_RELEASE_VERSION 5
| #define OSHMEM_GREEK_VERSION "rc1"
| #define OSHMEM_REPO_REV "v1.8.4-184-g481d751"
| #define OSHMEM_TARBALL_VERSION "1.8.5rc1"
| #define OSHMEM_VERSION "5"
| #define OSHMEM_RELEASE_DATE "Apr 05, 2015"
| #define OPAL_MAJOR_VERSION 1
| #define OPAL_MINOR_VERSION 8
| #define OPAL_RELEASE_VERSION 5
| #define OPAL_GREEK_VERSION "rc1"
| #define OPAL_REPO_REV "v1.8.4-184-g481d751"
| #define OPAL_TARBALL_VERSION "1.8.5rc1"
| #define OPAL_VERSION "5"
| #define OPAL_RELEASE_DATE "Apr 05, 2015"
| #define OPAL_ENABLE_MEM_DEBUG 0
| #define OPAL_ENABLE_MEM_PROFILE 0
| #define OPAL_ENABLE_DEBUG 0
| #define OPAL_WANT_PRETTY_PRINT_STACKTRACE 1
| #define OPAL_ENABLE_PTY_SUPPORT 1
| #define OPAL_ENABLE_HETEROGENEOUS_SUPPORT 0
| #define OPAL_ENABLE_FT 0
| #define OPAL_ENABLE_FT_CR 0
| #define OPAL_WANT_HOME_CONFIG_FILES 1
| #define OPAL_ENABLE_IPV6 0
| #define OPAL_PACKAGE_STRING "Open MPI marco@GE-MATZERI-EU Distribution"
| #define OPAL_IDENT_STRING "1.8.5rc1"
| #define OPAL_MAX_PROCESSOR_NAME 256
| #define OPAL_MAX_ERROR_STRING 256
| #define OPAL_MAX_OBJECT_NAME 64
| #define OPAL_MAX_INFO_KEY 36
| #define OPAL_MAX_INFO_VAL 256
| #define OPAL_MAX_PORT_NAME 1024
| #define OPAL_MAX_DATAREP_STRING 128
| #define OPAL_ENABLE_CRDEBUG 0
| #define OPAL_ENABLE_GETPWUID 1
| #define OPAL_HAVE_SOLARIS 0
| #define HAVE_NETDB_H 1
| #define HAVE_NETINET_IN_H 1
| #define HAVE_NETINET_TCP_H 1
| #define HAVE_STRUCT_SOCKADDR_IN 1
| #define OPAL_CUDA_SUPPORT 0
| #define OPAL_CUDA_SUPPORT_41 0
| #define OPAL_CUDA_SYNC_MEMOPS 0
| #define OPAL_CUDA_GET_ATTRIBUTES 0
| #define OPAL_CUDA_GDR_SUPPORT 0
| #define ORTE_DISABLE_FULL_SUPPORT 0
| #define ORTE_WANT_ORTERUN_PREFIX_BY_DEFAULT 0
| #define ORTE_ENABLE_SENSORS 0
| #define ORTE_ENABLE_STATIC_PORTS 1
| #define OMPI_WANT_MPI_INTERFACE_WARNING 1
| #define OMPI_GROUP_SPARSE 0
| #define OMPI_WANT_PERUSE 0
| #define OMPI_WANT_MPI_CXX_SEEK 1
| #define MPI_PARAM_CHECK 1
| #define OMPI_PARAM_CHECK 1
| #define OMPI_BUILD_FORTRAN_F08_SUBARRAYS 0
| #define OMPI_ENABLE_PROGRESS_THREADS 0
| #define OSHMEM_SPEC_COMPAT 0
| #define OSHMEM_PARAM_CHECK 0
| #define HAVE_ON_EXIT 1
| #define OPAL_CC "gcc"
| #define STDC_HEADERS 1
| #define _GNU_SOURCE 1
| #define OPAL_C_HAVE_BUILTIN_EXPECT 1
| #define OPAL_C_HAVE_BUILTIN_PREFETCH 1
| #define OPAL_C_HAVE_BUILTIN_CLZ 1
| #define OPAL_CC_USE_PRAGMA_IDENT 0
| #define OPAL_CC_USE_IDENT 1
| #define OPAL_CC_USE_PRAGMA_COMMENT 
| #define OPAL_CC_USE_CONST_CHAR_IDENT 0
| #define HAVE_INT8_T 1
| #define HAVE_UINT8_T 1
| #define HAVE_INT16_T 1
| #define HAVE_UINT16_T 1
| #define HAVE_INT32_T 1
| #define HAVE_UINT32_T 1
| #define HAVE_INT64_T 1
| #define HAVE_UINT64_T 1
| #define HAVE_LONG_LONG 1
| #define HAVE___FLOAT128 1
| #define HAVE_LONG_DOUBLE 1
| #define HAVE_COMPLEX_H 1
| #define HAVE_FLOAT__COMPLEX 1
| #define HAVE_DOUBLE__COMPLEX 1
| #define HAVE_LONG_DOUBLE__COMPLEX 1
| #define HAVE_INTPTR_T 1
| #define HAVE_UINTPTR_T 1
| #define HAVE_MODE_T 1
| #define HAVE_SSIZE_T 1
| #define HAVE_PTRDIFF_T 1
| #define SIZEOF_CHAR 1
| #define SIZEOF_SHORT 2
| #define SIZEOF_INT 4
| #define SIZEOF_LONG 8
| #define SIZEOF_LONG_LONG 8
| #define SIZEOF_FLOAT 4
| #define SIZEOF_DOUBLE 8
| #define SIZEOF_LONG_DOUBLE 16
| #define SIZEOF___FLOAT128 16
| #define SIZEOF_FLOAT__COMPLEX 8
| #define SIZEOF_DOUBLE__COMPLEX 16
| #define SIZEOF_LONG_DOUBLE__COMPLEX 32
| #define SIZEOF_VOID_P 8
| #define SIZEOF_SIZE_T 8
| #define SIZEOF_SSIZE_T 8
| #define SIZEOF_PTRDIFF_T 8
| #define SIZEOF_WCHAR_T 2
| #define OPAL_ALIGNMENT_BOOL 1
| #define OPAL_ALIGNMENT_INT8 1
| #define OPAL_ALIGNMENT_INT16 2
| #define OPAL_ALIGNMENT_INT32 4
| #define OPAL_ALIGNMENT_INT64 8
| #define OPAL_ALIGNMENT_CHAR 1
| #define OPAL_ALIGNMENT_SHORT 2
| #define OPAL_ALIGNMENT_WCHAR 2
| #define OPAL_ALIGNMENT_INT 4
| #define OPAL_ALIGNMENT_LONG 8
| #define OPAL_ALIGNMENT_LONG_LONG 8
| #define OPAL_ALIGNMENT_FLOAT 4
| #define OPAL_ALIGNMENT_DOUBLE 8
| #define OPAL_ALIGNMENT_LONG_DOUBLE 16
| #define OPAL_ALIGNMENT___FLOAT128 16
| #define OPAL_ALIGNMENT_FLOAT_COMPLEX 4
| #define OPAL_ALIGNMENT_DOUBLE_COMPLEX 8
| #define OPAL_ALIGNMENT_LONG_DOUBLE_COMPLEX 16
| #define OPAL_ALIGNMENT_VOID_P 8
| #define OPAL_ALIGNMENT_SIZE_T 8
| #define OPAL_NEED_C_BOOL 1
| #define SIZEOF__BOOL 1
| #ifndef __cplusplus
| #define inline __inline__
| #endif
| #define restrict __restrict
| #define OMPI_ENABLE_MPI_PROFILING 1
| #define OPAL_HAVE_WEAK_SYMBOLS 0
| #define OPAL_CXX "g++"
| #define SIZEOF_BOOL 1
| #define OPAL_ALIGNMENT_CXX_BOOL 1
| #define OMPI_CXX "g++"
| #define SIZEOF_BOOL 1
| #define OPAL_ALIGNMENT_CXX_BOOL 1
| #define OMPI_HAVE_CXX_EXCEPTION_SUPPORT 1
| #define OPAL_CXX_USE_PRAGMA_IDENT 0
| #define OPAL_CXX_USE_IDENT 1
| #define OPAL_CXX_USE_PRAGMA_COMMENT 
| #define OPAL_CXX_USE_CONST_CHAR_IDENT 0
| #define OMPI_CXX_HAVE_BUILTIN_EXPECT 1
| #define OMPI_CXX_HAVE_BUILTIN_PREFETCH 1
| #define OMPI_CXX_SUPPORTS_2D_CONST_CAST 1
| #define OMPI_BUILD_CXX_BINDINGS 1
| #define OPAL_HAVE_ATTRIBUTE 1
| #define OPAL_HAVE_ATTRIBUTE_ALIGNED 1
| #define OPAL_HAVE_ATTRIBUTE_ALWAYS_INLINE 1
| #define OPAL_HAVE_ATTRIBUTE_COLD 1
| #define OPAL_HAVE_ATTRIBUTE_CONST 1
| #define OPAL_HAVE_ATTRIBUTE_DEPRECATED 1
| #define OPAL_HAVE_ATTRIBUTE_DEPRECATED_ARGUMENT 1
| #define OPAL_HAVE_ATTRIBUTE_FORMAT 1
| #define OPAL_HAVE_ATTRIBUTE_FORMAT_FUNCPTR 1
| #define OPAL_HAVE_ATTRIBUTE_HOT 1
| #define OPAL_HAVE_ATTRIBUTE_MALLOC 1
| #define OPAL_HAVE_ATTRIBUTE_MAY_ALIAS 1
| #define OPAL_HAVE_ATTRIBUTE_NO_INSTRUMENT_FUNCTION 1
| #define OPAL_HAVE_ATTRIBUTE_NOINLINE 1
| #define OPAL_HAVE_ATTRIBUTE_NONNULL 1
| #define OPAL_HAVE_ATTRIBUTE_NORETURN 1
| #define OPAL_HAVE_ATTRIBUTE_NORETURN_FUNCPTR 1
| #define OPAL_HAVE_ATTRIBUTE_PACKED 1
| #define OPAL_HAVE_ATTRIBUTE_PURE 1
| #define OPAL_HAVE_ATTRIBUTE_SENTINEL 1
| #define OPAL_HAVE_ATTRIBUTE_UNUSED 1
| #define OPAL_HAVE_ATTRIBUTE_VISIBILITY 1
| #define OPAL_HAVE_ATTRIBUTE_WARN_UNUSED_RESULT 1
| #define OPAL_HAVE_ATTRIBUTE_WEAK_ALIAS 1
| #define OPAL_HAVE_ATTRIBUTE_DESTRUCTOR 1
| #define OPAL_BUILD_PLATFORM_COMPILER_FAMILYID 1
| #define OPAL_BUILD_PLATFORM_COMPILER_FAMILYNAME GNU
| #define OPAL_BUILD_PLATFORM_COMPILER_VERSION 264450
| #define OPAL_BUILD_PLATFORM_COMPILER_VERSION_STR 4.9.2
| #define OPAL_HAVE_JAVA_SUPPORT no
| #define OMPI_WANT_JAVA_BINDINGS 0
| #define OPAL_WANT_SMP_LOCKS 1
| #define OPAL_ASM_TEXT ".text"
| #define OPAL_ASM_GLOBAL ".globl"
| #define OPAL_ASM_LABEL_SUFFIX ":"
| #define OPAL_ASM_GSYM ""
| #define OPAL_ASM_LSYM "L"
| #define OPAL_ASM_TYPE ""
| #define OPAL_ASM_SIZE "0"
| #define OPAL_ASM_ALIGN_LOG 
| #define OPAL_ASM_SUPPORT_64BIT 1
| #define OPAL_C_GCC_INLINE_ASSEMBLY 1
| #define OPAL_C_DEC_INLINE_ASSEMBLY 0
| #define OPAL_C_XLC_INLINE_ASSEMBLY 0
| #define OPAL_ASSEMBLY_FORMAT "default-.text-.globl-:--L--0-0-1-1-0"
| #define OPAL_ASSEMBLY_ARCH OMPI_AMD64
| #define OPAL_ASSEMBLY_BUILTIN OMPI_BUILTIN_NO
| #define OPAL_HAVE_ASM_FILE 1
| #define OMPI_FORTRAN_DOUBLE_UNDERSCORE 0
| #define OMPI_FORTRAN_SINGLE_UNDERSCORE 1
| #define OMPI_FORTRAN_CAPS 0
| #define OMPI_FORTRAN_PLAIN 0
| #define ompi_fortran_bogus_type_t int
| #define OMPI_HAVE_FORTRAN_CHARACTER 1
| #define OMPI_SIZEOF_FORTRAN_CHARACTER 1
| #define OMPI_ALIGNMENT_FORTRAN_CHARACTER 1
| #define OMPI_KIND_FORTRAN_CHARACTER C_SIGNED_CHAR
| #define ompi_fortran_character_t char
| #define OMPI_HAVE_FORTRAN_LOGICAL 1
| #define OMPI_SIZEOF_FORTRAN_LOGICAL 4
| #define OMPI_ALIGNMENT_FORTRAN_LOGICAL 4
| #define OMPI_KIND_FORTRAN_LOGICAL C_INT
| #define ompi_fortran_logical_t int
| #define OMPI_HAVE_FORTRAN_LOGICAL1 1
| #define OMPI_SIZEOF_FORTRAN_LOGICAL1 1
| #define OMPI_ALIGNMENT_FORTRAN_LOGICAL1 1
| #define OMPI_KIND_FORTRAN_LOGICAL1 C_SIGNED_CHAR
| #define ompi_fortran_logical1_t char
| #define OMPI_HAVE_FORTRAN_LOGICAL2 1
| #define OMPI_SIZEOF_FORTRAN_LOGICAL2 2
| #define OMPI_ALIGNMENT_FORTRAN_LOGICAL2 2
| #define OMPI_KIND_FORTRAN_LOGICAL2 C_SHORT
| #define ompi_fortran_logical2_t short
| #define OMPI_HAVE_FORTRAN_LOGICAL4 1
| #define OMPI_SIZEOF_FORTRAN_LOGICAL4 4
| #define OMPI_ALIGNMENT_FORTRAN_LOGICAL4 4
| #define OMPI_KIND_FORTRAN_LOGICAL4 C_INT
| #define ompi_fortran_logical4_t int
| #define OMPI_HAVE_FORTRAN_LOGICAL8 1
| #define OMPI_SIZEOF_FORTRAN_LOGICAL8 8
| #define OMPI_ALIGNMENT_FORTRAN_LOGICAL8 8
| #define OMPI_KIND_FORTRAN_LOGICAL8 C_LONG_LONG
| #define ompi_fortran_logical8_t long long
| #define OMPI_HAVE_FORTRAN_INTEGER 1
| #define OMPI_SIZEOF_FORTRAN_INTEGER 4
| #define OMPI_ALIGNMENT_FORTRAN_INTEGER 4
| #define OMPI_KIND_FORTRAN_INTEGER C_INT
| #define ompi_fortran_integer_t int
| #define OMPI_HAVE_FORTRAN_INTEGER1 1
| #define OMPI_SIZEOF_FORTRAN_INTEGER1 1
| #define OMPI_ALIGNMENT_FORTRAN_INTEGER1 1
| #define OMPI_KIND_FORTRAN_INTEGER1 C_SIGNED_CHAR
| #define ompi_fortran_integer1_t char
| #define OMPI_HAVE_FORTRAN_INTEGER2 1
| #define OMPI_SIZEOF_FORTRAN_INTEGER2 2
| #define OMPI_ALIGNMENT_FORTRAN_INTEGER2 2
| #define OMPI_KIND_FORTRAN_INTEGER2 C_SHORT
| #define ompi_fortran_integer2_t short
| #define OMPI_HAVE_FORTRAN_INTEGER4 1
| #define OMPI_SIZEOF_FORTRAN_INTEGER4 4
| #define OMPI_ALIGNMENT_FORTRAN_INTEGER4 4
| #define OMPI_KIND_FORTRAN_INTEGER4 C_INT
| #define ompi_fortran_integer4_t int
| #define OMPI_HAVE_FORTRAN_INTEGER8 1
| #define OMPI_SIZEOF_FORTRAN_INTEGER8 8
| #define OMPI_ALIGNMENT_FORTRAN_INTEGER8 8
| #define OMPI_KIND_FORTRAN_INTEGER8 C_LONG_LONG
| #define ompi_fortran_integer8_t long long
| #define OMPI_HAVE_FORTRAN_INTEGER16 0
| #define OMPI_SIZEOF_FORTRAN_INTEGER16 16
| #define OMPI_ALIGNMENT_FORTRAN_INTEGER16 4
| #define OMPI_KIND_FORTRAN_INTEGER16 0
| #define ompi_fortran_integer16_t 
| #define OMPI_HAVE_FORTRAN_REAL 1
| #define OMPI_SIZEOF_FORTRAN_REAL 4
| #define OMPI_ALIGNMENT_FORTRAN_REAL 4
| #define OMPI_KIND_FORTRAN_REAL C_FLOAT
| #define ompi_fortran_real_t float
| #define OMPI_HAVE_FORTRAN_REAL2 0
| #define OMPI_SIZEOF_FORTRAN_REAL2 4
| #define OMPI_ALIGNMENT_FORTRAN_REAL2 4
| #define OMPI_KIND_FORTRAN_REAL2 0
| #define ompi_fortran_real2_t ompi_fortran_bogus_type_t
| #define OMPI_HAVE_FORTRAN_REAL4 1
| #define OMPI_SIZEOF_FORTRAN_REAL4 4
| #define OMPI_ALIGNMENT_FORTRAN_REAL4 4
| #define OMPI_KIND_FORTRAN_REAL4 C_FLOAT
| #define ompi_fortran_real4_t float
| #define OMPI_HAVE_FORTRAN_REAL8 1
| #define OMPI_SIZEOF_FORTRAN_REAL8 8
| #define OMPI_ALIGNMENT_FORTRAN_REAL8 8
| #define OMPI_KIND_FORTRAN_REAL8 C_DOUBLE
| #define ompi_fortran_real8_t double
| #define OMPI_HAVE_FORTRAN_REAL16 1
| #define OMPI_SIZEOF_FORTRAN_REAL16 16
| #define OMPI_ALIGNMENT_FORTRAN_REAL16 16
| #define OMPI_KIND_FORTRAN_REAL16 C_LONG_DOUBLE
| #define ompi_fortran_real16_t long double
| #define OMPI_REAL16_MATCHES_C 1
| #define OMPI_HAVE_FORTRAN_DOUBLE_PRECISION 1
| #define OMPI_SIZEOF_FORTRAN_DOUBLE_PRECISION 8
| #define OMPI_ALIGNMENT_FORTRAN_DOUBLE_PRECISION 8
| #define OMPI_KIND_FORTRAN_DOUBLE_PRECISION C_DOUBLE
| #define ompi_fortran_double_precision_t double
| #define OMPI_HAVE_FORTRAN_COMPLEX 1
| #define OMPI_SIZEOF_FORTRAN_COMPLEX 8
| #define OMPI_ALIGNMENT_FORTRAN_COMPLEX 4
| #define OMPI_KIND_FORTRAN_COMPLEX C_FLOAT_COMPLEX
| #define OMPI_HAVE_FORTRAN_COMPLEX4 0
| #define OMPI_SIZEOF_FORTRAN_COMPLEX4 4
| #define OMPI_ALIGNMENT_FORTRAN_COMPLEX4 4
| #define OMPI_KIND_FORTRAN_COMPLEX4 0
| #define OMPI_HAVE_FORTRAN_COMPLEX8 1
| #define OMPI_SIZEOF_FORTRAN_COMPLEX8 8
| #define OMPI_ALIGNMENT_FORTRAN_COMPLEX8 4
| #define OMPI_KIND_FORTRAN_COMPLEX8 C_FLOAT_COMPLEX
| #define OMPI_HAVE_FORTRAN_COMPLEX16 1
| #define OMPI_SIZEOF_FORTRAN_COMPLEX16 16
| #define OMPI_ALIGNMENT_FORTRAN_COMPLEX16 8
| #define OMPI_KIND_FORTRAN_COMPLEX16 C_DOUBLE_COMPLEX
| #define OMPI_HAVE_FORTRAN_COMPLEX32 1
| #define OMPI_SIZEOF_FORTRAN_COMPLEX32 32
| #define OMPI_ALIGNMENT_FORTRAN_COMPLEX32 16
| #define OMPI_KIND_FORTRAN_COMPLEX32 C_LONG_DOUBLE_COMPLEX
| #define OMPI_HAVE_FORTRAN_DOUBLE_COMPLEX 1
| #define OMPI_SIZEOF_FORTRAN_DOUBLE_COMPLEX 16
| #define OMPI_ALIGNMENT_FORTRAN_DOUBLE_COMPLEX 8
| #define OMPI_KIND_FORTRAN_DOUBLE_COMPLEX C_DOUBLE_COMPLEX
| #define OMPI_FORTRAN_HANDLE_MAX 2147483647
| #define OMPI_FORTRAN_VALUE_TRUE 1
| #define OMPI_FORTRAN_MAX_ARRAY_RANK 7
| #define OMPI_FC "gfortran"
| #define OMPI_FC_ABSOLUTE "/usr/bin/gfortran"
| #define OMPI_FORTRAN_BUILD_SIZEOF 1
| #define OMPI_FORTRAN_HAVE_INTERFACE 1
| #define OMPI_FORTRAN_HAVE_ISO_FORTRAN_ENV 1
| #define OMPI_FORTRAN_HAVE_STORAGE_SIZE 1
| #define OMPI_BUILD_FORTRAN_MPIFH_BINDINGS 1
| #define OMPI_FORTRAN_IGNORE_TKR_PREDECL "!GCC$ ATTRIBUTES NO_ARG_CHECK ::"
| #define OMPI_FORTRAN_IGNORE_TKR_TYPE 
| #define OMPI_BUILD_FORTRAN_USEMPI_BINDINGS 1
| #define OMPI_FORTRAN_HAVE_IGNORE_TKR 1
| #define OMPI_FORTRAN_SUBARRAYS_SUPPORTED .FALSE.
| #define OMPI_FORTRAN_NEED_WRAPPER_ROUTINES 1
| #define OMPI_FORTRAN_F08_HANDLE_SIZE 4
| #define OMPI_BUILD_FORTRAN_USEMPIF08_BINDINGS 1
| #define OMPI_FORTRAN_HAVE_F08_ASSUMED_RANK 1
| #define OMPI_FORTRAN_HAVE_BIND_C 1
| #define OMPI_FORTRAN_HAVE_ISO_C_BINDING 1
| #define OMPI_FORTRAN_HAVE_BIND_C_SUB 1
| #define OMPI_FORTRAN_HAVE_BIND_C_TYPE 1
| #define OMPI_FORTRAN_HAVE_BIND_C_TYPE_NAME 1
| #define OMPI_FORTRAN_HAVE_OPTIONAL_ARGS 1
| #define OMPI_FORTRAN_HAVE_PRIVATE 1
| #define OMPI_FORTRAN_HAVE_PROTECTED 1
| #define OMPI_FORTRAN_HAVE_ABSTRACT 1
| #define OMPI_FORTRAN_HAVE_ASYNCHRONOUS 1
| #define OMPI_FORTRAN_HAVE_PROCEDURE 1
| #define OMPI_FORTRAN_HAVE_C_FUNLOC 1
| #define HAVE_ALLOCA_H 1
| #define HAVE_ARPA_INET_H 1
| #define HAVE_DIRENT_H 1
| #define HAVE_DLFCN_H 1
| #define HAVE_ERR_H 1
| #define HAVE_FCNTL_H 1
| #define HAVE_GRP_H 1
| #define HAVE_INTTYPES_H 1
| /* end confdefs.h.  */
| #include <stdio.h>
| #ifdef HAVE_SYS_TYPES_H
| # include <sys/types.h>
| #endif
| #ifdef HAVE_SYS_STAT_H
| # include <sys/stat.h>
| #endif
| #ifdef STDC_HEADERS
| # include <stdlib.h>
| # include <stddef.h>
| #else
| # ifdef HAVE_STDLIB_H
| #  include <stdlib.h>
| # endif
| #endif
| #ifdef HAVE_STRING_H
| # if !defined STDC_HEADERS && defined HAVE_MEMORY_H
| #  include <memory.h>
| # endif
| # include <string.h>
| #endif
| #ifdef HAVE_STRINGS_H
| # include <strings.h>
| #endif
| #ifdef HAVE_INTTYPES_H
| # include <inttypes.h>
| #endif
| #ifdef HAVE_STDINT_H
| # include <stdint.h>
| #endif
| #ifdef HAVE_UNISTD_H
| # include <unistd.h>
| #endif
| #include <libgen.h>
configure:59873: result: no
configure:59873: checking libgen.h presence
configure:59873: gcc -E  conftest.c
configure:59873: $? = 0
configure:59873: result: yes
configure:59873: WARNING: libgen.h: present but cannot be compiled
configure:59873: WARNING: libgen.h:     check for missing prerequisite headers?
configure:59873: WARNING: libgen.h: see the Autoconf documentation
configure:59873: WARNING: libgen.h:     section "Present But Cannot Be Compiled"
configure:59873: WARNING: libgen.h: proceeding with the compiler's result
configure:59873: checking for libgen.h
configure:59873: result: no

[-- Attachment #3: Type: text/plain, Size: 218 bytes --]

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: basename conflicting definitions
  2015-04-21  8:44   ` Marco Atzeri
@ 2015-04-21  9:21     ` Corinna Vinschen
  0 siblings, 0 replies; 4+ messages in thread
From: Corinna Vinschen @ 2015-04-21  9:21 UTC (permalink / raw)
  To: cygwin

[-- Attachment #1: Type: text/plain, Size: 2516 bytes --]

On Apr 21 10:44, Marco Atzeri wrote:
> 
> 
> On 4/21/2015 9:38 AM, Corinna Vinschen wrote:
> >Hi Marco,
> >
> >On Apr 21 07:31, Marco Atzeri wrote:
> >>Hi Corinna,
> >>building open-mpi on
> >>
> >>  $ uname -svrm
> >>CYGWIN_NT-6.1 2.0.0(0.287/5/3) 2015-04-17 12:08 x86_64
> >>
> >>I see a conflict from 2 header of
> >>
> >>$ cygcheck -f /usr/include/libgen.h /usr/include/string.h
> >>cygwin-devel-2.0.0-0.7
> >>cygwin-devel-2.0.0-0.7
> >>
> >>
> >>configure:59845: gcc -std=gnu99 -c -DNDEBUG -ggdb -O2 -pipe
> >>-Wimplicit-function-declaration -fdebug-prefix-map=/pub/devel/openmpi/openmpi-1.8.5pre2-1.x86_64/build=/usr/src/debug/openmpi-1.8.5pre2-1 -fdebug-prefix-map=/pub/devel/openmpi/openmpi-1.8.5pre2-1.x86_64/src/openmpi-1.8.5pre2=/usr/src/debug/openmpi-1.8.5pre2-1
> >>-finline-functions -fno-strict-aliasing -fexceptions  conftest.c >&5
> >>In file included from conftest.c:429:0:
> >>/usr/include/libgen.h:18:14: error: conflicting types for 'basename'
> >>  extern char *basename (char *path);
> >>               ^
> >>In file included from /usr/include/stdio.h:29:0,
> >>                  from conftest.c:396:
> >>/usr/include/string.h:172:7: note: previous declaration of 'basename' was
> >>here
> >>  char *_EXFUN(basename,(const char *))
> >>        ^
> >
> >That's Yaakov's patch to introduce GNU basename with the different
> >behaviour depending whether you include via libgen.h or via #define
> >_GNU_SOURCE, string,h.
> >
> >Which one is it here?  The conflict shouldn't occur, one of them should
> >have been filtered out based on the order.
> >
> >
> >Corinna
> >
> 
> 
> libgen.h check
> 
> AC_CHECK_HEADERS([alloca.h aio.h arpa/inet.h dirent.h \
>     dlfcn.h execinfo.h err.h fcntl.h grp.h inttypes.h libgen.h
>    ....
> 
> attached extract from the config.log

Yep, easily reproducible.  This doesn't occur on Linux because the
preprocessor guarding always prefers the POSIX version from libgen.h
over the GNU version in string.h  This needs a change, but it's a
bit tricky, given that our functions are defined upside down from
the glibc versions:

          GNU              POSIX

GLIBC:    basename         __xpg_basename
Newlib:   __gnu_basename   basename

This complicates getting the same result independent of the inclusion
order a bit...


Thanks,
Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

[-- Attachment #2: Type: application/pgp-signature, Size: 819 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-04-21  9:21 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-04-21  5:31 basename conflicting definitions Marco Atzeri
2015-04-21  7:38 ` Corinna Vinschen
2015-04-21  8:44   ` Marco Atzeri
2015-04-21  9:21     ` Corinna Vinschen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).