summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBob Friesenhahn <bfriesen@simple.dallas.tx.us>2020-01-26 19:17:23 -0600
committerBob Friesenhahn <bfriesen@simple.dallas.tx.us>2020-01-26 19:17:23 -0600
commit550f8708d25b913333052cb5c6d3d75f1afdff39 (patch)
tree2a322cde4e15fd34413bc331818169d27e140ec6
parent58b16f47a82323c05ec81f0a821700beb8c2c5a0 (diff)
downloadlibtiff-git-550f8708d25b913333052cb5c6d3d75f1afdff39.tar.gz
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.
-rw-r--r--libtiff/tif_config.vc.h4
-rw-r--r--nmake.opt7
-rw-r--r--port/libport.h8
3 files changed, 10 insertions, 9 deletions
diff --git a/libtiff/tif_config.vc.h b/libtiff/tif_config.vc.h
index 78f3b204..939594f8 100644
--- a/libtiff/tif_config.vc.h
+++ b/libtiff/tif_config.vc.h
@@ -116,7 +116,9 @@
# else
# define HAVE_SNPRINTF 1
# 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_STRTOULL 1
# endif
diff --git a/nmake.opt b/nmake.opt
index d59be640..79b2fbbb 100644
--- a/nmake.opt
+++ b/nmake.opt
@@ -109,12 +109,11 @@ CHECK_JPEG_YCBCR_SUBSAMPLING = 1
####################### 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_STRTOUL = 1
-
-# Users of MSVC 19.20 ("Visual Studio 2019") and later should set these to 1
HAVE_STRTOLL = 0
HAVE_STRTOULL = 0
diff --git a/port/libport.h b/port/libport.h
index 24e559b6..cb302ef4 100644
--- a/port/libport.h
+++ b/port/libport.h
@@ -36,16 +36,16 @@ int strcasecmp(const char *s1, const char *s2);
# define HAVE_GETOPT 1
#endif
-#if defined(HAVE_STRTOL)
+#if !defined(HAVE_STRTOL)
long strtol(const char *nptr, char **endptr, int base);
#endif
-#if defined(HAVE_STRTOLL)
+#if !defined(HAVE_STRTOLL)
long long strtoll(const char *nptr, char **endptr, int base);
#endif
-#if defined(HAVE_STRTOUL)
+#if !defined(HAVE_STRTOUL)
unsigned long strtoul(const char *nptr, char **endptr, int base);
#endif
-#if defined(HAVE_STRTOULL)
+#if !defined(HAVE_STRTOULL)
unsigned long long strtoull(const char *nptr, char **endptr, int base);
#endif