• Eli Zaretskii's avatar
    Fix MS-Windows build with MSVC compiler. · 8c9afb46
    Eli Zaretskii authored
    Parts of the changes by Fabrice Popineau  <fabrice.popineau@supelec.fr>.
    
     lib-src/makefile.w32-in (LOCAL_FLAGS): Add $(EMACS_EXTRA_C_FLAGS).
     lib-src/emacsclient.c (main) <environ>: Remove declaration, already
     pulled in by unistd.h on Posix hosts and stdlib.h on MS-Windows.
     nt/inc/stdint.h (uint32_t, uint64_t) [_WIN64]: New typedefs.
     (UINT64_MAX) [_WIN64]: Fix definition.
     (uintmax_t, intmax_t): Fix definitions.
     nt/inc/inttypes.h (strtoumax, strtoimax) [!__MINGW32__]: Provide
     correct definitions.
     nt/config.nt (HAVE_DECL_STRTOLL): Define.
     (va_copy) [_WIN64]: Provide a better definition.
     src/s/ms-w32.h (utimbuf) [_MSC_VER]: Don't define.
     (snprintf) [_MSC_VER]: Redirect to _snprintf.
     (strtoll) [_MSC_VER]: Redirect to _strtoi64.
     (malloc, free, realloc, calloc): Redirect to e_* only when
     compiling Emacs.
     src/lisp.h (GCTYPEBITS): Move before first use.
     (ALIGN_GCTYPEBITS) [_MSC_VER]: Define.
     (DECL_ALIGN) [_MSC_VER]: Use it, as MSVC doesn't like bit ops in
     this macro definition.
     (tzname): Redirect to _tzname for all values of _MSC_VER.
    
    Fixes: debbugs:9960
    8c9afb46
lisp.h 131 KB