Files
Mike Frysinger 7b3dd7b9b3 sim: testsuite: fix cris stat3 in diff setups
This test uses the test itself as an input to stating regular files.
This gets funky though: when we run check in parallel, the output
object dir is the subdir that matches the .exp file.  When we run
with -j1, the output object dir is the sim builddir itself.

The old test would append argv[0] to find the file, while the new
test uses basename on it.  Each method works in only one of the
aforementioned build scenarios.  Rather than complicate this any
more, switch to a different file that we know will always exist:
the Makefile.
2022-11-04 01:42:41 +07:00

32 lines
660 B
C

/* Simulator options:
#sim: --sysroot=$pwd
*/
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main (int argc, char *argv[])
{
/* Pick a regular file we know will always be in the sim builddir. */
char path[1024] = "/Makefile";
struct stat buf;
if (stat (".", &buf) != 0
|| !S_ISDIR (buf.st_mode))
{
fprintf (stderr, "cwd is not a directory\n");
return 1;
}
if (stat (path, &buf) != 0
|| !S_ISREG (buf.st_mode))
{
fprintf (stderr, "%s: is not a regular file\n", path);
return 1;
}
printf ("pass\n");
exit (0);
}