tools: use _putenv_s() instead of setenv() on Windows.
authorJehan <jehan@girinstud.io>
Thu, 27 Jan 2022 16:39:49 +0000 (17:39 +0100)
committerJehan <jehan@girinstud.io>
Thu, 27 Jan 2022 16:39:49 +0000 (17:39 +0100)
setenv() does not exist on Windows API, hence babl tools fail to build.
Fixing the issue by using an alternative Windows API.

tools/babl-benchmark.c
tools/babl-lut-verify.c
tools/babl-verify.c

index d12dbb59e79b57a6e25ceb6117f7ca6ac9dc9055..32d66c2d296c979ecf876a07e162093f46d468e1 100644 (file)
 #define random  rand
 #endif
 
+#ifdef _WIN32
+/* On Windows setenv() does not exist, using _putenv_s() instead. The overwrite
+ * arg is ignored (i.e. same as always 1).
+ */
+#define setenv(name,value,overwrite) _putenv_s(name, value)
+#endif
+
 int ITERATIONS = 4;
 #define  N_PIXELS (1024*1024)  // a too small batch makes the test set live
                                // in l2 cache skewing results
index 25a8abc40c4c435f978deadec2e74bf0934a0be5..c857edd9d0c47b56ad81aed598659158f066ced9 100644 (file)
 #define random rand
 #endif
 
+#ifdef _WIN32
+/* On Windows setenv() does not exist, using _putenv_s() instead. The overwrite
+ * arg is ignored (i.e. same as always 1).
+ */
+#define setenv(name,value,overwrite) _putenv_s(name, value)
+#endif
+
 static double
 test_generic (const Babl *source, const Babl *dest)
 {
index 75aaa9ccf95d9bcdad21fc6a1b06bce2e833d0e7..b76f707c8d3af764c5a33610d960d486966b900b 100644 (file)
@@ -8,6 +8,13 @@
 #define SPACE1 babl_space("sRGB")
 //#define SPACE2 babl_space("Apple")
 
+#ifdef _WIN32
+/* On Windows setenv() does not exist, using _putenv_s() instead. The overwrite
+ * arg is ignored (i.e. same as always 1).
+ */
+#define setenv(name,value,overwrite) _putenv_s(name, value)
+#endif
+
 int
 file_get_contents (const char  *path,
                          char       **contents,