Commit Graph

46 Commits

Author SHA1 Message Date
Chris Johns
b8c5935355 build: Fix make clean.
Update #3254.
2018-04-11 13:26:58 +10:00
Chris Johns
ee3d7dcb7f testsuites: Remove the test check from the subdir support.
Leave the parallel support so each test group builds in parallel.

Update #3382
2018-04-10 08:24:54 +10: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
Chris Johns
e6df806a3f tests: Use ld to map (wrap) printf, puts and putchar to tester functions.
- Remove the macro defines and the need for tmacro.h by remapping the
  symbols using ld's wrap option.
- Remove FLUSH_OUTPUT, it was empty.
- Move rtems_test_exit to libmisc/testsupport as a function.

Update #3199.
2017-11-11 16:14:59 +11:00
Chris Johns
7ec982bfeb build-system: Fix the targets support for the parallel build. 2017-05-26 10:35:17 +10:00
Chris Johns
30eeb0d15a testsuite: Fix excluding tests that a substring of another test.
Fix excluding `math` when there is a test `mathl`. The shell test
used fails in this case. This patch's approach is much simpler.
2017-05-25 15:11:45 +10:00
Chris Johns
7396e398cd testusite: Fix the parallel build test excludes. 2017-05-24 09:26:42 +10:00
Chris Johns
900c40730d testsuites: Build the tests in parallel if make is asked too. 2017-05-11 08:09:50 +10:00
Chris Johns
18f63c0004 testsuite: Fix rtems-test-check not excluding tests.
The include file handling was broken.

Add a test configuration data README.

Closes #2981.
2017-04-18 12:27:57 +10: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
Chris Johns
eb733202ad Fix rtems-test-check with a BSD sed.
BSD sed does not support '\t' and treated '[ \t]' as 3 characters. This patch
uses a standard method of supporting blank spaces.
2017-03-14 13:54:21 +11:00
Chris Johns
28fda6279b testsuite: Add test states to the testsuit configuration files.
Change the testsuite configuration files to hold state information about
a test. The states are:

 exclude        - Do not build the test
 expected-fail  - The test is expected to fail
 indeterminate  - The test may pass or may fail

A message is printed just after the test's BEGIN message to indicate
there is a special state for the test. No state message means the test
is expected to pass.

This support requires tests are correctly written to the use standard
support to begin and end a test.
2016-12-07 17:22:41 +11:00
Chris Johns
431bb85dde rtems-test-check: Ignore tests which require real ISR based clock tick
BSPs for simulators which do not include a clock tick interrupt source
are incapable of running some tests successfully. This is a common
characteristic of some BSPs and a fixed set of tests. There is no point
in duplicating this list of tests in those BSPs test configuration.

Read testsuites/testdata/require-tick-isr.tcfg for details.
2014-05-28 23:44:26 +10:00
Chris Johns
1461b648b7 testsuite: Add a per BSP test check for tests not to build.
Provide a file per BSP to list tests that do not build for a BSP. This change
removes the BSP_SMALL_MEMORY hack from the code. That hack was a
mistake.

Provide configuration files for each BSP with tests that cannot build.
2014-05-05 10:24:41 +10:00
Joel Sherrill
9b4422a251 Remove All CVS Id Strings Possible Using a Script
Script does what is expected and tries to do it as
smartly as possible.

+ remove occurrences of two blank comment lines
  next to each other after Id string line removed.
+ remove entire comment blocks which only exited to
  contain CVS Ids
+ If the processing left a blank line at the top of
  a file, it was removed.
2012-05-11 08:44:13 -05:00
Ralf Corsepius
4d8cd2216d 2010-07-31 Ralf Corsépius <ralf.corsepius@rtems.org>
* automake/compile.am: Remove clean-local:.
	Use CLEANFILES for cleaning up make-exe by-products.
2010-07-31 03:09:52 +00:00
Ralf Corsepius
8f53ef7177 2009-10-23 Ralf Corsepius <ralf.corsepius@rtems.org>
* automake/compile.am: Add *.ralf to clean-local.
2009-10-23 05:37:46 +00:00
Ralf Corsepius
fdd281672c Remove .obj 2005-11-22 14:13:42 +00:00
Ralf Corsepius
ee844b4749 2005-11-22 Ralf Corsepius <ralf.corsepius@rtems.org>
* automake/compile.am: Remove .coff.
2005-11-22 13:24:25 +00:00
Ralf Corsepius
bc82457e4f Remove depend. 2005-11-13 09:11:32 +00:00
Ralf Corsepius
82026e392f Remove preinstall, preinstall-recursive. 2005-11-13 08:58:29 +00:00
Ralf Corsepius
e29c44ebe7 Remove preinstall-am. 2005-11-13 08:58:10 +00:00
Ralf Corsepius
e3f801eb52 2005-11-13 Ralf Corsepius <ralf.corsepius@rtems.org>
* automake/compile.am: Remove LINK_OBJS. Remove LINK_FILES.
	Remove ARCH. Remove LINK_LIBS.
	Extend clean-local to catch most temporary files make-exe is
	creating.
2005-11-13 06:49:57 +00:00
Ralf Corsepius
703e81b58b Assume PROJECT_ROOT to contain RTEMS_BSP. 2005-11-09 09:30:22 +00:00
Ralf Corsepius
e3f1345fd0 Eliminate PROJECT_LIB.
Remove START_FILE, OBJS from LINK_FILES.
2005-11-09 03:45:22 +00:00
Ralf Corsepius
29db40a877 Remove RTEMS_CPPFLAGS, RTEMS_CFLAGS, RTEMS_CXXFLAGS. 2005-11-08 12:12:26 +00:00
Ralf Corsepius
6fb40f7adb Cleanup. 2005-11-08 11:49:22 +00:00
Ralf Corsepius
6f8e7a6d2b Remove RTEMS_BSP_SPECS, GCC_SPECS.
Don't manually set up GCCSPEC (Now setup from inside configure).
Remove RTEMS_RELLDFLAGS (Used).
2005-11-08 07:35:01 +00:00
Ralf Corsepius
2f77a6583b Remove CCAS support. 2005-11-08 06:37:51 +00:00
Ralf Corsepius
fa0ec2e042 Remove depend-am. 2005-11-07 10:10:47 +00:00
Ralf Corsepius
c61b7b6939 Remove depend. 2005-11-07 10:10:35 +00:00
Ralf Corsepius
1b77ea4a2a Remove depend-recursive. 2005-11-07 10:01:16 +00:00
Ralf Corsepius
d2ff8254ed Take contents of amcompile.am. 2005-11-07 09:11:31 +00:00
Ralf Corsepius
650b975051 Remove 2005-11-07 09:11:09 +00:00
Ralf Corsepius
42e191e8f6 New. 2005-11-07 07:23:38 +00:00
Ralf Corsepius
f002ec359d 2004-01-06 Ralf Corsepius <ralf.corsepius@rtems.org>
* automake/compile.am: Remove CLEANDIRS (Unused).
	Remove DEFS (Implicitly handled by automake).
2005-01-06 13:41:12 +00:00
Ralf Corsepius
0961040052 Remove duplicate CCAS. 2005-01-06 11:37:25 +00:00
Ralf Corsepius
73f5388d00 2004-01-06 Ralf Corsepius <ralf.corsepius@rtems.org>
* automake/compile.am: Remove CONFIG.CC (Unused).
	Remove CPPFLAGS, CFLAGS, CXXFLAGS, ASFLAGS (Implicitly handled by
	automake). Add CCAS. Use AM_*FLAGS = RTEMS_*FLAGS.
	Remove LIB_VARIANT from LINK_*.
	Cleanup comments.
2005-01-06 11:31:43 +00:00
Ralf Corsepius
b3f187354d 2004-01-06 Ralf Corsepius <ralf.corsepius@rtems.org>
* automake/compile.am: Remove AS, ASCOMPILE, make-rel (Unused).
	Remove build-variants. Hard-code ARCH=o-optimize.
2005-01-06 11:23:24 +00:00
Ralf Corsepius
8f71a36f71 Remove stray white spaces. 2004-04-20 07:09:31 +00:00
Ralf Corsepius
4470b40a8a 2003-12-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/compile.am: Use $(mkdir_p) instead of $(mkinstalldirs).
2003-12-17 04:12:27 +00:00
Ralf Corsepius
d7e0507ddb 2003-12-15 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* aclocal/env-rtemsbsp.m4: Add PROJECT_LIB.
	* automake/compile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g.
2003-12-15 07:27:36 +00:00
Ralf Corsepius
3d02fadb82 2003-12-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/compila.am: Remove ARCH.
2003-12-12 16:12:03 +00:00
Ralf Corsepius
c17ed71126 2003-12-01 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/compile.am: Add $(ARCH)/$(dirstamp) rules.
	* aclocal/lead-dot.m4: New (from automake-1.7f).
	* aclocal/rtems-top.m4: Require AM_SET_LEADING_DOT.
	Add AC_SUBST(dirstamp).
2003-12-01 21:38:43 +00:00
Ralf Corsepius
94e18016c8 2003-08-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/local.am, automake/host.am: Remove "debug".
2003-08-17 12:44:57 +00:00
Ralf Corsepius
4cd2df93b5 2003-08-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/compile.am, automake/host.am, automake/leaf.am
	automake/local.am, automake/subdirs.am: New (copied from
	../../../automake).
2003-08-16 16:24:45 +00:00