This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] fix include files to support non-GNU compilers


On 01 Sep 2014 19:20, Mikulas Patocka wrote:
> OK. Here I'm sending version 3 of the patch.

please add proper ChangeLog entries for each file update

> --- glibc.orig/libio/stdio.h
> +++ glibc/libio/stdio.h
>
> +# if defined __GNUC__ && __GNUC__ >= 3

you need to use __GNUC_PREREQ (3, 0)


> --- glibc.orig/include/limits.h
> +++ glibc/include/limits.h
>
> -#  define LLONG_MAX	__LONG_LONG_MAX__
> +#  ifdef __LONG_LONG_MAX__
> +#   define LLONG_MAX	__LONG_LONG_MAX__
> +#  else
> +#   define LLONG_MAX	9223372036854775807LL
> +#  endif

OK

> --- glibc.orig/math/math.h
> +++ glibc/math/math.h
>
>  #   undef __MATHDECL_1
> -#   define __MATHDECL_2(type, function,suffix, args, alias) \
> +#   ifdef __REDIRECT_NTH
> +#    define __MATHDECL_2(type, function,suffix, args, alias) \
>    extern type __REDIRECT_NTH(__MATH_PRECNAME(function,suffix), \
>  			     args, alias)
> +#   else
> +#    define __MATHDECL_2(type, function,suffix, args, alias) \
> +		struct __empty__declaration__
> +#   endif
>  #   define __MATHDECL_1(type, function,suffix, args) \
>    __MATHDECL_2(type, function,suffix, args, __CONCAT(function,suffix))

i don't think this is correct.  i think you need to bracket the whole thing by 
an ifdef __REDIRECT_NTH check.  Joseph would know best here though.

> --- glibc.orig/misc/sys/cdefs.h
> +++ glibc/misc/sys/cdefs.h
>
>  # define __LDBL_REDIR1_NTH(name, proto, alias) name proto __THROW
>  # define __LDBL_REDIR_NTH(name, proto) name proto __THROW
>  # define __LDBL_REDIR_DECL(name)
> +# define __LDBL_REDIR1_DECL(name, alias)
>  # ifdef __REDIRECT
>  #  define __REDIRECT_LDBL(name, proto, alias) __REDIRECT (name, proto, alias)
>  #  define __REDIRECT_NTH_LDBL(name, proto, alias) \

OK (looks obvious)

> --- glibc.orig/wcsmbs/bits/wchar-ldbl.h
> +++ glibc/wcsmbs/bits/wchar-ldbl.h

dropping trailing semicolons here looks like an obvious fix

> --- glibc.orig/bits/wchar.h
> +++ glibc/bits/wchar.h
>
>  #ifdef __WCHAR_MAX__
>  # define __WCHAR_MAX	__WCHAR_MAX__
> +#elif defined __DECC
> +# define __WCHAR_MAX	0x7fffffff
>  #elif L'\0' - 1 > 0
>  # define __WCHAR_MAX	(0xffffffffu + L'\0')

the issue is that L'\0' doesn't work on your compiler ?  should we have some 
standards based check here instead of using __DECC ?


> --- glibc.orig/sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h
> +++ glibc/sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h
> --- glibc.orig/sysdeps/unix/sysv/linux/alpha/bits/semaphore.h
> +++ glibc/sysdeps/unix/sysv/linux/alpha/bits/semaphore.h
> --- glibc.orig/inet/netinet/in.h
> +++ glibc/inet/netinet/in.h

looks fine to rename __align to __glibc_align
-mike

Attachment: signature.asc
Description: Digital signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]