mirror of
https://github.com/bminor/binutils-gdb.git
synced 2025-11-16 12:34:43 +00:00
PR29915, bfdio.c does not compile with mingw.org's MinGW
PR 29915 * configure.ac: Add AC_CHECK_DECLS test ___lc_codepage_func. * configure: Regenerate. * config.in: Regenerate. * bfdio.c (___lc_codepage_func): Move declaration to.. (_bfd_real_fopen): ..here, and use !HAVE_DECL____LC_CODEPAGE_FUNC.
This commit is contained in:
11
bfd/bfdio.c
11
bfd/bfdio.c
@@ -31,11 +31,6 @@
|
|||||||
#include <locale.h>
|
#include <locale.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(__MINGW64_VERSION_MAJOR) && __MINGW64_VERSION_MAJOR < 9
|
|
||||||
/* This prototype was added to locale.h in version 9.0 of MinGW-w64. */
|
|
||||||
_CRTIMP unsigned int __cdecl ___lc_codepage_func(void);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef S_IXUSR
|
#ifndef S_IXUSR
|
||||||
#define S_IXUSR 0100 /* Execute by owner. */
|
#define S_IXUSR 0100 /* Execute by owner. */
|
||||||
#endif
|
#endif
|
||||||
@@ -127,7 +122,11 @@ _bfd_real_fopen (const char *filename, const char *modes)
|
|||||||
const wchar_t prefix[] = L"\\\\?\\";
|
const wchar_t prefix[] = L"\\\\?\\";
|
||||||
const size_t partPathLen = strlen (filename) + 1;
|
const size_t partPathLen = strlen (filename) + 1;
|
||||||
#ifdef __MINGW32__
|
#ifdef __MINGW32__
|
||||||
const unsigned int cp = ___lc_codepage_func();
|
#if !HAVE_DECL____LC_CODEPAGE_FUNC
|
||||||
|
/* This prototype was added to locale.h in version 9.0 of MinGW-w64. */
|
||||||
|
_CRTIMP unsigned int __cdecl ___lc_codepage_func (void);
|
||||||
|
#endif
|
||||||
|
const unsigned int cp = ___lc_codepage_func ();
|
||||||
#else
|
#else
|
||||||
const unsigned int cp = CP_UTF8;
|
const unsigned int cp = CP_UTF8;
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
@@ -64,6 +64,10 @@
|
|||||||
don't. */
|
don't. */
|
||||||
#undef HAVE_DECL_VASPRINTF
|
#undef HAVE_DECL_VASPRINTF
|
||||||
|
|
||||||
|
/* Define to 1 if you have the declaration of `___lc_codepage_func', and to 0
|
||||||
|
if you don't. */
|
||||||
|
#undef HAVE_DECL____LC_CODEPAGE_FUNC
|
||||||
|
|
||||||
/* Define to 1 if you have the <dlfcn.h> header file. */
|
/* Define to 1 if you have the <dlfcn.h> header file. */
|
||||||
#undef HAVE_DLFCN_H
|
#undef HAVE_DLFCN_H
|
||||||
|
|
||||||
|
|||||||
12
bfd/configure
vendored
12
bfd/configure
vendored
@@ -13006,6 +13006,18 @@ cat >>confdefs.h <<_ACEOF
|
|||||||
#define HAVE_DECL_STRNLEN $ac_have_decl
|
#define HAVE_DECL_STRNLEN $ac_have_decl
|
||||||
_ACEOF
|
_ACEOF
|
||||||
|
|
||||||
|
ac_fn_c_check_decl "$LINENO" "___lc_codepage_func" "ac_cv_have_decl____lc_codepage_func" "#include <locale.h>
|
||||||
|
"
|
||||||
|
if test "x$ac_cv_have_decl____lc_codepage_func" = xyes; then :
|
||||||
|
ac_have_decl=1
|
||||||
|
else
|
||||||
|
ac_have_decl=0
|
||||||
|
fi
|
||||||
|
|
||||||
|
cat >>confdefs.h <<_ACEOF
|
||||||
|
#define HAVE_DECL____LC_CODEPAGE_FUNC $ac_have_decl
|
||||||
|
_ACEOF
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
case "${host}" in
|
case "${host}" in
|
||||||
|
|||||||
@@ -227,6 +227,7 @@ AC_CHECK_FUNCS(fcntl fdopen fileno fls getgid getpagesize getrlimit getuid \
|
|||||||
sysconf)
|
sysconf)
|
||||||
|
|
||||||
AC_CHECK_DECLS([basename, ffs, stpcpy, asprintf, vasprintf, strnlen])
|
AC_CHECK_DECLS([basename, ffs, stpcpy, asprintf, vasprintf, strnlen])
|
||||||
|
AC_CHECK_DECLS([___lc_codepage_func], [], [], [[#include <locale.h>]])
|
||||||
|
|
||||||
BFD_BINARY_FOPEN
|
BFD_BINARY_FOPEN
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user