Index: testsuites/fstests/ChangeLog
===================================================================
--- testsuites/fstests/ChangeLog	(revision 858e013f5aa4f41bc6da7b22368044b4bae7d7ed)
+++ testsuites/fstests/ChangeLog	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -1,2 +1,36 @@
+2011-08-01	Xiang Cui <medivhc@gmail.com>
+
+	* imfs_fslink/Makefile.am, imfs_fssymlink/Makefile.am,
+	mimfs_fslink/Makefile.am, mimfs_fssymlink/Makefile.am,
+	mrfs_fslink/Makefile.am, mrfs_fssymlink/Makefile.am,
+	mrfs_support/fs_config.h: Correcting from previous commit of
+	incorrect tarball.
+	* fserror/fserror.doc, fserror/test.c, fspatheval/patheval.doc,
+	fspatheval/test.c, fspermission/fspermission.doc,
+	fspermission/test.c, fsrdwr/fsrdwr.doc, fsrdwr/init.c,
+	fstime/fstime.doc, fstime/test.c, imfs_fserror/.cvsignore,
+	imfs_fserror/Makefile.am, imfs_fslink/.cvsignore,
+	imfs_fspatheval/.cvsignore, imfs_fspatheval/Makefile.am,
+	imfs_fspermission/.cvsignore, imfs_fspermission/Makefile.am,
+	imfs_fsrdwr/.cvsignore, imfs_fsrdwr/Makefile.am,
+	imfs_fssymlink/.cvsignore, imfs_fstime/.cvsignore,
+	imfs_fstime/Makefile.am, imfs_support/fs_supprot.h,
+	mdosfs_fserror/.cvsignore, mdosfs_fserror/Makefile.am,
+	mdosfs_fspatheval/.cvsignore, mdosfs_fspatheval/Makefile.am,
+	mdosfs_fsrdwr/.cvsignore, mdosfs_fsrdwr/Makefile.am,
+	mdosfs_fstime/.cvsignore, mdosfs_fstime/Makefile.am,
+	mimfs_fserror/.cvsignore, mimfs_fserror/Makefile.am,
+	mimfs_fslink/.cvsignore, mimfs_fspatheval/.cvsignore,
+	mimfs_fspatheval/Makefile.am, mimfs_fspermission/.cvsignore,
+	mimfs_fspermission/Makefile.am, mimfs_fsrdwr/.cvsignore,
+	mimfs_fsrdwr/Makefile.am, mimfs_fssymlink/.cvsignore,
+	mimfs_fstime/.cvsignore, mimfs_fstime/Makefile.am,
+	mrfs_fserror/.cvsignore, mrfs_fserror/Makefile.am,
+	mrfs_fslink/.cvsignore, mrfs_fspatheval/.cvsignore,
+	mrfs_fspatheval/Makefile.am, mrfs_fspermission/.cvsignore,
+	mrfs_fspermission/Makefile.am, mrfs_fsrdwr/.cvsignore,
+	mrfs_fsrdwr/Makefile.am, mrfs_fssymlink/.cvsignore,
+	mrfs_fstime/.cvsignore, mrfs_fstime/Makefile.am: New files.
+
 2011-08-01	Xiang Cui <medivhc@gmail.com>
 
Index: testsuites/fstests/fserror/test.c
===================================================================
--- testsuites/fstests/fserror/test.c	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/fserror/test.c	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,372 @@
+/*
+ *  COPYRIGHT (c) 1989-2011.
+ *  On-Line Applications Research Corporation (OAR).
+ *
+ *  The license and distribution terms for this file may be
+ *  found in the file LICENSE in this distribution or at
+ *  http://www.rtems.com/license/LICENSE.
+ *
+ *  $Id Exp $
+ */
+
+#include <sys/stat.h>
+#include <limits.h>
+#include <fcntl.h>
+#include <errno.h>
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+#include "fstest.h"
+
+void open_mkdir_error (void)
+{
+  int fd;
+  int status;
+  char *name01 = "name01";
+  char *name02 = "name02";
+  char *name03 = "name03";
+
+  char name[20];
+
+  mode_t mode = S_IRWXU | S_IRWXG | S_IRWXO;
+
+  const char *wd = __func__;
+
+  /*
+   * Create a new directory and change the current directory to  this
+   */
+  status = mkdir (wd, mode);
+  rtems_test_assert (status == 0);
+  status = chdir (wd);
+  rtems_test_assert (status == 0);
+
+
+  /*
+   * Create a file and a directory for test.
+   */
+  fd = creat (name01, mode);
+  status = close (fd);
+  rtems_test_assert (status == 0);
+  status = mkdir (name02, mode);
+  rtems_test_assert (status == 0);
+
+  /*
+   * O_CREAT and O_EXCL are set, and the named file exists.
+   */
+  EXPECT_ERROR (EEXIST, open, name01, O_CREAT | O_EXCL);
+
+  EXPECT_ERROR (EEXIST, mkdir, name01, mode);
+  /*
+   * The named file is a directory
+   * and oflag includes O_WRONLY or O_RDWR.
+   */
+  EXPECT_ERROR (EISDIR, open, name02, O_WRONLY);
+  EXPECT_ERROR (EISDIR, open, name02, O_RDWR);
+
+  /*
+   * O_CREAT is not set and the named file does not exist
+   * or O_CREAT is set and either the path prefix does not exist or
+   * the path argument points to an empty string.  
+   */
+
+  sprintf (name, "%s/%s", name03, name02);
+  EXPECT_ERROR (ENOENT, open, name, O_WRONLY);
+  EXPECT_ERROR (ENOENT, open, "", O_WRONLY);
+  EXPECT_ERROR (ENOENT, open, name03, O_WRONLY);
+
+  EXPECT_ERROR (ENOENT, mkdir, name, mode);
+  EXPECT_ERROR (ENOENT, mkdir, "", mode);
+
+  /*
+   * A component of the path prefix is not a directory.
+   */
+
+  sprintf (name, "%s/%s", name01, name02);
+  EXPECT_ERROR (ENOTDIR, open, name, O_WRONLY);
+
+  EXPECT_ERROR (ENOTDIR, mkdir, name, mode);
+  /*
+   * The fildes argument is not a valid file descriptor.
+   */
+  EXPECT_ERROR (EBADF, close, -1);
+  EXPECT_ERROR (EBADF, close, 100);
+
+  /*
+   * Go back to parent directory
+   */
+  status = chdir ("..");
+  rtems_test_assert (status == 0);
+
+}
+
+void rename_error (void)
+{
+
+  int fd;
+  int status;
+  char *name01 = "name01";
+  char *name02 = "name02";
+  char *name03 = "name03";
+  char *nonexistence = "name04";
+
+  char name[20];
+
+  mode_t mode = S_IRWXU | S_IRWXG | S_IRWXO;
+  const char *wd = __func__;
+
+  /*
+   *Create a new directory and change the current directory to  this
+   */
+
+  status = mkdir (wd, mode);
+  rtems_test_assert (status == 0);
+  status = chdir (wd);
+  rtems_test_assert (status == 0);
+
+
+  /*
+   * Create a new directory and a new directory in it 
+   */
+
+  status = mkdir (name01, mode);
+  rtems_test_assert (status == 0);
+  status = mkdir (name02, mode);
+  rtems_test_assert (status == 0);
+  sprintf (name, "%s/%s", name01, name03);
+  status = mkdir (name, mode);
+  rtems_test_assert (status == 0);
+
+  /*
+   * The link named by new is a directory that is
+   *  not an empty directory.
+   */
+  status = rename (name02, name01);
+  rtems_test_assert (status != 0);
+  rtems_test_assert (errno == EEXIST || errno == ENOTEMPTY);
+  /*
+   * The new directory pathname contains a path prefix 
+   *  that names the old directory.
+   */
+  EXPECT_ERROR (EINVAL, rename, name01, name);
+  /*
+   * The new argument points to a directory and 
+   *  the old argument points to a file that is not a directory.
+   */
+  fd = creat (name03, mode);
+  status = close (fd);
+  rtems_test_assert (status == 0);
+  EXPECT_ERROR (EISDIR, rename, name03, name02);
+
+  /*
+   * The link named by old does not name an existing file,
+   *    or either old or new points to an empty string.
+   */
+
+  EXPECT_ERROR (ENOENT, rename, nonexistence, name01);
+  EXPECT_ERROR (ENOENT, rename, "", name01);
+  EXPECT_ERROR (ENOENT, rename, name01, "");
+
+  /*
+   * A component of either path prefix is not a directory;
+   * or the old argument names a directory and new argument names
+   *  a non-directory file.
+   */
+
+  sprintf (name, "%s/%s", name03, name01);
+  EXPECT_ERROR (ENOTDIR, rename, name, name03);
+  EXPECT_ERROR (ENOTDIR, rename, name03, name);
+  EXPECT_ERROR (ENOTDIR, rename, name02, name03);
+
+  /*
+   * Go back to parent directory
+   */
+  status = chdir ("..");
+  rtems_test_assert (status == 0);
+}
+
+void truncate_error (void)
+{
+
+  int fd;
+  int status;
+  char *file = "name";
+
+  mode_t mode = S_IRWXU | S_IRWXG | S_IRWXO;
+
+  const char *wd = __func__;
+
+  /*
+   *Create a new directory and change the current directory to  this
+   */
+  status = mkdir (wd, mode);
+  rtems_test_assert (status == 0);
+  status = chdir (wd);
+  rtems_test_assert (status == 0);
+  /*
+   * Create a file 
+   */
+  fd = creat (file, mode);
+  status = close (fd);
+  rtems_test_assert (status == 0);
+
+
+  /*
+   * The length argument was less than 0.
+   */
+  EXPECT_ERROR (EINVAL, truncate, file, -1);
+
+  /*
+   * Go back to parent directory
+   */
+  status = chdir ("..");
+  rtems_test_assert (status == 0);
+}
+
+
+void rmdir_unlink_error (void)
+{
+  int status;
+  int fd;
+  mode_t mode = S_IRWXU | S_IRWXG | S_IRWXO;
+  char *nonexistence = "name04";
+
+  const char *wd = __func__;
+
+  /*
+   * Create a new directory and change the current directory to  this
+   */
+  status = mkdir (wd, mode);
+  rtems_test_assert (status == 0);
+  status = chdir (wd);
+  rtems_test_assert (status == 0);
+
+  /*
+   * Create a new directory and a file in it for test
+   */
+  status = mkdir ("tmp", mode);
+  rtems_test_assert (status == 0);
+  fd = creat ("tmp/file", mode);
+  status = close (fd);
+  rtems_test_assert (status == 0);
+
+
+
+  /*
+   * The path argument names a directory that is not an empty directory,
+   * or there are hard links to the directory other than dot or a single entry in dot-dot.
+   */
+
+  EXPECT_ERROR (ENOTEMPTY, rmdir, "..");
+  EXPECT_ERROR (ENOTEMPTY, rmdir, "tmp");
+
+
+  /*
+   * The path argument contains a last component that is dot.
+   */
+
+
+  EXPECT_ERROR (EINVAL, rmdir, ".");
+  EXPECT_ERROR (EINVAL, rmdir, "tmp/.");
+
+  /*
+   * A component of path does not name an existing file, 
+   * or the path argument names a nonexistent directory or points to an empty string
+   */
+  EXPECT_ERROR (ENOENT, rmdir, "");
+  EXPECT_ERROR (ENOENT, rmdir, nonexistence);
+
+  EXPECT_ERROR (ENOENT, unlink, "");
+  EXPECT_ERROR (ENOENT, unlink, nonexistence);
+
+  /*
+   * component of path is not a directory.
+   */
+
+  EXPECT_ERROR (ENOTDIR, rmdir, "tmp/file");
+
+  EXPECT_ERROR (ENOTDIR, unlink, "tmp/file/dir");
+  /*
+   * Go back to parent directory
+   */
+  status = chdir ("..");
+  rtems_test_assert (status == 0);
+
+
+}
+
+void rdwr_error (void)
+{
+
+  int status;
+  int fd;
+  char *file01 = "name01";
+  char *databuf = "test";
+  char *readbuf[10];
+
+
+  mode_t mode = S_IRWXU | S_IRWXG | S_IRWXO;
+  const char *wd = __func__;
+
+  /*
+   * Create a new directory and change the current directory to  this
+   */
+  status = mkdir (wd, mode);
+  rtems_test_assert (status == 0);
+  status = chdir (wd);
+  rtems_test_assert (status == 0);
+
+  fd = open (file01, O_WRONLY | O_CREAT, mode);
+
+  /*
+   * The fildes argument is not a valid file descriptor open for reading.
+   */
+
+  EXPECT_ERROR (EBADF, read, fd, readbuf, 10);
+  EXPECT_ERROR (EBADF, read, 100, readbuf, 10);
+
+  status = close (fd);
+  rtems_test_assert (status == 0);
+  /*
+   * The fildes argument is not a valid file descriptor open for writing.
+   */
+  fd = open (file01, O_RDONLY, mode);
+
+  EXPECT_ERROR (EBADF, write, fd, databuf, 10);
+  EXPECT_ERROR (EBADF, write, 100, readbuf, 10);
+
+  /*
+   * The whence argument is not a proper value, 
+   * or the resulting file offset would be negative for a regular file,
+   * block special file, or directory.
+   */
+
+  EXPECT_ERROR (EINVAL, lseek, fd, -100, SEEK_END);
+  EXPECT_ERROR (EINVAL, lseek, fd, -100, SEEK_CUR);
+  EXPECT_ERROR (EINVAL, lseek, fd, -100, SEEK_SET);
+
+  status = close (fd);
+  rtems_test_assert (status == 0);
+
+  EXPECT_ERROR (EBADF, lseek, fd, -100, SEEK_SET);
+  /*
+   * Go back to parent directory
+   */
+  status = chdir ("..");
+  rtems_test_assert (status == 0);
+
+}
+
+void test (void)
+{
+
+  puts ("\n\n*** ERROR TEST ***");
+  open_mkdir_error ();
+  rename_error ();
+  truncate_error ();
+  rmdir_unlink_error ();
+  rdwr_error ();
+  puts ("*** END OF ERROR TEST ***");
+}
Index: testsuites/fstests/fspatheval/test.c
===================================================================
--- testsuites/fstests/fspatheval/test.c	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/fspatheval/test.c	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,187 @@
+/*
+ *  COPYRIGHT (c) 1989-2011.
+ *  On-Line Applications Research Corporation (OAR).
+ *
+ *  The license and distribution terms for this file may be
+ *  found in the file LICENSE in this distribution or at
+ *  http://www.rtems.com/license/LICENSE.
+ *
+ *  $Id Exp $
+ */
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <errno.h>
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+
+#include "fstest.h"
+
+#define BUF_SIZE 100
+
+void make_multiple_files (char **files,int is_directory)
+{
+  int i;
+  int status;
+  int fd;
+
+  i = 0;
+  if (is_directory){
+    while (files[i]) {
+      printf ("Making directory %s\n", files[i]);
+      status = mkdir (files[i], S_IRWXU);
+      rtems_test_assert (!status);
+      i++;
+    }
+  }else {
+    while (files[i]) {
+      printf ("Create file %s\n", files[i]);
+      fd=creat(files[i],S_IRWXU);
+      status=close(fd);
+      rtems_test_assert (!status);
+      i++;
+    }
+  }
+
+  puts ("");
+}
+
+void remove_multiple_files (char **files,int is_directory)
+{
+  int i;
+  int status;
+
+  i = 0;
+  while (files[i]) {
+    i++;
+  }
+
+  if (is_directory){
+    while (i) {
+      i--;
+      printf ("Removing directory %s\n", files[i]);
+      status = rmdir (files[i]);
+      rtems_test_assert (!status);
+    }
+  }else {
+    while (i) {
+      i--;
+      printf ("Removing file %s\n", files[i]);
+      status = unlink (files[i]);
+      rtems_test_assert (!status);
+    }
+  }
+
+  puts ("");
+}
+
+void path_eval_test01 (void)
+{
+  char *valid_path[] = {
+    "/test1/",
+    "tets2",
+    "///test3",
+    "test4////",
+    "../../test5",
+    "/test1/../test6",
+    "./test7/",
+    ".././test8",
+    "test8/./../test9",
+    "///test9/../test10",
+    0
+  };
+  char *valid_file[]={
+    "/test1",
+    "tets2",
+    "///test3",
+    "test4",
+    "../../test5",
+    "/../test6",
+    "./test7",
+    ".././test8",
+    "/./../test9",
+    "//../test10",
+    0
+  };
+
+  char *valid_relative_path[]={
+    "test1",
+    "tets2",
+    "test3",
+    "test4",
+    "test5",
+    "test6",
+    "test7",
+    "test8",
+    "test9",
+    "test10",
+    0
+
+  };
+
+  char *valid_name[] = {
+    "!#$%&()-@^_`{}~'",
+    "0_1_A",
+    "aaa bbb",
+    "ccc....ddd",
+    " fff",
+    0
+  };
+
+
+  make_multiple_files(valid_path,1);
+  make_multiple_files (valid_name,1);
+
+  remove_multiple_files(valid_relative_path,1);
+  remove_multiple_files(valid_name,1);
+
+  make_multiple_files(valid_file,0);
+  make_multiple_files (valid_name,0);
+
+  remove_multiple_files(valid_relative_path,0);
+  remove_multiple_files(valid_name,0);
+
+}
+void path_eval_test02(void )
+{
+
+  int status;
+  char buf[BUF_SIZE];
+  char* cwd;
+
+  mode_t mode = S_IRWXU|S_IRWXG|S_IRWXO;
+  puts("mkdir /tmp/a/b");
+  status=mkdir("/tmp",mode);
+  rtems_test_assert(status==0);
+  status=mkdir("/tmp/a",mode);
+  rtems_test_assert(status==0);
+  status=mkdir("/tmp/a/b",mode);
+  rtems_test_assert(status==0);
+
+  cwd=getcwd(buf,BUF_SIZE);
+  rtems_test_assert(cwd!=NULL);
+
+  puts("cd /tmp");
+  status=chdir("/tmp");
+  rtems_test_assert(status==0);
+
+  status=chdir("a/b");
+  rtems_test_assert(status==0);
+
+  status=chdir("../b");
+  rtems_test_assert(status==0);
+
+  status=chdir("../b/.");
+  rtems_test_assert(status==0);
+
+}
+
+void test (void )
+{
+  puts( "\n\n*** PATH EVALUATION TEST ***" );
+  path_eval_test01();
+  path_eval_test02();
+  puts( "*** END OF PATH EVALUATION TEST ***" );
+}
Index: testsuites/fstests/fspermission/test.c
===================================================================
--- testsuites/fstests/fspermission/test.c	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/fspermission/test.c	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,478 @@
+
+/*
+ *  COPYRIGHT (c) 1989-2011.
+ *  On-Line Applications Research Corporation (OAR).
+ *
+ *  The license and distribution terms for this file may be
+ *  found in the file LICENSE in this distribution or at
+ *  http://www.rtems.com/license/LICENSE.
+ *
+ *  $Id Exp $
+ */
+
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <errno.h>
+#include <string.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+#include <dirent.h>
+#include <unistd.h>
+
+#include "fstest.h"
+
+/*
+ *  Test the umask
+ */
+void umask_test01(void )
+{
+
+  mode_t previous_cmask;
+  mode_t tmp_mode;
+  mode_t file_mode;
+  struct stat statbuf;
+  int status = 0;
+  int fd;
+
+  char* file01="file01";
+  char* file02="file02";
+  char* directory01="dir01";
+
+  const char* wd=__func__;
+  
+  mode_t mode=S_IRWXU|S_IRWXG|S_IRWXO ;
+  
+
+
+  /*
+   *Create a new directory and change the current directory to  this
+   */
+  status=mkdir(wd,mode);
+  rtems_test_assert(status==0);
+  status=chdir(wd);
+  rtems_test_assert(status==0);
+
+/*
+ *
+ *  Call open creat and mkdir to create new files and directory
+ */
+  fd=open(file01,O_CREAT|O_RDWR,mode);
+  status=close(fd);
+  rtems_test_assert(status==0);
+
+  fd=creat(file02,mode);
+  status=close(fd);
+  rtems_test_assert(status==0);
+
+  status=mkdir(directory01,mode);
+  rtems_test_assert(status==0);
+
+
+  /*
+   *Get the previous cmask and set it to a new one
+   */
+  previous_cmask = umask (0321);
+  printf("The previous cmask is %03o\n",(unsigned int)previous_cmask);
+  file_mode= mode & ~previous_cmask;
+
+  status = stat (file01, &statbuf);
+  rtems_test_assert (status == 0);
+  tmp_mode = (statbuf.st_mode) & ALLPERMS;
+  printf("The file mode of %s is %03o\n",file01,(unsigned int)tmp_mode);
+  rtems_test_assert(tmp_mode==file_mode);
+
+
+  status = stat (file02, &statbuf);
+  rtems_test_assert (status == 0);
+  tmp_mode = (statbuf.st_mode) & ALLPERMS;
+  printf("The file mode of %s is %03o\n",file02,(unsigned int)tmp_mode);
+  rtems_test_assert(tmp_mode==file_mode);
+  
+  status = stat (directory01, &statbuf);
+  rtems_test_assert (status == 0);
+  tmp_mode = (statbuf.st_mode) & ALLPERMS;
+  printf("The file mode of %s is %03o\n",directory01,(unsigned int)tmp_mode);
+  rtems_test_assert(tmp_mode==file_mode);
+
+  /*
+   *Remove them and recreate them with the same mode
+   */
+
+  status=unlink(file01);
+  rtems_test_assert(status==0);
+  fd=open(file01,O_CREAT|O_RDWR,mode);
+  status=close(fd);
+  rtems_test_assert(status==0);
+
+  status=unlink(file02);
+  rtems_test_assert(status==0);
+  fd=creat(file02,mode);
+  status=close(fd);
+  rtems_test_assert(status==0);
+
+  status=rmdir(directory01);
+  rtems_test_assert(status==0);
+  status=mkdir(directory01,mode);
+  rtems_test_assert(status==0);
+
+  /*
+   *Check the file mode
+   */
+
+  previous_cmask = umask (00);
+  printf("The previous cmask is %03o\n",(unsigned int)previous_cmask);
+  file_mode= mode & ~previous_cmask;
+
+  status = stat (file01, &statbuf);
+  rtems_test_assert (status == 0);
+  tmp_mode = (statbuf.st_mode) & ALLPERMS;
+  printf("The file mode of %s is %03o\n",file01,(unsigned int)tmp_mode);
+  rtems_test_assert(tmp_mode==file_mode);
+
+
+  status = stat (file02, &statbuf);
+  rtems_test_assert (status == 0);
+  tmp_mode = (statbuf.st_mode) & ALLPERMS;
+  printf("The file mode of %s is %03o\n",file02,(unsigned int)tmp_mode);
+  rtems_test_assert(tmp_mode==file_mode);
+  
+  status = stat (directory01, &statbuf);
+  rtems_test_assert (status == 0);
+  tmp_mode = (statbuf.st_mode) & ALLPERMS;
+  printf("The file mode of %s is %03o\n",directory01,(unsigned int)tmp_mode);
+  rtems_test_assert(tmp_mode==file_mode);
+
+  /*
+   * Go back to parent directory
+   */
+  status=chdir("..");
+  rtems_test_assert(status==0);
+
+}
+/*
+ * Check the file mode in file and directory
+ */
+void test_premission01(void )
+{
+  mode_t tmp_mode;
+  struct stat statbuf;
+  int status = 0;
+  int fd;
+
+  char* file01="file01";
+  char* file02="file02";
+  char* directory01="dir01";
+
+  char path[20];
+  char* test_data="Test Data";
+  char* data_buf;
+  size_t len=strlen(test_data); 
+
+  int n;
+  DIR *dp;
+
+  const char* wd=__func__;
+  
+  mode_t mode=S_IRWXU|S_IRWXG|S_IRWXO ;
+  uid_t user_id =65534;
+  gid_t group_id =65534;
+  
+  uid_t another_user_id =65533;
+  gid_t another_group_id =65533;
+
+
+  /*
+   *Create a new directory and change the current directory to this
+   */
+  umask(00);
+  status=mkdir(wd,mode);
+  rtems_test_assert(status==0);
+  status=chdir(wd);
+  rtems_test_assert(status==0);
+
+  status=setgid(group_id);
+  rtems_test_assert(status==0);
+  status=seteuid(user_id);
+  rtems_test_assert(status==0);
+  status=seteuid(user_id);
+  rtems_test_assert(status==0);
+
+
+  /*
+   *Create a file with mode 0777
+   */
+  fd=creat(file01,mode);
+  status=close(fd);
+  rtems_test_assert(status==0);
+  /*
+   *Create a file with mode 0240
+   */
+
+  fd=creat(file02,0240);
+  status=close(fd);
+  rtems_test_assert(status==0);
+
+
+  /*
+   *Check the file mode uid and gid
+   */
+  status = stat (file01, &statbuf);
+  rtems_test_assert (status == 0);
+  tmp_mode = (statbuf.st_mode) & ALLPERMS;
+  printf("The file mode of %s is %03o\n",file01,(unsigned int)tmp_mode);
+  rtems_test_assert(tmp_mode==mode);
+  rtems_test_assert(statbuf.st_uid==user_id);
+  rtems_test_assert(statbuf.st_gid==group_id);
+
+  status = stat (file02, &statbuf);
+  rtems_test_assert (status == 0);
+  tmp_mode = (statbuf.st_mode) & ALLPERMS;
+  printf("The file mode of %s is %03o\n",file02,(unsigned int)tmp_mode);
+  rtems_test_assert(tmp_mode==0240);
+  rtems_test_assert(statbuf.st_uid==user_id);
+  rtems_test_assert(statbuf.st_gid==group_id);
+
+  /*
+   * Create directory and a file in it for tese 
+   */
+
+  status=mkdir(directory01,0777);
+  rtems_test_assert(status==0);
+  sprintf(path,"%s/%s",directory01,file01);
+  fd=creat(path,0777);
+
+  status=chmod(directory01,0340);
+  rtems_test_assert (status == 0);
+  status = stat (directory01, &statbuf);
+  rtems_test_assert (status == 0);
+  tmp_mode = (statbuf.st_mode) & ALLPERMS;
+  printf("The file mode of %s is %03o\n",directory01,(unsigned int)tmp_mode);
+  rtems_test_assert(tmp_mode==0340);
+  rtems_test_assert(statbuf.st_uid==user_id);
+  rtems_test_assert(statbuf.st_gid==group_id);
+
+  /*
+   * Check the file with open and write 
+   */
+
+  /*
+   * Test write
+   */
+  fd=open(file01,O_WRONLY);
+  n=write(fd,test_data,len);
+  rtems_test_assert(n==len);
+  status=close(fd);
+  rtems_test_assert(status==0);
+  
+  fd=open(file02,O_WRONLY);
+  n=write(fd,test_data,len);
+  rtems_test_assert(n==len);
+  status=close(fd);
+  rtems_test_assert(status==0);
+
+  /*
+   * Test read
+   */
+  data_buf=(char*)malloc(len+1);
+  fd=open(file01,O_RDWR);
+  rtems_test_assert(fd!=-1);
+  n=read(fd,data_buf,len);
+  rtems_test_assert(n==len);
+  status=close(fd);
+  rtems_test_assert(status==0);
+ 
+  EXPECT_ERROR(EACCES,open,file02,O_RDONLY);
+  EXPECT_ERROR(EACCES,open,file02,O_RDWR);
+
+  /*
+   * Test read directory
+   */
+  dp= opendir(directory01);
+  rtems_test_assert(dp==NULL);
+  rtems_test_assert(errno==EACCES);
+
+  /*
+   * Test write directory
+   */
+  status = lstat (path, &statbuf);
+  rtems_test_assert (status == 0);
+
+  status=unlink(path);
+  rtems_test_assert(status==0);
+
+
+  /*
+   * Change euid and check
+   */
+  puts("Change euid and check");
+  status=seteuid(0);
+  rtems_test_assert(status==0);
+
+  status=seteuid(another_user_id);
+  rtems_test_assert(status==0);
+
+  fd=open(file01,O_WRONLY);
+  n=write(fd,test_data,len);
+  rtems_test_assert(n==len);
+  status=close(fd);
+  rtems_test_assert(status==0);
+
+  EXPECT_ERROR(EACCES,open,file02,O_WRONLY);
+  EXPECT_ERROR(EACCES,open,file02,O_RDWR);
+
+  /*
+   * Test read directory
+   */
+  dp= opendir(directory01);
+  rtems_test_assert(dp!=NULL);
+  status=closedir(dp);
+  rtems_test_assert(status==0);
+
+  /*
+   * Test write directory
+   */
+  EXPECT_ERROR(EACCES,creat,path,mode);
+  EXPECT_ERROR(EACCES,rename,path,"test");
+  EXPECT_ERROR(EACCES,truncate,path,0);
+  EXPECT_ERROR(EACCES,link,path,"test");
+  EXPECT_ERROR(EACCES,unlink,path);
+  /*
+   * Change egid and check
+   */
+  puts("Change egid and check");
+  status=seteuid(0);
+  rtems_test_assert(status==0);
+
+  status=setgid(another_group_id);
+  rtems_test_assert(status==0);
+
+  status=seteuid(another_user_id);
+  rtems_test_assert(status==0);
+ 
+  EXPECT_ERROR(EACCES,open,file02,O_WRONLY);
+  EXPECT_ERROR(EACCES,open,file02,O_RDONLY);
+  EXPECT_ERROR(EACCES,open,file02,O_RDWR);
+
+  /*
+   * Test read directory
+   */
+  dp= opendir(directory01);
+  rtems_test_assert(dp==NULL);
+  rtems_test_assert(errno==EACCES);
+
+   /*
+   * Test write directory
+   */
+  EXPECT_ERROR(EACCES,creat,path,mode);
+
+  /*
+   * Go back to parent directory
+   */
+  status=seteuid(0);
+  rtems_test_assert(status==0);
+  status=setgid(0);
+  rtems_test_assert(status==0);
+  free(data_buf);
+
+  status=chdir("..");
+  rtems_test_assert(status==0);
+}
+
+/*
+ * Test chown and chmod
+ */
+void  test_premission02(void )
+{
+  struct stat statbuf;
+  int status = 0;
+  int fd;
+
+  char* file01="file01";
+  char* directory01="dir01";
+
+  mode_t tmp_mode;
+  mode_t file_mode=0321;
+
+  const char* wd=__func__;
+  
+  mode_t mode=S_IRWXU|S_IRWXG|S_IRWXO ;
+  uid_t user_id =65534;
+  gid_t group_id =65534;
+
+  /*
+   *Create a new directory and change the current directory to  this
+   */
+  status=mkdir(wd,mode);
+  rtems_test_assert(status==0);
+  status=chdir(wd);
+  rtems_test_assert(status==0);
+
+  umask(00);
+
+  fd=creat(file01,mode);
+  status=close(fd);
+  rtems_test_assert(status==0);
+  status=stat(file01,&statbuf);
+  tmp_mode = (statbuf.st_mode) & ALLPERMS;
+  rtems_test_assert(tmp_mode==mode);
+
+  /*
+   *Change the file mode uid and gid
+   */
+
+  status=chmod(file01,file_mode);
+  rtems_test_assert(status==0);
+  status=chown(file01,user_id,group_id);
+  rtems_test_assert(status==0);
+  status=stat(file01,&statbuf);
+  tmp_mode = (statbuf.st_mode) & ALLPERMS;
+  rtems_test_assert(tmp_mode==file_mode);
+  rtems_test_assert(user_id==statbuf.st_uid);
+  rtems_test_assert(group_id==statbuf.st_gid);
+
+  status=mkdir(directory01,mode);
+  rtems_test_assert(status==0);
+  status=stat(directory01,&statbuf);
+  tmp_mode = (statbuf.st_mode) & ALLPERMS;
+  printf("The directory file mode is %0o\n",(unsigned int)tmp_mode);
+  rtems_test_assert(tmp_mode==mode);
+
+  /*
+   *Change the directory file mode
+   */
+  status=chmod(directory01,file_mode);
+  rtems_test_assert(status==0);
+  status=stat(directory01,&statbuf);
+  tmp_mode = (statbuf.st_mode) & ALLPERMS;
+  rtems_test_assert(tmp_mode==file_mode);
+  printf("The directory file mode is %0o\n",(unsigned int)tmp_mode);
+
+  /*
+   * Go back to parent directory
+   */
+  status=chdir("..");
+  rtems_test_assert(status==0);
+}
+void root_test(void )
+{
+  int fd;
+  int sc;
+
+  fd =creat("test",0000);
+  sc=close(fd);
+  rtems_test_assert(sc==0);
+
+  fd=open("test",O_RDONLY);
+  rtems_test_assert(fd!=-1);
+}
+
+void test(void )
+{
+  puts( "\n\n*** PERMISSION TEST ***" );
+  umask_test01();
+  test_premission01();
+  test_premission02();
+  root_test();
+  puts( "*** END OF PERMISSION TEST ***" );
+}
Index: testsuites/fstests/fsrdwr/init.c
===================================================================
--- testsuites/fstests/fsrdwr/init.c	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/fsrdwr/init.c	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,519 @@
+/*
+ *  COPYRIGHT (c) 1989-2011.
+ *  On-Line Applications Research Corporation (OAR).
+ *
+ *  The license and distribution terms for this file may be
+ *  found in the file LICENSE in this distribution or at
+ *  http://www.rtems.com/license/LICENSE.
+ *
+ *  $Id Exp $
+ */
+#include <sys/stat.h>
+#include <string.h>
+#include <stdlib.h>
+#include <fcntl.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+#include <memory.h>
+#include <unistd.h>
+
+#include "fstest.h"
+
+const char *databuf =
+    "Happy days are here again.  Happy days are here again.1Happy "
+    "days are here again.2Happy days are here again.3Happy days are here again."
+    "4Happy days are here again.5Happy days are here again.6Happy days are here "
+    "again.7Happy days are here again.";
+
+void read_write_test (void)
+{
+
+  int fd;
+  int status;
+  char *name01 = "name01";
+  char *name02 = "name02";
+  struct stat statbuf;
+  char *readbuf;
+  size_t len = strlen (databuf);
+  off_t pos = 0;
+
+  int n;
+  mode_t mode = S_IRWXU | S_IRWXG | S_IRWXO;
+
+
+  const char* wd=__func__;
+
+  /*
+   * Create a new directory and change the current directory to  this
+   */
+  status=mkdir(wd,mode);
+  rtems_test_assert(status==0);
+  status=chdir(wd);
+  rtems_test_assert(status==0);
+  /*
+   * Create an empty file
+   */
+  fd = open (name01, O_CREAT | O_WRONLY, mode);
+  status = close (fd);
+  rtems_test_assert (status == 0);
+  /*
+   * Verify the empty file
+   */
+  status = stat (name01, &statbuf);
+  rtems_test_assert (status == 0);
+
+  rtems_test_assert (S_ISREG (statbuf.st_mode));
+  rtems_test_assert (statbuf.st_size == 0);
+
+  /*
+   * Write data to the empty file
+   */
+  fd = open (name01, O_WRONLY);
+  rtems_test_assert (fd != -1);
+
+  n = write (fd, databuf, len);
+  rtems_test_assert (n == len);
+  status = close (fd);
+  rtems_test_assert (status == 0);
+
+  status = stat (name01, &statbuf);
+  rtems_test_assert (status == 0);
+  rtems_test_assert (S_ISREG (statbuf.st_mode));
+  rtems_test_assert (statbuf.st_size == len);
+
+  /*
+   * Read the data from the file
+   */
+  readbuf = (char *) malloc (len + 1);
+  rtems_test_assert (readbuf);
+
+  fd = open (name01, O_RDONLY);
+  rtems_test_assert (fd != -1);
+  n = read (fd, readbuf, len);
+  rtems_test_assert (n == len);
+  rtems_test_assert (!strncmp (databuf, readbuf, len));
+  status = close (fd);
+  rtems_test_assert (status == 0);
+
+  /*
+   * Open the file using O_APPEND and write the data
+   */
+  memset (readbuf, 0, len + 1);
+  fd = open (name01, O_WRONLY | O_APPEND);
+  n = write (fd, databuf, len);
+  rtems_test_assert (n == len);
+  pos = lseek (fd, 0, SEEK_CUR);
+  rtems_test_assert (pos == 2 * len);
+  status = close (fd);
+  rtems_test_assert (status == 0);
+
+  /*
+   * Read the data and verify it
+   */
+  fd = open (name01, O_RDONLY);
+  rtems_test_assert (fd != -1);
+  n = read (fd, readbuf, len);
+  rtems_test_assert (n == len);
+  rtems_test_assert (!strncmp (databuf, readbuf, len));
+
+  n = read (fd, readbuf, len);
+  rtems_test_assert (n == len);
+  rtems_test_assert (!strncmp (databuf, readbuf, len));
+  status = close (fd);
+  rtems_test_assert (status == 0);
+
+  /*
+   * Open the file using O_RDWR
+   */
+  memset (readbuf, 0, len + 1);
+
+  fd = open (name01, O_RDWR);
+  n = write (fd, databuf, len);
+  rtems_test_assert (n == len);
+  pos = lseek (fd, 0, SEEK_CUR);
+  rtems_test_assert (pos == len);
+  n = read (fd, readbuf, len);
+  rtems_test_assert (n == len);
+  rtems_test_assert (!strncmp (databuf, readbuf, len));
+  pos = lseek (fd, 0, SEEK_CUR);
+  rtems_test_assert (pos == 2 * len);
+  status = close (fd);
+  rtems_test_assert (status == 0);
+
+  /*
+   * Open the file using O_TRUNC 
+   */
+
+  fd = open (name01, O_WRONLY | O_TRUNC);
+  status = close (fd);
+  rtems_test_assert (status == 0);
+
+  /*
+   * Verify if the length is zero
+   */
+  status = stat (name01, &statbuf);
+  rtems_test_assert (status == 0);
+  rtems_test_assert (S_ISREG (statbuf.st_mode));
+  rtems_test_assert (statbuf.st_size == 0);
+
+  /*
+   * Open a directory
+   */
+  status = mkdir (name02, mode);
+  rtems_test_assert (status == 0);
+  fd = open (name02, O_RDONLY);
+  rtems_test_assert (fd != -1);
+
+  status = close (fd);
+  rtems_test_assert (status == 0);
+
+  free (readbuf);
+
+  /*
+   * Go back to parent directory
+   */
+  status=chdir("..");
+  rtems_test_assert(status==0);
+}
+
+void truncate_test03(void )
+{
+
+  int   fd;
+  int   status;
+  char *name01="name01";
+  struct stat statbuf;
+
+  char  data;
+  int   n;
+  int   i;
+
+  size_t  len = strlen(databuf);
+
+  char *readbuf;
+  off_t good_size=100;
+  mode_t mode = S_IRWXU|S_IRWXG|S_IRWXO;
+
+
+  const char* wd=__func__;
+
+  /*
+   * Create a new directory and change the current directory to  this
+   */
+  status=mkdir(wd,mode);
+  rtems_test_assert(status==0);
+  status=chdir(wd);
+  rtems_test_assert(status==0);
+
+  /*
+   * Create an empty file
+   */
+  fd=creat(name01,mode);
+  status=close(fd);
+  rtems_test_assert(status==0);
+
+
+  /*
+   * Truncate it to a valid size
+   */
+  status=truncate(name01,good_size);
+  rtems_test_assert(status==0);
+  /*
+   * Verify the size and the data
+   */
+  status=stat(name01,&statbuf);
+  rtems_test_assert(status==0);
+  rtems_test_assert(good_size==statbuf.st_size);
+
+  fd=open(name01,O_RDONLY);
+  while ((n=read(fd,&data,1))>0) {
+    rtems_test_assert(data==0);
+  }
+
+  status=close(fd);
+  rtems_test_assert(status==0);
+
+  /*
+   * Fill a file with data
+   */
+  fd=open(name01,O_WRONLY);
+  rtems_test_assert(fd!=-1);
+  n=write(fd,databuf,len);
+  rtems_test_assert(n==len);
+
+  /*
+   * Truncate it to the half size  
+   */
+
+  status=truncate(name01,len/2);
+  status=truncate(name01,len);
+
+  /*
+   * verify the data
+   */
+  readbuf = (char *)malloc(len/2);
+  rtems_test_assert( readbuf );
+  fd=open(name01,O_RDONLY);
+  rtems_test_assert(fd!=-1);
+  n=read(fd,readbuf,len/2);
+  rtems_test_assert(n==len/2);
+  rtems_test_assert(!strncmp(databuf,readbuf,len/2));
+  n=read(fd,readbuf,len/2);
+  rtems_test_assert(n==len/2);
+  for (i=0;i<len/2;i++){
+    rtems_test_assert(readbuf[i]==0);
+  }
+  status=close(fd);
+  rtems_test_assert( status==0 );
+
+  /*
+   * Go back to parent directory
+   */
+  status=chdir("..");
+  rtems_test_assert(status==0);
+}
+
+void lseek_test(void)
+{
+  int   fd;
+  int   status;
+  char *name01="test_name01";
+  struct stat statbuf;
+
+  int   n;
+  int   i;
+
+  size_t  len = strlen(databuf);
+  off_t pos;
+  int     total_written=0;
+
+  char *readbuf;
+  mode_t mode = S_IRWXU|S_IRWXG|S_IRWXO;
+
+
+
+  const char* wd=__func__;
+
+  /*
+   * Create a new directory and change the current directory to this
+   */
+  status=mkdir(wd,mode);
+  rtems_test_assert(status==0);
+  status=chdir(wd);
+  rtems_test_assert(status==0);
+
+  /*
+   * Create a file and fill with the data.
+   */
+  puts("Create a new file");
+  fd=creat(name01,mode);
+  rtems_test_assert(fd!=-1);
+
+  pos=lseek(fd,0,SEEK_CUR);
+  rtems_test_assert(pos==0);
+
+  pos=lseek(fd,0,SEEK_END);
+  rtems_test_assert(pos==0);
+  
+  pos=lseek(fd,0,SEEK_SET);
+  rtems_test_assert(pos==0);
+  
+
+  printf( "Writing %d bytes to file\n", len * 10 );
+  for (i=0; i<10; i++) {
+    n = write(fd, databuf, len);
+    rtems_test_assert( n != -1 );
+    total_written += n;
+  }
+  printf("Successfully wrote %d\n", total_written);
+
+  /*
+   * Check the current position
+   */
+  puts("Check the current position");
+  pos=lseek(fd,0,SEEK_CUR);
+  rtems_test_assert(pos==total_written);
+
+  pos=lseek(fd,0,SEEK_END);
+  rtems_test_assert(pos==total_written);
+
+  /*
+   * ftruncate shall not change the posistion
+   */
+  status=ftruncate(fd,total_written+1);
+  rtems_test_assert(status==0);
+
+  pos=lseek(fd,0,SEEK_CUR);
+  rtems_test_assert(pos==total_written);
+
+  pos=lseek(fd,0,SEEK_END);
+  printf("%jd\n",(intmax_t)pos);
+  rtems_test_assert(pos==total_written+1);
+
+  status=ftruncate(fd,total_written);
+  rtems_test_assert(status==0);
+  
+  pos=lseek(fd,0,SEEK_CUR);
+  rtems_test_assert(pos==total_written+1);
+
+
+  status=close(fd);
+  rtems_test_assert(status==0);
+
+  /*
+   * Check the file size
+   */
+  status=stat(name01,&statbuf);
+  rtems_test_assert(statbuf.st_size==total_written);
+
+  /*
+   * Open the file with O_RDONLY and check the lseek
+   */
+  readbuf=(char*)malloc(len);
+  fd=open(name01,O_RDONLY);
+  pos=lseek(fd,len,SEEK_CUR);
+  rtems_test_assert(pos==len);
+  n=read(fd,readbuf,len);
+  rtems_test_assert(n==len);
+  rtems_test_assert(!strncmp(databuf,readbuf,len));
+
+  pos=lseek(fd,len,SEEK_CUR);
+  rtems_test_assert(pos==3*len);
+  n=read(fd,readbuf,len);
+  rtems_test_assert(n==len);
+  rtems_test_assert(!strncmp(databuf,readbuf,len));
+
+  pos=lseek(fd,-len,SEEK_CUR);
+  rtems_test_assert(pos==3*len);
+  n=read(fd,readbuf,len);
+  rtems_test_assert(n==len);
+  rtems_test_assert(!strncmp(databuf,readbuf,len));
+
+  pos=lseek(fd,4*len,SEEK_SET);
+  n=read(fd,readbuf,len);
+  rtems_test_assert(n==len);
+  rtems_test_assert(!strncmp(databuf,readbuf,len));
+
+  
+  pos=lseek(fd,10,SEEK_SET);
+  n=read(fd,readbuf,len);
+  rtems_test_assert(n==len);
+  rtems_test_assert(strncmp(databuf,readbuf,len)!=0);
+
+  pos=lseek(fd,-len,SEEK_END);
+  n=read(fd,readbuf,2*len);
+  rtems_test_assert(n==len);
+  rtems_test_assert(!strncmp(databuf,readbuf,len));
+
+  status=close(fd);
+  rtems_test_assert(status==0);
+
+  /*
+   * Open the file withe O_RDWR and check the lseek
+   */
+
+  fd=open(name01,O_RDWR);
+
+  pos=lseek(fd,len,SEEK_CUR);
+  rtems_test_assert(pos==len);
+  n=read(fd,readbuf,len);
+  rtems_test_assert(n==len);
+  rtems_test_assert(!strncmp(databuf,readbuf,len));
+
+  pos=lseek(fd,len,SEEK_CUR);
+  rtems_test_assert(pos==3*len);
+  n=read(fd,readbuf,len);
+  rtems_test_assert(n==len);
+  rtems_test_assert(!strncmp(databuf,readbuf,len));
+
+  pos=lseek(fd,-len,SEEK_CUR);
+  rtems_test_assert(pos==3*len);
+  n=read(fd,readbuf,len);
+  rtems_test_assert(n==len);
+  rtems_test_assert(!strncmp(databuf,readbuf,len));
+
+  pos=lseek(fd,4*len,SEEK_SET);
+  n=read(fd,readbuf,len);
+  rtems_test_assert(n==len);
+  rtems_test_assert(!strncmp(databuf,readbuf,len));
+
+  /*
+   * Go to the wrong position, so the data is not the same  
+   */
+  pos=lseek(fd,10,SEEK_SET);
+  n=read(fd,readbuf,len);
+  rtems_test_assert(n==len);
+  rtems_test_assert(strncmp(databuf,readbuf,len)!=0);
+
+  /*
+   * Use SEEK_END  
+   */
+  pos=lseek(fd,-len,SEEK_END);
+  n=read(fd,readbuf,2*len);
+  rtems_test_assert(n==len);
+  rtems_test_assert(!strncmp(databuf,readbuf,len));
+
+  memset(readbuf,0,len);
+
+  /*
+   * Write the zero to the end of file.
+   */
+  pos=lseek(fd,-len,SEEK_END);
+  rtems_test_assert(pos==total_written-len);
+  n=write(fd,readbuf,len);
+  rtems_test_assert(n==len);
+  /*
+   * Verify it 
+   */
+  pos=lseek(fd,total_written-len,SEEK_SET);
+  n=read(fd,readbuf,len);
+  rtems_test_assert(n==len);
+  for (i=0;i<n;i++){
+    rtems_test_assert(readbuf[i]==0);
+  }
+
+  /*
+   * Write the zero to the beginning of file.
+   */
+  pos=lseek(fd,-total_written,SEEK_END);
+  rtems_test_assert(pos==0);
+  n=write(fd,readbuf,len);
+  rtems_test_assert(n==len);
+
+  /*
+   * Verify it
+   */
+
+  pos=lseek(fd,0,SEEK_SET);
+  n=read(fd,readbuf,len);
+  rtems_test_assert(n==len);
+  for (i=0;i<n;i++){
+    rtems_test_assert(readbuf[i]==0);
+  }
+
+  n=read(fd,readbuf,len);
+  rtems_test_assert(n==len);
+  rtems_test_assert(strncmp(databuf,readbuf,len)==0);
+  /*
+   * Call ftruncate to decrease the file and the position not change
+   */
+  status=ftruncate(fd,len);
+  rtems_test_assert(status==0);
+  pos=lseek(fd,0,SEEK_CUR);
+  rtems_test_assert(pos==len*2);
+
+  status=close(fd);
+  rtems_test_assert(status==0);
+  /*
+   * Go back to parent directory
+   */
+  status=chdir("..");
+  rtems_test_assert(status==0);
+
+}
+void test(void )
+{
+  read_write_test();
+  lseek_test();
+}
Index: testsuites/fstests/fstime/test.c
===================================================================
--- testsuites/fstests/fstime/test.c	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/fstime/test.c	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,264 @@
+
+/*
+ *  COPYRIGHT (c) 1989-2011.
+ *  On-Line Applications Research Corporation (OAR).
+ *
+ *  The license and distribution terms for this file may be
+ *  found in the file LICENSE in this distribution or at
+ *  http://www.rtems.com/license/LICENSE.
+ *
+ *  $Id Exp $
+ */
+
+#include <sys/stat.h>
+#include <limits.h>
+#include <fcntl.h>
+#include <errno.h>
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <utime.h>
+#include "fstest.h"
+
+void time_test01 (void)
+{
+  struct stat statbuf;
+  struct utimbuf timbuf;
+  int status = 0;
+  int fd;
+  time_t ctime1, mtime1;
+  time_t ctime2, mtime2;
+  char *readbuf;
+  char *databuf = "TEST";
+  char *file01 = "test01";
+  char *file02 = "test02";
+  char *dir01 = "dir01";
+
+  int n;
+  int len = strlen (databuf);
+
+  const char *wd = __func__;
+  mode_t mode = S_IRWXU | S_IRWXG | S_IRWXO;
+  /*
+   * Create a new directory and change to this
+   */
+  status = mkdir (wd, mode);
+  rtems_test_assert (status == 0);
+  status = chdir (wd);
+  rtems_test_assert (status == 0);
+
+  /*
+   * Create two files
+   */
+  fd = open (file01, O_CREAT | O_WRONLY, mode);
+  n = write (fd, databuf, len);
+  rtems_test_assert (n == len);
+  status = close (fd);
+  rtems_test_assert (status == 0);
+
+  fd = open (file02, O_CREAT | O_WRONLY, mode);
+  n = write (fd, databuf, len);
+  rtems_test_assert (n == len);
+  status = close (fd);
+  rtems_test_assert (status == 0);
+  /*
+   * If O_CREAT is set and the file did not previously exist, upon
+   * successful completion, open() shall mark for update the st_atime,
+   * st_ctime, and st_mtime fields of the file and the st_ctime and
+   * st_mtime fields of the parent directory.
+   */
+  status = stat (file01, &statbuf);
+  rtems_test_assert (status == 0);
+  ctime1 = statbuf.st_ctime;
+  mtime1 = statbuf.st_mtime;
+
+  status = stat (".", &statbuf);
+  rtems_test_assert (status == 0);
+  ctime2 = statbuf.st_ctime;
+  mtime2 = statbuf.st_mtime;
+
+  /*
+   * Make sure they are the same 
+   */
+
+  rtems_test_assert (TIME_EQUAL (ctime1, mtime1));
+  rtems_test_assert (TIME_EQUAL (ctime1, mtime2));
+  rtems_test_assert (TIME_EQUAL (ctime1, ctime2));
+
+  status = stat (file02, &statbuf);
+  rtems_test_assert (status == 0);
+  ctime1 = statbuf.st_ctime;
+  mtime1 = statbuf.st_mtime;
+
+  status = stat (".", &statbuf);
+  rtems_test_assert (status == 0);
+  ctime2 = statbuf.st_ctime;
+  mtime2 = statbuf.st_mtime;
+
+  /*
+   * Make sure they are the same 
+   */
+  rtems_test_assert (TIME_EQUAL (ctime1, mtime1));
+  rtems_test_assert (TIME_EQUAL (ctime1, mtime2));
+  rtems_test_assert (TIME_EQUAL (ctime1, ctime2));
+
+  /*
+   * Sleep a few seconds
+   */
+  puts ("Sleep a few seconds");
+
+  sleep (TIME_PRECISION);
+
+  /*
+   * Create an empty directory 
+   */
+  status = mkdir (dir01, mode);
+  rtems_test_assert (status == 0);
+  /*
+   * truncate file01 to len, so it does not changes the file size
+   */
+  status = truncate (file01, len);
+  rtems_test_assert (status == 0);
+
+  /*
+   *truncate file02 to len+1, it changes the file size
+   */
+  status = truncate (file02, len + 1);
+  rtems_test_assert (status == 0);
+
+  /*
+   *
+   *  truncate shall not modify the file offset for any open file
+   *   descriptions associated with the file. Upon successful completion,
+   *   if the file size is changed, this function shall mark for update
+   *   the st_ctime and st_mtime fields of the file 
+   */
+
+  /*
+   * file01 shall not update 
+   */
+  status = stat (file01, &statbuf);
+  rtems_test_assert (status == 0);
+  ctime2 = statbuf.st_ctime;
+  mtime2 = statbuf.st_mtime;
+
+  rtems_test_assert (TIME_EQUAL (ctime1, mtime2));
+  rtems_test_assert (TIME_EQUAL (ctime1, ctime2));
+
+  /*
+   * file02 shall update
+   */
+  status = stat (file02, &statbuf);
+  rtems_test_assert (status == 0);
+  ctime2 = statbuf.st_ctime;
+  mtime2 = statbuf.st_mtime;
+
+  rtems_test_assert (TIME_EQUAL (ctime2, mtime2));
+  rtems_test_assert (!TIME_EQUAL (ctime1, mtime2));
+  rtems_test_assert (!TIME_EQUAL (ctime1, ctime2));
+
+  /*
+   *  Upon successful completion, mkdir() shall mark for update the 
+   *  5st_atime, st_ctime, and st_mtime fields of the directory.
+   *  Also, the st_ctime and st_mtime fields of the directory that
+   *  contains the new entry shall be marked for update.
+   */
+  status = stat (dir01, &statbuf);
+  rtems_test_assert (status == 0);
+  ctime2 = statbuf.st_ctime;
+  mtime2 = statbuf.st_mtime;
+  rtems_test_assert (TIME_EQUAL (ctime2, mtime2));
+  rtems_test_assert (!TIME_EQUAL (ctime1, mtime2));
+  rtems_test_assert (!TIME_EQUAL (ctime1, ctime2));
+
+  status = stat (".", &statbuf);
+  rtems_test_assert (status == 0);
+  ctime2 = statbuf.st_ctime;
+  mtime2 = statbuf.st_mtime;
+
+  rtems_test_assert (!TIME_EQUAL (ctime1, ctime2));
+  rtems_test_assert (!TIME_EQUAL (ctime1, mtime2));
+
+  /*
+   * Upon successful completion, where nbyte is greater than 0,
+   * write() shall mark for update the st_ctime and st_mtime fields of the file
+   */
+
+  /*
+   * read file01, and this should not uptate st_mtime and st_ctime
+   */
+  readbuf = (char *) malloc (len + 1);
+  fd = open (file01, O_RDONLY);
+  rtems_test_assert (fd != -1);
+  n = read (fd, readbuf, len);
+  rtems_test_assert (n == len);
+  status = fstat (fd, &statbuf);
+
+  ctime2 = statbuf.st_ctime;
+  mtime2 = statbuf.st_mtime;
+
+  rtems_test_assert (TIME_EQUAL (ctime1, ctime2));
+  rtems_test_assert (TIME_EQUAL (ctime1, mtime2));
+
+  status = close (fd);
+  rtems_test_assert (status == 0);
+  /*
+   * write file01, and this should uptate st_mtime st_ctime
+   */
+  readbuf = (char *) malloc (len + 1);
+  fd = open (file01, O_WRONLY);
+  rtems_test_assert (fd != -1);
+  n = write (fd, databuf, len);
+  rtems_test_assert (n == len);
+  status = fstat (fd, &statbuf);
+
+  ctime2 = statbuf.st_ctime;
+  mtime2 = statbuf.st_mtime;
+
+  rtems_test_assert (!TIME_EQUAL (ctime1, ctime2));
+  rtems_test_assert (!TIME_EQUAL (ctime1, mtime2));
+  status = close (fd);
+  rtems_test_assert (status == 0);
+
+  /*
+   * The utime() function shall set the access and modification times
+   *  of the file named by the path argument.
+   */
+  timbuf.actime = ctime1;
+  timbuf.modtime = mtime1;
+
+  status = utime (file01, &timbuf);
+  rtems_test_assert (status == 0);
+
+  status = stat (file01, &statbuf);
+  ctime2 = statbuf.st_atime;
+  mtime2 = statbuf.st_mtime;
+
+  rtems_test_assert (TIME_EQUAL (ctime1, ctime2));
+  rtems_test_assert (TIME_EQUAL (ctime1, mtime2));
+
+  status = utime (dir01, &timbuf);
+  rtems_test_assert (status == 0);
+
+  status = stat (dir01, &statbuf);
+  ctime2 = statbuf.st_atime;
+  mtime2 = statbuf.st_mtime;
+
+  rtems_test_assert (TIME_EQUAL (ctime1, ctime2));
+  rtems_test_assert (TIME_EQUAL (ctime1, mtime2));
+
+}
+
+/*
+ * These tests only get time_t value, and test 
+ * if they are changed. Thest tests don't check atime
+ */
+void test (void)
+{
+
+  puts( "\n\n*** TIME TEST ***" );
+  time_test01();
+  puts( "*** END OF TIME TEST ***" );
+}
Index: testsuites/fstests/imfs_fserror/.cvsignore
===================================================================
--- testsuites/fstests/imfs_fserror/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/imfs_fserror/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/imfs_fserror/Makefile.am
===================================================================
--- testsuites/fstests/imfs_fserror/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/imfs_fserror/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,37 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = imfs_fserror
+imfs_fserror_SOURCES  =  ../fserror/test.c
+imfs_fserror_SOURCES += ../support/fstest_support.c
+imfs_fserror_SOURCES += ../support/fstest_support.h
+imfs_fserror_SOURCES += ../support/fstest.h
+imfs_fserror_SOURCES += ../../psxtests/include/pmacros.h
+imfs_fserror_SOURCES += ../imfs_support/fs_support.c
+imfs_fserror_SOURCES += ../imfs_support/fs_config.h 
+
+#dist_rtems_tests_DATA = imfs_fserror.scn
+#dist_rtems_tests_DATA += imfs_fserror.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+imfs_fserror_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/imfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(imfs_fserror_OBJECTS) $(imfs_fserror_LDADD)
+LINK_LIBS = $(imfs_fserror_LDLIBS)
+
+imfs_fserror$(EXEEXT): $(imfs_fserror_OBJECTS) $(imfs_fserror_DEPENDENCIES)
+	@rm -f imfs_fserror$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/imfs_fslink/.cvsignore
===================================================================
--- testsuites/fstests/imfs_fslink/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/imfs_fslink/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/imfs_fslink/Makefile.am
===================================================================
--- testsuites/fstests/imfs_fslink/Makefile.am	(revision 858e013f5aa4f41bc6da7b22368044b4bae7d7ed)
+++ testsuites/fstests/imfs_fslink/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -6,8 +6,11 @@
 
 rtems_tests_PROGRAMS = imfs_fslink
-imfs_fslink_SOURCES =  ../fslink/test.c ../support/fstest_support.c\
-         ../support/fstest_support.h ../support/fstest.h   ../../psxtests/include/pmacros.h \
-  ../imfs_support/fs_support.c ../imfs_support/fs_config.h 
-
+imfs_fslink_SOURCES  =  ../fslink/test.c
+imfs_fslink_SOURCES +=  ../support/fstest_support.c
+imfs_fslink_SOURCES += ../support/fstest_support.h
+imfs_fslink_SOURCES +=  ../support/fstest.h
+imfs_fslink_SOURCES += ../../psxtests/include/pmacros.h
+imfs_fslink_SOURCES += ../imfs_support/fs_support.c
+imfs_fslink_SOURCES += ../imfs_support/fs_config.h 
 
 #dist_rtems_tests_DATA = imfs_fslink.scn
Index: testsuites/fstests/imfs_fspatheval/.cvsignore
===================================================================
--- testsuites/fstests/imfs_fspatheval/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/imfs_fspatheval/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/imfs_fspatheval/Makefile.am
===================================================================
--- testsuites/fstests/imfs_fspatheval/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/imfs_fspatheval/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,37 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = imfs_fspatheval
+imfs_fspatheval_SOURCES  = ../fspatheval/test.c
+imfs_fspatheval_SOURCES += ../support/fstest_support.c
+imfs_fspatheval_SOURCES += ../support/fstest_support.h
+imfs_fspatheval_SOURCES += ../support/fstest.h
+imfs_fspatheval_SOURCES += ../../psxtests/include/pmacros.h
+imfs_fspatheval_SOURCES += ../imfs_support/fs_support.c
+imfs_fspatheval_SOURCES += ../imfs_support/fs_config.h 
+
+#dist_rtems_tests_DATA = imfs_fspatheval.scn
+#dist_rtems_tests_DATA += imfs_fspatheval.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+imfs_fspatheval_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/imfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(imfs_fspatheval_OBJECTS) $(imfs_fspatheval_LDADD)
+LINK_LIBS = $(imfs_fspatheval_LDLIBS)
+
+imfs_fspatheval$(EXEEXT): $(imfs_fspatheval_OBJECTS) $(imfs_fspatheval_DEPENDENCIES)
+	@rm -f imfs_fspatheval$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/imfs_fspermission/.cvsignore
===================================================================
--- testsuites/fstests/imfs_fspermission/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/imfs_fspermission/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/imfs_fspermission/Makefile.am
===================================================================
--- testsuites/fstests/imfs_fspermission/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/imfs_fspermission/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,37 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = imfs_fspermission
+imfs_fspermission_SOURCES  = ../fspermission/test.c
+imfs_fspermission_SOURCES += ../support/fstest_support.c
+imfs_fspermission_SOURCES += ../support/fstest_support.h
+imfs_fspermission_SOURCES += ../support/fstest.h
+imfs_fspermission_SOURCES += ../../psxtests/include/pmacros.h
+imfs_fspermission_SOURCES += ../imfs_support/fs_support.c
+imfs_fspermission_SOURCES += ../imfs_support/fs_config.h 
+
+#dist_rtems_tests_DATA = imfs_fspermission.scn
+#dist_rtems_tests_DATA += imfs_fspermission.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+imfs_fspermission_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/imfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(imfs_fspermission_OBJECTS) $(imfs_fspermission_LDADD)
+LINK_LIBS = $(imfs_fspermission_LDLIBS)
+
+imfs_fspermission$(EXEEXT): $(imfs_fspermission_OBJECTS) $(imfs_fspermission_DEPENDENCIES)
+	@rm -f imfs_fspermission$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/imfs_fsrdwr/.cvsignore
===================================================================
--- testsuites/fstests/imfs_fsrdwr/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/imfs_fsrdwr/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/imfs_fsrdwr/Makefile.am
===================================================================
--- testsuites/fstests/imfs_fsrdwr/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/imfs_fsrdwr/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,37 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = imfs_fsrdwr
+imfs_fsrdwr_SOURCES  = ../fsrdwr/init.c
+imfs_fsrdwr_SOURCES += ../support/fstest_support.c
+imfs_fsrdwr_SOURCES += ../support/fstest_support.h
+imfs_fsrdwr_SOURCES += ../support/fstest.h
+imfs_fsrdwr_SOURCES += ../../psxtests/include/pmacros.h
+imfs_fsrdwr_SOURCES += ../imfs_support/fs_support.c
+imfs_fsrdwr_SOURCES += ../imfs_support/fs_config.h 
+
+#dist_rtems_tests_DATA = imfs_fsrdwr.scn
+#dist_rtems_tests_DATA += imfs_fsrdwr.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+imfs_fsrdwr_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/imfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(imfs_fsrdwr_OBJECTS) $(imfs_fsrdwr_LDADD)
+LINK_LIBS = $(imfs_fsrdwr_LDLIBS)
+
+imfs_fsrdwr$(EXEEXT): $(imfs_fsrdwr_OBJECTS) $(imfs_fsrdwr_DEPENDENCIES)
+	@rm -f imfs_fsrdwr$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/imfs_fssymlink/.cvsignore
===================================================================
--- testsuites/fstests/imfs_fssymlink/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/imfs_fssymlink/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/imfs_fssymlink/Makefile.am
===================================================================
--- testsuites/fstests/imfs_fssymlink/Makefile.am	(revision 858e013f5aa4f41bc6da7b22368044b4bae7d7ed)
+++ testsuites/fstests/imfs_fssymlink/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -6,8 +6,11 @@
 
 rtems_tests_PROGRAMS = imfs_fssymlink
-imfs_fssymlink_SOURCES =  ../fssymlink/test.c ../support/fstest_support.c\
-         ../support/fstest_support.h ../support/fstest.h   ../../psxtests/include/pmacros.h \
-  ../imfs_support/fs_support.c ../imfs_support/fs_config.h 
-
+imfs_fssymlink_SOURCES  = ../fssymlink/test.c
+imfs_fssymlink_SOURCES += ../support/fstest_support.c
+imfs_fssymlink_SOURCES += ../support/fstest_support.h
+imfs_fssymlink_SOURCES += ../support/fstest.h
+imfs_fssymlink_SOURCES += ../../psxtests/include/pmacros.h
+imfs_fssymlink_SOURCES += ../imfs_support/fs_support.c
+imfs_fssymlink_SOURCES += ../imfs_support/fs_config.h
 
 #dist_rtems_tests_DATA = imfs_fssymlink.scn
Index: testsuites/fstests/imfs_fstime/.cvsignore
===================================================================
--- testsuites/fstests/imfs_fstime/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/imfs_fstime/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/imfs_fstime/Makefile.am
===================================================================
--- testsuites/fstests/imfs_fstime/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/imfs_fstime/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,37 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = imfs_fstime
+imfs_fstime_SOURCES  = ../fstime/test.c
+imfs_fstime_SOURCES += ../support/fstest_support.c
+imfs_fstime_SOURCES += ../support/fstest_support.h
+imfs_fstime_SOURCES += ../support/fstest.h
+imfs_fstime_SOURCES += ../../psxtests/include/pmacros.h
+imfs_fstime_SOURCES += ../imfs_support/fs_support.c
+imfs_fstime_SOURCES += ../imfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = imfs_fstime.scn
+#dist_rtems_tests_DATA += imfs_fstime.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+imfs_fstime_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/imfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(imfs_fstime_OBJECTS) $(imfs_fstime_LDADD)
+LINK_LIBS = $(imfs_fstime_LDLIBS)
+
+imfs_fstime$(EXEEXT): $(imfs_fstime_OBJECTS) $(imfs_fstime_DEPENDENCIES)
+	@rm -f imfs_fstime$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/imfs_support/fs_supprot.h
===================================================================
--- testsuites/fstests/imfs_support/fs_supprot.h	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/imfs_support/fs_supprot.h	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,40 @@
+/*
+ *  COPYRIGHT (c) 1989-2011.
+ *  On-Line Applications Research Corporation (OAR).
+ *
+ *  The license and distribution terms for this file may be
+ *  found in the file LICENSE in this distribution or at
+ *  http://www.rtems.com/license/LICENSE.
+ *
+ *  $Id Exp $
+ */
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+#include "pmacros.h"
+
+#include "fs_config.h"
+
+void test_initialize_filesystem(void)
+{
+  int rc=0;
+  rc=mkdir(BASE_FOR_TEST,0777);
+  rtems_test_assert(rc==0);
+}
+
+void test_shutdown_filesystem(void)
+{
+}
+/* configuration information */
+#define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER
+#define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER
+
+#define CONFIGURE_RTEMS_INIT_TASKS_TABLE
+
+#define CONFIGURE_MAXIMUM_TASKS 1
+#define CONFIGURE_USE_IMFS_AS_BASE_FILESYSTEM
+#define CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS 40
+
+#define CONFIGURE_INIT
+
+#include <rtems/confdefs.h>
Index: testsuites/fstests/mdosfs_fserror/.cvsignore
===================================================================
--- testsuites/fstests/mdosfs_fserror/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mdosfs_fserror/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mdosfs_fserror/Makefile.am
===================================================================
--- testsuites/fstests/mdosfs_fserror/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mdosfs_fserror/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,39 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = mdosfs_fserror
+mdosfs_fserror_SOURCES  = ../fserror/test.c
+mdosfs_fserror_SOURCES += ../support/ramdisk_support.c
+mdosfs_fserror_SOURCES += ../support/fstest_support.c
+mdosfs_fserror_SOURCES += ../support/fstest_support.h
+mdosfs_fserror_SOURCES += ../support/ramdisk_support.h
+mdosfs_fserror_SOURCES += ../support/fstest.h
+mdosfs_fserror_SOURCES += ../../psxtests/include/pmacros.h
+mdosfs_fserror_SOURCES += ../mdosfs_support/fs_support.c
+mdosfs_fserror_SOURCES += ../mdosfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = mdosfs_fserror.scn
+#dist_rtems_tests_DATA += mdosfs_fserror.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+mdosfs_fserror_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/mdosfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(mdosfs_fserror_OBJECTS) $(mdosfs_fserror_LDADD)
+LINK_LIBS = $(mdosfs_fserror_LDLIBS)
+
+mdosfs_fserror$(EXEEXT): $(mdosfs_fserror_OBJECTS) $(mdosfs_fserror_DEPENDENCIES)
+	@rm -f mdosfs_fserror$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/mdosfs_fspatheval/.cvsignore
===================================================================
--- testsuites/fstests/mdosfs_fspatheval/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mdosfs_fspatheval/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mdosfs_fspatheval/Makefile.am
===================================================================
--- testsuites/fstests/mdosfs_fspatheval/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mdosfs_fspatheval/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,39 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = mdosfs_fspatheval
+mdosfs_fspatheval_SOURCES  = ../fspatheval/test.c
+mdosfs_fspatheval_SOURCES += ../support/ramdisk_support.c
+mdosfs_fspatheval_SOURCES += ../support/fstest_support.c
+mdosfs_fspatheval_SOURCES += ../support/fstest_support.h
+mdosfs_fspatheval_SOURCES += ../support/ramdisk_support.h
+mdosfs_fspatheval_SOURCES += ../support/fstest.h
+mdosfs_fspatheval_SOURCES += ../../psxtests/include/pmacros.h
+mdosfs_fspatheval_SOURCES += ../mdosfs_support/fs_support.c
+mdosfs_fspatheval_SOURCES += ../mdosfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = mdosfs_fspatheval.scn
+#dist_rtems_tests_DATA += mdosfs_fspatheval.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+mdosfs_fspatheval_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/mdosfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(mdosfs_fspatheval_OBJECTS) $(mdosfs_fspatheval_LDADD)
+LINK_LIBS = $(mdosfs_fspatheval_LDLIBS)
+
+mdosfs_fspatheval$(EXEEXT): $(mdosfs_fspatheval_OBJECTS) $(mdosfs_fspatheval_DEPENDENCIES)
+	@rm -f mdosfs_fspatheval$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/mdosfs_fsrdwr/.cvsignore
===================================================================
--- testsuites/fstests/mdosfs_fsrdwr/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mdosfs_fsrdwr/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mdosfs_fsrdwr/Makefile.am
===================================================================
--- testsuites/fstests/mdosfs_fsrdwr/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mdosfs_fsrdwr/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,39 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = mdosfs_fsrdwr
+mdosfs_fsrdwr_SOURCES  = ../fsrdwr/init.c
+mdosfs_fsrdwr_SOURCES += ../support/ramdisk_support.c
+mdosfs_fsrdwr_SOURCES += ../support/fstest_support.c
+mdosfs_fsrdwr_SOURCES += ../support/fstest_support.h
+mdosfs_fsrdwr_SOURCES += ../support/ramdisk_support.h
+mdosfs_fsrdwr_SOURCES += ../support/fstest.h
+mdosfs_fsrdwr_SOURCES += ../../psxtests/include/pmacros.h
+mdosfs_fsrdwr_SOURCES += ../mdosfs_support/fs_support.c
+mdosfs_fsrdwr_SOURCES += ../mdosfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = mdosfs_fsrdwr.scn
+#dist_rtems_tests_DATA += mdosfs_fsrdwr.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+mdosfs_fsrdwr_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/mdosfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(mdosfs_fsrdwr_OBJECTS) $(mdosfs_fsrdwr_LDADD)
+LINK_LIBS = $(mdosfs_fsrdwr_LDLIBS)
+
+mdosfs_fsrdwr$(EXEEXT): $(mdosfs_fsrdwr_OBJECTS) $(mdosfs_fsrdwr_DEPENDENCIES)
+	@rm -f mdosfs_fsrdwr$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/mdosfs_fstime/.cvsignore
===================================================================
--- testsuites/fstests/mdosfs_fstime/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mdosfs_fstime/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mdosfs_fstime/Makefile.am
===================================================================
--- testsuites/fstests/mdosfs_fstime/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mdosfs_fstime/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,39 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = mdosfs_fstime
+mdosfs_fstime_SOURCES  = ../fstime/test.c
+mdosfs_fstime_SOURCES += ../support/ramdisk_support.c
+mdosfs_fstime_SOURCES += ../support/fstest_support.c
+mdosfs_fstime_SOURCES += ../support/fstest_support.h
+mdosfs_fstime_SOURCES += ../support/ramdisk_support.h
+mdosfs_fstime_SOURCES += ../support/fstest.h
+mdosfs_fstime_SOURCES += ../../psxtests/include/pmacros.h
+mdosfs_fstime_SOURCES += ../mdosfs_support/fs_support.c
+mdosfs_fstime_SOURCES += ../mdosfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = mdosfs_fstime.scn
+#dist_rtems_tests_DATA += mdosfs_fstime.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+mdosfs_fstime_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/mdosfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(mdosfs_fstime_OBJECTS) $(mdosfs_fstime_LDADD)
+LINK_LIBS = $(mdosfs_fstime_LDLIBS)
+
+mdosfs_fstime$(EXEEXT): $(mdosfs_fstime_OBJECTS) $(mdosfs_fstime_DEPENDENCIES)
+	@rm -f mdosfs_fstime$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/mimfs_fserror/.cvsignore
===================================================================
--- testsuites/fstests/mimfs_fserror/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mimfs_fserror/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mimfs_fserror/Makefile.am
===================================================================
--- testsuites/fstests/mimfs_fserror/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mimfs_fserror/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,37 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = mimfs_fserror
+mimfs_fserror_SOURCES  = ../fserror/test.c
+mimfs_fserror_SOURCES += ../support/fstest_support.c
+mimfs_fserror_SOURCES += ../support/fstest_support.h
+mimfs_fserror_SOURCES += ../support/fstest.h
+mimfs_fserror_SOURCES += ../../psxtests/include/pmacros.h
+mimfs_fserror_SOURCES += ../mimfs_support/fs_support.c
+mimfs_fserror_SOURCES += ../mimfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = mimfs_fserror.scn
+#dist_rtems_tests_DATA += mimfs_fserror.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+mimfs_fserror_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/mimfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(mimfs_fserror_OBJECTS) $(mimfs_fserror_LDADD)
+LINK_LIBS = $(mimfs_fserror_LDLIBS)
+
+mimfs_fserror$(EXEEXT): $(mimfs_fserror_OBJECTS) $(mimfs_fserror_DEPENDENCIES)
+	@rm -f mimfs_fserror$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/mimfs_fslink/.cvsignore
===================================================================
--- testsuites/fstests/mimfs_fslink/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mimfs_fslink/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mimfs_fslink/Makefile.am
===================================================================
--- testsuites/fstests/mimfs_fslink/Makefile.am	(revision 858e013f5aa4f41bc6da7b22368044b4bae7d7ed)
+++ testsuites/fstests/mimfs_fslink/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -6,9 +6,11 @@
 
 rtems_tests_PROGRAMS = mimfs_fslink
-mimfs_fslink_SOURCES =  ../fslink/test.c ../support/fstest_support.c\
-         ../support/fstest_support.h ../support/fstest.h  \
-				 ../../psxtests/include/pmacros.h \
-  ../mimfs_support/fs_support.c ../mimfs_support/fs_config.h 
-
+mimfs_fslink_SOURCES  = ../fslink/test.c
+mimfs_fslink_SOURCES += ../support/fstest_support.c
+mimfs_fslink_SOURCES += ../support/fstest_support.h
+mimfs_fslink_SOURCES += ../support/fstest.h
+mimfs_fslink_SOURCES += ../../psxtests/include/pmacros.h
+mimfs_fslink_SOURCES += ../mimfs_support/fs_support.c
+mimfs_fslink_SOURCES += ../mimfs_support/fs_config.h
 
 #dist_rtems_tests_DATA = mimfs_fslink.scn
Index: testsuites/fstests/mimfs_fspatheval/.cvsignore
===================================================================
--- testsuites/fstests/mimfs_fspatheval/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mimfs_fspatheval/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mimfs_fspatheval/Makefile.am
===================================================================
--- testsuites/fstests/mimfs_fspatheval/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mimfs_fspatheval/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,37 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = mimfs_fspatheval
+mimfs_fspatheval_SOURCES  = ../fspatheval/test.c
+mimfs_fspatheval_SOURCES += ../support/fstest_support.c
+mimfs_fspatheval_SOURCES += ../support/fstest_support.h
+mimfs_fspatheval_SOURCES += ../support/fstest.h
+mimfs_fspatheval_SOURCES += ../../psxtests/include/pmacros.h
+mimfs_fspatheval_SOURCES += ../mimfs_support/fs_support.c
+mimfs_fspatheval_SOURCES += ../mimfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = mimfs_fspatheval.scn
+#dist_rtems_tests_DATA += mimfs_fspatheval.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+mimfs_fspatheval_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/mimfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(mimfs_fspatheval_OBJECTS) $(mimfs_fspatheval_LDADD)
+LINK_LIBS = $(mimfs_fspatheval_LDLIBS)
+
+mimfs_fspatheval$(EXEEXT): $(mimfs_fspatheval_OBJECTS) $(mimfs_fspatheval_DEPENDENCIES)
+	@rm -f mimfs_fspatheval$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/mimfs_fspermission/.cvsignore
===================================================================
--- testsuites/fstests/mimfs_fspermission/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mimfs_fspermission/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mimfs_fspermission/Makefile.am
===================================================================
--- testsuites/fstests/mimfs_fspermission/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mimfs_fspermission/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,37 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = mimfs_fspermission
+mimfs_fspermission_SOURCES  = ../fspermission/test.c
+mimfs_fspermission_SOURCES += ../support/fstest_support.c
+mimfs_fspermission_SOURCES += ../support/fstest_support.h
+mimfs_fspermission_SOURCES += ../support/fstest.h
+mimfs_fspermission_SOURCES += ../../psxtests/include/pmacros.h
+mimfs_fspermission_SOURCES += ../mimfs_support/fs_support.c
+mimfs_fspermission_SOURCES += ../mimfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = mimfs_fspermission.scn
+#dist_rtems_tests_DATA += mimfs_fspermission.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+mimfs_fspermission_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/mimfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(mimfs_fspermission_OBJECTS) $(mimfs_fspermission_LDADD)
+LINK_LIBS = $(mimfs_fspermission_LDLIBS)
+
+mimfs_fspermission$(EXEEXT): $(mimfs_fspermission_OBJECTS) $(mimfs_fspermission_DEPENDENCIES)
+	@rm -f mimfs_fspermission$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/mimfs_fsrdwr/.cvsignore
===================================================================
--- testsuites/fstests/mimfs_fsrdwr/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mimfs_fsrdwr/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mimfs_fsrdwr/Makefile.am
===================================================================
--- testsuites/fstests/mimfs_fsrdwr/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mimfs_fsrdwr/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,37 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = mimfs_fsrdwr
+mimfs_fsrdwr_SOURCES  = ../fsrdwr/init.c
+mimfs_fsrdwr_SOURCES += ../support/fstest_support.c
+mimfs_fsrdwr_SOURCES += ../support/fstest_support.h
+mimfs_fsrdwr_SOURCES += ../support/fstest.h
+mimfs_fsrdwr_SOURCES += ../../psxtests/include/pmacros.h
+mimfs_fsrdwr_SOURCES += ../mimfs_support/fs_support.c
+mimfs_fsrdwr_SOURCES += ../mimfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = mimfs_fsrdwr.scn
+#dist_rtems_tests_DATA += mimfs_fsrdwr.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+mimfs_fsrdwr_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/mimfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(mimfs_fsrdwr_OBJECTS) $(mimfs_fsrdwr_LDADD)
+LINK_LIBS = $(mimfs_fsrdwr_LDLIBS)
+
+mimfs_fsrdwr$(EXEEXT): $(mimfs_fsrdwr_OBJECTS) $(mimfs_fsrdwr_DEPENDENCIES)
+	@rm -f mimfs_fsrdwr$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/mimfs_fssymlink/.cvsignore
===================================================================
--- testsuites/fstests/mimfs_fssymlink/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mimfs_fssymlink/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mimfs_fssymlink/Makefile.am
===================================================================
--- testsuites/fstests/mimfs_fssymlink/Makefile.am	(revision 858e013f5aa4f41bc6da7b22368044b4bae7d7ed)
+++ testsuites/fstests/mimfs_fssymlink/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -6,8 +6,11 @@
 
 rtems_tests_PROGRAMS = mimfs_fssymlink
-mimfs_fssymlink_SOURCES =  ../fssymlink/test.c ../support/fstest_support.c\
-         ../support/fstest_support.h ../support/fstest.h   ../../psxtests/include/pmacros.h \
-  ../mimfs_support/fs_support.c ../mimfs_support/fs_config.h 
-
+mimfs_fssymlink_SOURCES  = ../fssymlink/test.c
+mimfs_fssymlink_SOURCES += ../support/fstest_support.c
+mimfs_fssymlink_SOURCES += ../support/fstest_support.h
+mimfs_fssymlink_SOURCES += ../support/fstest.h
+mimfs_fssymlink_SOURCES += ../../psxtests/include/pmacros.h
+mimfs_fssymlink_SOURCES += ../mimfs_support/fs_support.c
+mimfs_fssymlink_SOURCES += ../mimfs_support/fs_config.h
 
 #dist_rtems_tests_DATA = mimfs_fssymlink.scn
Index: testsuites/fstests/mimfs_fstime/.cvsignore
===================================================================
--- testsuites/fstests/mimfs_fstime/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mimfs_fstime/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mimfs_fstime/Makefile.am
===================================================================
--- testsuites/fstests/mimfs_fstime/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mimfs_fstime/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,37 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = mimfs_fstime
+mimfs_fstime_SOURCES  = ../fstime/test.c
+mimfs_fstime_SOURCES += ../support/fstest_support.c
+mimfs_fstime_SOURCES += ../support/fstest_support.h
+mimfs_fstime_SOURCES += ../support/fstest.h
+mimfs_fstime_SOURCES += ../../psxtests/include/pmacros.h
+mimfs_fstime_SOURCES += ../mimfs_support/fs_support.c
+mimfs_fstime_SOURCES += ../mimfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = mimfs_fstime.scn
+#dist_rtems_tests_DATA += mimfs_fstime.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+mimfs_fstime_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/mimfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(mimfs_fstime_OBJECTS) $(mimfs_fstime_LDADD)
+LINK_LIBS = $(mimfs_fstime_LDLIBS)
+
+mimfs_fstime$(EXEEXT): $(mimfs_fstime_OBJECTS) $(mimfs_fstime_DEPENDENCIES)
+	@rm -f mimfs_fstime$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/mrfs_fserror/.cvsignore
===================================================================
--- testsuites/fstests/mrfs_fserror/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mrfs_fserror/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mrfs_fserror/Makefile.am
===================================================================
--- testsuites/fstests/mrfs_fserror/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mrfs_fserror/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,39 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = mrfs_fserror
+mrfs_fserror_SOURCES  = ../fserror/test.c
+mrfs_fserror_SOURCES += ../support/ramdisk_support.c
+mrfs_fserror_SOURCES += ../support/fstest_support.c
+mrfs_fserror_SOURCES += ../support/fstest_support.h
+mrfs_fserror_SOURCES += ../support/ramdisk_support.h
+mrfs_fserror_SOURCES += ../support/fstest.h
+mrfs_fserror_SOURCES += ../../psxtests/include/pmacros.h
+mrfs_fserror_SOURCES += ../mrfs_support/fs_support.c
+mrfs_fserror_SOURCES += ../mrfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = mrfs_fserror.scn
+#dist_rtems_tests_DATA += mrfs_fserror.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+mrfs_fserror_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/mrfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(mrfs_fserror_OBJECTS) $(mrfs_fserror_LDADD)
+LINK_LIBS = $(mrfs_fserror_LDLIBS)
+
+mrfs_fserror$(EXEEXT): $(mrfs_fserror_OBJECTS) $(mrfs_fserror_DEPENDENCIES)
+	@rm -f mrfs_fserror$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/mrfs_fslink/.cvsignore
===================================================================
--- testsuites/fstests/mrfs_fslink/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mrfs_fslink/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mrfs_fslink/Makefile.am
===================================================================
--- testsuites/fstests/mrfs_fslink/Makefile.am	(revision 858e013f5aa4f41bc6da7b22368044b4bae7d7ed)
+++ testsuites/fstests/mrfs_fslink/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -6,9 +6,13 @@
 
 rtems_tests_PROGRAMS = mrfs_fslink
-mrfs_fslink_SOURCES =  ../fslink/test.c ../support/ramdisk_support.c\
-         ../support/fstest_support.c ../support/fstest_support.h\
-         ../support/ramdisk_support.h ../support/fstest.h   ../../psxtests/include/pmacros.h \
-  ../mrfs_support/fs_support.c ../mrfs_support/fs_config.h 
-
+mrfs_fslink_SOURCES  = ../fslink/test.c
+mrfs_fslink_SOURCES += ../support/ramdisk_support.c
+mrfs_fslink_SOURCES += ../support/fstest_support.c
+mrfs_fslink_SOURCES += ../support/fstest_support.h
+mrfs_fslink_SOURCES += ../support/ramdisk_support.h
+mrfs_fslink_SOURCES += ../support/fstest.h
+mrfs_fslink_SOURCES += ../../psxtests/include/pmacros.h
+mrfs_fslink_SOURCES += ../mrfs_support/fs_support.c
+mrfs_fslink_SOURCES += ../mrfs_support/fs_config.h
 
 #dist_rtems_tests_DATA = mrfs_fslink.scn
Index: testsuites/fstests/mrfs_fspatheval/.cvsignore
===================================================================
--- testsuites/fstests/mrfs_fspatheval/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mrfs_fspatheval/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mrfs_fspatheval/Makefile.am
===================================================================
--- testsuites/fstests/mrfs_fspatheval/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mrfs_fspatheval/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,39 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = mrfs_fspatheval
+mrfs_fspatheval_SOURCES  = ../fspatheval/test.c
+mrfs_fspatheval_SOURCES += ../support/ramdisk_support.c
+mrfs_fspatheval_SOURCES += ../support/fstest_support.c
+mrfs_fspatheval_SOURCES += ../support/fstest_support.h
+mrfs_fspatheval_SOURCES += ../support/ramdisk_support.h
+mrfs_fspatheval_SOURCES += ../support/fstest.h
+mrfs_fspatheval_SOURCES += ../../psxtests/include/pmacros.h
+mrfs_fspatheval_SOURCES += ../mrfs_support/fs_support.c
+mrfs_fspatheval_SOURCES += ../mrfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = mrfs_fspatheval.scn
+#dist_rtems_tests_DATA += mrfs_fspatheval.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+mrfs_fspatheval_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/mrfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(mrfs_fspatheval_OBJECTS) $(mrfs_fspatheval_LDADD)
+LINK_LIBS = $(mrfs_fspatheval_LDLIBS)
+
+mrfs_fspatheval$(EXEEXT): $(mrfs_fspatheval_OBJECTS) $(mrfs_fspatheval_DEPENDENCIES)
+	@rm -f mrfs_fspatheval$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/mrfs_fspermission/.cvsignore
===================================================================
--- testsuites/fstests/mrfs_fspermission/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mrfs_fspermission/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mrfs_fspermission/Makefile.am
===================================================================
--- testsuites/fstests/mrfs_fspermission/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mrfs_fspermission/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,39 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = mrfs_fspermission
+mrfs_fspermission_SOURCES  = ../fspermission/test.c
+mrfs_fspermission_SOURCES += ../support/ramdisk_support.c
+mrfs_fspermission_SOURCES += ../support/fstest_support.c
+mrfs_fspermission_SOURCES += ../support/fstest_support.h
+mrfs_fspermission_SOURCES += ../support/ramdisk_support.h
+mrfs_fspermission_SOURCES += ../support/fstest.h
+mrfs_fspermission_SOURCES += ../../psxtests/include/pmacros.h
+mrfs_fspermission_SOURCES += ../mrfs_support/fs_support.c
+mrfs_fspermission_SOURCES += ../mrfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = mrfs_fspermission.scn
+#dist_rtems_tests_DATA += mrfs_fspermission.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+mrfs_fspermission_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/mrfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(mrfs_fspermission_OBJECTS) $(mrfs_fspermission_LDADD)
+LINK_LIBS = $(mrfs_fspermission_LDLIBS)
+
+mrfs_fspermission$(EXEEXT): $(mrfs_fspermission_OBJECTS) $(mrfs_fspermission_DEPENDENCIES)
+	@rm -f mrfs_fspermission$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/mrfs_fsrdwr/.cvsignore
===================================================================
--- testsuites/fstests/mrfs_fsrdwr/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mrfs_fsrdwr/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mrfs_fsrdwr/Makefile.am
===================================================================
--- testsuites/fstests/mrfs_fsrdwr/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mrfs_fsrdwr/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,39 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = mrfs_fsrdwr
+mrfs_fsrdwr_SOURCES  = ../fsrdwr/init.c
+mrfs_fsrdwr_SOURCES += ../support/ramdisk_support.c
+mrfs_fsrdwr_SOURCES += ../support/fstest_support.c
+mrfs_fsrdwr_SOURCES += ../support/fstest_support.h
+mrfs_fsrdwr_SOURCES += ../support/ramdisk_support.h
+mrfs_fsrdwr_SOURCES += ../support/fstest.h
+mrfs_fsrdwr_SOURCES += ../../psxtests/include/pmacros.h
+mrfs_fsrdwr_SOURCES += ../mrfs_support/fs_support.c
+mrfs_fsrdwr_SOURCES += ../mrfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = mrfs_fsrdwr.scn
+#dist_rtems_tests_DATA += mrfs_fsrdwr.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+mrfs_fsrdwr_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/mrfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(mrfs_fsrdwr_OBJECTS) $(mrfs_fsrdwr_LDADD)
+LINK_LIBS = $(mrfs_fsrdwr_LDLIBS)
+
+mrfs_fsrdwr$(EXEEXT): $(mrfs_fsrdwr_OBJECTS) $(mrfs_fsrdwr_DEPENDENCIES)
+	@rm -f mrfs_fsrdwr$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
Index: testsuites/fstests/mrfs_fssymlink/.cvsignore
===================================================================
--- testsuites/fstests/mrfs_fssymlink/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mrfs_fssymlink/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mrfs_fssymlink/Makefile.am
===================================================================
--- testsuites/fstests/mrfs_fssymlink/Makefile.am	(revision 858e013f5aa4f41bc6da7b22368044b4bae7d7ed)
+++ testsuites/fstests/mrfs_fssymlink/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -6,9 +6,13 @@
 
 rtems_tests_PROGRAMS = mrfs_fssymlink
-mrfs_fssymlink_SOURCES =  ../fssymlink/test.c ../support/ramdisk_support.c\
-         ../support/fstest_support.c ../support/fstest_support.h\
-         ../support/ramdisk_support.h ../support/fstest.h   ../../psxtests/include/pmacros.h \
-  ../mrfs_support/fs_support.c ../mrfs_support/fs_config.h 
-
+mrfs_fssymlink_SOURCES  = ../fssymlink/test.c
+mrfs_fssymlink_SOURCES += ../support/ramdisk_support.c
+mrfs_fssymlink_SOURCES += ../support/fstest_support.c
+mrfs_fssymlink_SOURCES += ../support/fstest_support.h
+mrfs_fssymlink_SOURCES += ../support/ramdisk_support.h
+mrfs_fssymlink_SOURCES += ../support/fstest.h
+mrfs_fssymlink_SOURCES += ../../psxtests/include/pmacros.h
+mrfs_fssymlink_SOURCES += ../mrfs_support/fs_support.c
+mrfs_fssymlink_SOURCES += ../mrfs_support/fs_config.h
 
 #dist_rtems_tests_DATA = mrfs_fssymlink.scn
Index: testsuites/fstests/mrfs_fstime/.cvsignore
===================================================================
--- testsuites/fstests/mrfs_fstime/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mrfs_fstime/.cvsignore	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,2 @@
+Makefile
+Makefile.in
Index: testsuites/fstests/mrfs_fstime/Makefile.am
===================================================================
--- testsuites/fstests/mrfs_fstime/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
+++ testsuites/fstests/mrfs_fstime/Makefile.am	(revision a7c39d3d3fb4a529b29d432b81769617093965d8)
@@ -0,0 +1,39 @@
+##
+##  $Id$
+##
+
+MANAGERS = all
+
+rtems_tests_PROGRAMS = mrfs_fstime
+mrfs_fstime_SOURCES  = ../fstime/test.c
+mrfs_fstime_SOURCES += ../support/ramdisk_support.c
+mrfs_fstime_SOURCES += ../support/fstest_support.c
+mrfs_fstime_SOURCES += ../support/fstest_support.h
+mrfs_fstime_SOURCES += ../support/ramdisk_support.h
+mrfs_fstime_SOURCES += ../support/fstest.h
+mrfs_fstime_SOURCES += ../../psxtests/include/pmacros.h
+mrfs_fstime_SOURCES += ../mrfs_support/fs_support.c
+mrfs_fstime_SOURCES += ../mrfs_support/fs_config.h
+
+#dist_rtems_tests_DATA = mrfs_fstime.scn
+#dist_rtems_tests_DATA += mrfs_fstime.doc
+
+include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
+include $(top_srcdir)/../automake/compile.am
+include $(top_srcdir)/../automake/leaf.am
+
+mrfs_fstime_LDADD = $(MANAGERS_NOT_WANTED:%=$(PROJECT_LIB)/no-%.rel)
+
+AM_CPPFLAGS += -I$(top_srcdir)/support
+AM_CPPFLAGS += -I$(top_srcdir)/mrfs_support
+AM_CPPFLAGS += -I$(top_srcdir)/../support/include
+AM_CPPFLAGS += -I$(top_srcdir)/../psxtests/include
+
+LINK_OBJS = $(mrfs_fstime_OBJECTS) $(mrfs_fstime_LDADD)
+LINK_LIBS = $(mrfs_fstime_LDLIBS)
+
+mrfs_fstime$(EXEEXT): $(mrfs_fstime_OBJECTS) $(mrfs_fstime_DEPENDENCIES)
+	@rm -f mrfs_fstime$(EXEEXT)
+	$(make-exe)
+
+include $(top_srcdir)/../automake/local.am
