Fix nmake build mistakes in my last commit:
tif_config.vc.h: Always define HAVE_STRTOL/HAVE_STRTOUL. Define HAVE_STRTOLL/HAVE_STRTOULL if _MSC_VER >= 1900. nmake.opt: Provide defaults suitable for MSVC prior to 14.0. libport.h: The sense of the pre-processor logic was inverted from what it should be. The intention is to only provide the prototype if the function is missing.
This commit is contained in:
parent
58b16f47a8
commit
550f8708d2
@ -116,7 +116,9 @@
|
|||||||
# else
|
# else
|
||||||
# define HAVE_SNPRINTF 1
|
# define HAVE_SNPRINTF 1
|
||||||
# endif
|
# endif
|
||||||
# if _MSC_VER >= 1920 /* Visual Studio 2019 has strtoll/strtoull */
|
# define HAVE_STRTOL 1
|
||||||
|
# define HAVE_STRTOUL 1
|
||||||
|
# if _MSC_VER >= 1900 /* Visual Studio 2015 added strtoll/strtoull */
|
||||||
# define HAVE_STRTOLL 1
|
# define HAVE_STRTOLL 1
|
||||||
# define HAVE_STRTOULL 1
|
# define HAVE_STRTOULL 1
|
||||||
# endif
|
# endif
|
||||||
|
@ -109,12 +109,11 @@ CHECK_JPEG_YCBCR_SUBSAMPLING = 1
|
|||||||
####################### Compiler related options. #######################
|
####################### Compiler related options. #######################
|
||||||
#
|
#
|
||||||
|
|
||||||
# If your MSVC does not provide strtol() and strtoul(), then these
|
|
||||||
# should be set to 0.
|
# Indicate if the compiler provides strtol/strtoul/strtoll/strtoull.
|
||||||
|
# Users of MSVC++ 14.0 ("Visual Studio 2015") and later should set all of these to 1
|
||||||
HAVE_STRTOL = 1
|
HAVE_STRTOL = 1
|
||||||
HAVE_STRTOUL = 1
|
HAVE_STRTOUL = 1
|
||||||
|
|
||||||
# Users of MSVC 19.20 ("Visual Studio 2019") and later should set these to 1
|
|
||||||
HAVE_STRTOLL = 0
|
HAVE_STRTOLL = 0
|
||||||
HAVE_STRTOULL = 0
|
HAVE_STRTOULL = 0
|
||||||
|
|
||||||
|
@ -36,16 +36,16 @@ int strcasecmp(const char *s1, const char *s2);
|
|||||||
# define HAVE_GETOPT 1
|
# define HAVE_GETOPT 1
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(HAVE_STRTOL)
|
#if !defined(HAVE_STRTOL)
|
||||||
long strtol(const char *nptr, char **endptr, int base);
|
long strtol(const char *nptr, char **endptr, int base);
|
||||||
#endif
|
#endif
|
||||||
#if defined(HAVE_STRTOLL)
|
#if !defined(HAVE_STRTOLL)
|
||||||
long long strtoll(const char *nptr, char **endptr, int base);
|
long long strtoll(const char *nptr, char **endptr, int base);
|
||||||
#endif
|
#endif
|
||||||
#if defined(HAVE_STRTOUL)
|
#if !defined(HAVE_STRTOUL)
|
||||||
unsigned long strtoul(const char *nptr, char **endptr, int base);
|
unsigned long strtoul(const char *nptr, char **endptr, int base);
|
||||||
#endif
|
#endif
|
||||||
#if defined(HAVE_STRTOULL)
|
#if !defined(HAVE_STRTOULL)
|
||||||
unsigned long long strtoull(const char *nptr, char **endptr, int base);
|
unsigned long long strtoull(const char *nptr, char **endptr, int base);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user