.
authorJim Meyering <jim@meyering.net>
Mon, 16 Jun 1997 16:45:15 +0000 (16:45 +0000)
committerJim Meyering <jim@meyering.net>
Mon, 16 Jun 1997 16:45:15 +0000 (16:45 +0000)
m4/putenv.m4 [new file with mode: 0644]

diff --git a/m4/putenv.m4 b/m4/putenv.m4
new file mode 100644 (file)
index 0000000..733a496
--- /dev/null
@@ -0,0 +1,40 @@
+#serial 1
+
+dnl From Jim Meyering.
+dnl If you use this macro in a package, you should
+dnl add the following two lines to acconfig.h:
+dnl  /* Define to rpl_putenv if the replacement function should be used.  */
+dnl  #undef putenv
+dnl
+
+AC_DEFUN(jm_FUNC_PUTENV,
+[AC_CACHE_CHECK([for SVID conformant putenv], jm_cv_func_svid_putenv,
+  [AC_TRY_RUN([
+    int
+    main ()
+    {
+      /* Put it in env.  */
+      if (putenv ("CONFTEST_putenv=val"))
+        exit (1);
+
+      /* Try to remove it.  */
+      if (putenv ("CONFTEST_putenv"))
+        exit (1);
+
+      /* Make sure it was deleted.  */
+      if (getenv ("CONFTEST_putenv") != 0)
+        exit (1);
+
+      exit (0);
+    }
+             ],
+            jm_cv_func_svid_putenv=yes,
+            jm_cv_func_svid_putenv=no,
+            dnl When crosscompiling, assume putenv is broken.
+            jm_cv_func_svid_putenv=no)
+  ])
+  if test $jm_cv_func_svid_putenv = no; then
+    LIBOBJS="$LIBOBJS putenv.o"
+    AC_DEFINE_UNQUOTED(putenv, rpl_putenv)
+  fi
+])