Commit Graph

182 Commits

Author SHA1 Message Date
Sebastian Huber
b88c7583b8 fstests: Use tmacros.h instead of pmacros.h
This avoids an extra include path.

Update #3818.
2019-11-12 09:36:21 +01:00
Sebastian Huber
03fcbb15d2 fs: Add struct dirent::d_type support 2019-02-05 10:17:04 +01:00
Sebastian Huber
b015c01443 build: Do not install test programs 2019-01-30 09:46:35 +01:00
Sebastian Huber
9c12bcfdc5 Fix format warnings 2019-01-07 09:49:16 +01:00
Sebastian Huber
06331e4dcb dosfs: Fix device identifier
Update #3358.
2018-11-27 12:46:17 +01:00
Sebastian Huber
47b32a01a4 fsclose01: Fix uninitialized variable warning 2018-10-12 14:45:24 +02:00
Sebastian Huber
477bca2d61 build: Remove local.am 2018-10-10 07:57:47 +02:00
Sebastian Huber
9da5d5fd10 build: Directly reference libraries in tests
Remove use of TMPINSTALL_FILES.
2018-10-10 07:57:42 +02:00
Joel Sherrill
adbd7e747e fsdosfssync01/init.c: Remove unused variable 2018-08-15 09:47:53 -05:00
Sebastian Huber
dd66fda397 tests: Avoid deprecated rtems_disk_io_initialize()
Update #3358.
2018-08-07 07:17:18 +02:00
Sebastian Huber
24b94c4771 ramdisk: Use rtems_blkdev_create()
Update #3358.
2018-08-07 07:17:16 +02:00
Sebastian Huber
ea092ccc79 tools: Remove rtems-bin2c
This tool is now included in the RTEMS tools repository.

Close #3380.
2018-06-14 07:33:46 +02:00
Sebastian Huber
b422aa3f4a tests: Remove configure feature checks
Update #3409.
2018-05-02 07:11:03 +02:00
Joel Sherrill
c77cd426f8 Drop executable permissions on .[ch] files 2018-04-30 17:18:49 -05:00
Chris Johns
aa567bc1cc configure: Add subdir-objects to all automake flags.
This option silences warning with automake-1.16.1 allowing us to
upgrade to that version.

This change has been tested with automake-1.12.6 and automake-1.16.1.
It seems version 1.16.1 configures slower than 1.12.6 for the same
source and BSP. The newer versions is 6 second slower.

Close #3387.
2018-04-11 11:52:29 +10:00
Chris Johns
9e8df1fe2f fstest/fsrfsbitmap01: Update RFS bitmap tests to test fixes.
Add tests to check the patches for this ticket exist and are fixed.

Close #3089
2018-04-11 11:51:57 +10:00
Chris Johns
8967e5fa78 testsuite/fstests: Merged nested Makefile.am files into one Makefile.am
This change is part of the testsuite Makefile.am reorganization.

Update #3382
2018-04-10 08:24:54 +10:00
Sebastian Huber
2d0bc839ed build: Remove EXTRA_DIST
A "make dist" is not supported. So, it makes no sense to have pure "make
dist" related stuff in the Makefile.am.
2018-04-04 10:09:04 +02:00
Sebastian Huber
a3eec5cf35 fsclose01: Fix task mode, use attribute
Update #1971.
2018-02-09 13:17:45 +01:00
Sebastian Huber
48aa4b5d50 fsclose01: Use floating-point task
The tmpfile() uses sprintf().

Update #1971.
2018-02-09 13:14:52 +01:00
Sebastian Huber
4ac5ffbb83 fsclose01: Add tmpfile() test case
Close #1971.
2018-02-05 09:31:32 +01:00
Chris Johns
2afb22b7e1 Remove make preinstall
A speciality of the RTEMS build system was the make preinstall step.  It
copied header files from arbitrary locations into the build tree.  The
header files were included via the -Bsome/build/tree/path GCC command
line option.

This has at least seven problems:

* The make preinstall step itself needs time and disk space.

* Errors in header files show up in the build tree copy.  This makes it
  hard for editors to open the right file to fix the error.

* There is no clear relationship between source and build tree header
  files.  This makes an audit of the build process difficult.

* The visibility of all header files in the build tree makes it
  difficult to enforce API barriers.  For example it is discouraged to
  use BSP-specifics in the cpukit.

* An introduction of a new build system is difficult.

* Include paths specified by the -B option are system headers.  This
  may suppress warnings.

* The parallel build had sporadic failures on some hosts.

This patch removes the make preinstall step.   All installed header
files are moved to dedicated include directories in the source tree.
Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc,
etc.  Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g.
erc32, imx, qoriq, etc.

The new cpukit include directories are:

* cpukit/include

* cpukit/score/cpu/@RTEMS_CPU@/include

* cpukit/libnetworking

The new BSP include directories are:

* bsps/include

* bsps/@RTEMS_CPU@/include

* bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include

There are build tree include directories for generated files.

The include directory order favours the most general header file, e.g.
it is not possible to override general header files via the include path
order.

The "bootstrap -p" option was removed.  The new "bootstrap -H" option
should be used to regenerate the "headers.am" files.

Update #3254.
2018-01-25 08:45:26 +01:00
Sebastian Huber
5b7f922710 fstests: Use floating-point task
The fstests use snprintf().
2018-01-19 10:49:27 +01:00
Sebastian Huber
9c270ac663 fstests: Use floating-point task
The fstests use snprintf().
2018-01-19 09:47:39 +01:00
Christian Mauderer
2fe368787e dosfs: Allow creating a file with similar name.
If there is already a file with a long file name it isn't possible to
create a second file which has a name that ends on the first files name
(for example ets.beam and sets.beam). This patch fixes that.

Update #3258.
2017-12-07 07:30:16 +01:00
Christian Mauderer
ca835e5683 dosfs: Fix files with same name as volume name.
Take care that a file in the root directory with the same name as the
volume name can be found.

Update #3257.
2017-12-05 08:00:34 +01:00
Sebastian Huber
d71542c8be fsjffs2gc01: Fix sporadic test failures 2017-11-06 09:06:20 +01:00
Sebastian Huber
c4b8b147dd tests: Use simple console driver
Update #3170.
Update #3199.
2017-11-06 07:26:42 +01:00
Sebastian Huber
af4355459e tests: Remove TEST_INIT
The TEST_EXTERN is a used only by the system.h style tests and they use
CONFIGURE_INIT appropriately.

Update #3170.
Update #3199.
2017-10-28 13:33:56 +02:00
Sebastian Huber
acc9d06468 tests: Remove obsolete TESTS_USE_PRINTK
Update #3170.
Update #3199.
2017-10-28 13:33:55 +02:00
Chris Johns
98c6d50145 testsuite: Use printk for all test output where possible.
- Remove the printf support leaving the direct printk support configured
  with TESTS_USE_PRINTK and all other output goes via a buffered vsniprintf
  call to printk.
- Control the test's single init for functions and global data with
  TEST_INIT and not CONFIGURE_INIT. They are now separate.

Updates #3170.
2017-10-23 16:25:45 +11:00
Sebastian Huber
ac741625b0 libio: Use FIFO for iop free list
Update #3136.
2017-09-15 10:55:38 +02:00
Sebastian Huber
baef823cd5 libio: Add hold/drop iop reference
Check iop reference count in close() and return -1 with errno set to
EBUSY in case the file descriptor is still in use.

Update #3132.
2017-09-15 10:29:34 +02:00
Sebastian Huber
62f3fa84aa fstests/fsimfsgeneric01: Fix test assert 2017-09-14 07:02:29 +02:00
Sebastian Huber
fae59c9b42 dosfs: Support a cluster size of 64KiB
Close #3003.
2017-09-06 10:20:46 +02:00
Sebastian Huber
9d1522ed32 Fix IO control request type 2017-07-28 13:28:11 +02:00
Sebastian Huber
07e178005a tests: Use floating point task
These tests directly or indirectly use fprintf(), etc. which may use the
floating point unit.

Update #3076.
2017-07-18 14:14:34 +02:00
Chris Johns
258bda306b testsuite: Add a common test configuration. Fix configure.ac and Makefile.am errors.
- Add a top level test configuration file for test states that are common
  to all BSPs. This saves adding a test configuration (tcfg) file for
  every BSP.

- Add the test states 'user-input' and 'benchmark'. This
  lets 'rtems-test' stop the test rather than waiting for a timeout or
  letting a benchmark run without the user asking for it to run.

- Implement rtems-test-check in Python to make it faster. The shell script
  had grown to a point it was noticably slowing the build down.

- Fix the configure.ac and Makefile.am files for a number of the
  test directories. The files are difficiult to keep in sync with the
  number of tests and mistakes can happen such as tests being left
  out of the build. The test fsrofs01 is an example. Also a there was
  a mix of SUBDIRS and _SUBDIRS being used and only _SUBDIRS should be
  used.

- Fix the test fsrofs01 so it compiles.

Closes #2963.
2017-04-04 08:24:22 +10:00
Sebastian Huber
d50ab07938 dosfs: Fix file name search
Do not use our long file name entry count to optimize the file name
search. The Unicode comparison must be taken into account.

Update #2939.
2017-03-16 15:33:59 +01:00
Sebastian Huber
e69ee3629d dosfs: Fix fat_file_write()
Remove forced overwrite which leads to file data corruption.  The logic
to determine a forced overwrite was fundamentally broken.  For simplity,
disable this feature.

Update #2622.
2017-03-16 15:33:57 +01:00
Sebastian Huber
1becaa953e dosfs: Fix msdos_utf8_normalize_and_fold()
It is all right in case the result uses the full destination buffer.
Without this fix the handling of a maximum 8.3 short file name is
broken.

Update #2928.
2017-03-16 15:33:57 +01:00
Sebastian Huber
66fac03fae libio: Fix deadlock in location management
Perform a context-dependent deferred location release to avoid a
deadlock on the file system instance locks, for example during a
chdir().

Update #2936.
2017-03-16 15:33:56 +01:00
Sebastian Huber
d9c6542970 dosfs: Fix msdos_find_file_in_directory()
For a filename match the entry must match without anything remaining.

Close #2908.
2017-02-14 08:07:22 +01:00
Sebastian Huber
6af2221aac fsscandir01: Check MAXNAMLEN and NAME_MAX
Update #1394.
2017-01-24 10:08:33 +01:00
Sebastian Huber
ab834d65e4 JFFS2: RTEMS_JFFS2_ON_DEMAND_GARBAGE_COLLECTION
Update #2844.
2016-12-20 08:28:23 +01:00
Sebastian Huber
ade135d455 JFFS2: Add RTEMS_JFFS2_FORCE_GARBAGE_COLLECTION
Add IO control to force a garbage collection.

Update #2844.
2016-12-20 08:26:25 +01:00
Sebastian Huber
07c833f8f9 JFFS2: Add RTEMS_JFFS2_GET_INFO
Add IO control RTEMS_JFFS2_GET_INFO to get some JFFS2 filesystem
instance information.

Update #2844.
2016-12-20 08:26:21 +01:00
Sebastian Huber
caf4064680 fstests: Use printk() for IMFS configuration tests
This avoids problems with console drivers that require a more complete
IMFS.
2016-09-19 07:22:30 +02:00
Chris Johns
24d0ee57a4 cpukit, testsuite: Add rtems_printf and rtems_printer support.
This change adds rtems_printf and related functions and wraps the
RTEMS print plugin support into a user API. All references to the
plugin are removed and replaced with the rtems_printer interface.

Printk and related functions are made to return a valid number of
characters formatted and output.

The function attribute to check printf functions has been added
to rtems_printf and printk. No changes to remove warrnings are part
of this patch set.

The testsuite has been moved over to the rtems_printer. The testsuite
has a mix of rtems_printer access and direct print control via the
tmacros.h header file. The support for begink/endk has been removed
as it served no purpose and only confused the code base. The testsuite
has not been refactored to use rtems_printf. This is future work.
2016-05-25 15:47:34 +10:00
Sebastian Huber
ca4602e914 Use linker set for libio initialization
Update #2408.
2016-02-03 10:00:57 +01:00