/* Compile a Java program.
- Copyright (C) 2001-2003, 2006 Free Software Foundation, Inc.
+ Copyright (C) 2001-2003, 2006-2007 Free Software Foundation, Inc.
Written by Bruno Haible <haible@clisp.cons.org>, 2001.
This program is free software; you can redistribute it and/or modify
along with this program; if not, write to the Free Software Foundation,
Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
-#ifdef HAVE_CONFIG_H
-# include <config.h>
-#endif
+#include <config.h>
#include <alloca.h>
/* Specification. */
#include "clean-temp.h"
#include "error.h"
#include "xvasprintf.h"
-#include "strstr.h"
+#include "c-strstr.h"
#include "gettext.h"
#define _(str) gettext (str)
+/* The results of open() in this file are not used with fchdir,
+ therefore save some unnecessary work in fchdir.c. */
+#undef open
+#undef close
+
/* Survey of Java compilers.
FILE *fp;
register_temp_file (tmpdir, file_name);
- fp = fopen (file_name, "w");
+ fp = fopen_temp (file_name, "w");
if (fp == NULL)
{
error (0, errno, _("failed to create \"%s\""), file_name);
return true;
}
fputs (contents, fp);
- if (fwriteerror (fp))
+ if (fwriteerror_temp (fp))
{
error (0, errno, _("error while writing \"%s\" file"), file_name);
return true;
fclose (fp);
goto failed;
}
- envjavac_gcj = (strstr (line, "gcj") != NULL);
+ /* It is safe to call c_strstr() instead of strstr() here; see the
+ comments in c-strstr.h. */
+ envjavac_gcj = (c_strstr (line, "gcj") != NULL);
fclose (fp);