Commit Graph

24 Commits

Author SHA1 Message Date
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
7b00c2fac5 tests: Use <tmacros.h> in all tests
Update #3170.
Update #3199.
2017-11-06 09:06:20 +01: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
Joel Sherrill
33a105fb69 Revert: Remove CVS Ids
See http://www.rtems.org/pipermail/rtems-devel/2012-May/001006.html
for details.
2012-05-07 11:08:48 -05:00
Ralf Corsépius
4dec3529a1 Remove CVS-Ids. 2012-05-04 09:36:24 +02:00
Joel Sherrill
cd06294a08 2011-12-08 Joel Sherrill <joel.sherrill@oarcorp.com>
PR 1589/build
	* base_mp/node1/Makefile.am, base_mp/node2/Makefile.am,
	base_sp/Makefile.am, capture/Makefile.am, cdtest/Makefile.am,
	fileio/Makefile.am, hello/Makefile.am, iostream/Makefile.am,
	loopback/Makefile.am, minimum/Makefile.am, nsecs/Makefile.am,
	paranoia/Makefile.am, pppd/Makefile.am, ticker/Makefile.am,
	unlimited/Makefile.am: Remove obsolete optional manager capability.
2011-12-08 21:38:29 +00:00
Ralf Corsepius
3d5483771c Eliminate _exe_/.exe. 2009-04-03 12:55:13 +00:00
Joel Sherrill
dd61160701 2007-05-11 Joel Sherrill <joel.sherrill@OARcorp.com>
* base_sp/Makefile.am, hello/Makefile.am, iostream/Makefile.am,
	loopback/Makefile.am, nsecs/Makefile.am,
	pppd/Makefile.am, ticker/Makefile.am, ticker/system.h,
	unlimited/Makefile.am: Add optional managers to Makefiles. Clean up
	test cases so last output line follows END OF pattern. Make sure test
	case all run. All tests appeared ok on sis.
	* nsecs/init.c: Commit hack so test will compile when POSIX is
	disabled.  Remove hack when clock_gettime() is present even when
	--disable-posix.
2007-05-11 19:45:50 +00:00
Ralf Corsepius
d4f5ddcb85 Eliminate scndir, docdir. Use rtems_testsdir instead. 2006-07-11 04:54:10 +00:00
Ralf Corsepius
a6b588d649 Convert to using *_PROGRAMS. 2005-11-13 06:46:05 +00:00
Ralf Corsepius
3bb5d94490 Rework. 2005-11-11 14:33:33 +00:00
Ralf Corsepius
4024e57803 Cosmetics. 2005-11-11 10:26:50 +00:00
Ralf Corsepius
7e3887773a Eliminate TEST. 2005-11-11 09:03:24 +00:00
Ralf Corsepius
b669ec7ba5 Expand sample.am. 2005-11-11 07:36:47 +00:00
Ralf Corsepius
cb2818800d Eliminate DOCTYPES. 2005-11-10 22:21:20 +00:00
Ralf Corsepius
0ca5cba879 s/SAMPLE/TEST/ for improved consistency with other tests. 2005-11-10 14:52:28 +00:00
Ralf Corsepius
c4b6f76677 Remove SRCS, PRINT_SRCS. 2005-11-07 09:27:48 +00:00
Ralf Corsepius
d66557fac4 Switch back to include compile.am instead of amcompile.am 2005-11-07 09:09:26 +00:00
Ralf Corsepius
b98d0013c1 Partial conversion to automake. 2005-11-07 07:30:36 +00:00
Ralf Corsepius
51ca358ac7 2004-05-10 Ralf Corsepius <ralf_corsepius@rtems.org>
* configure.ac: Add CXX-checks. New conditionals CXXTESTS, MPTESTS,
	NETTESTS. Add iostream/.
	* Makefile.am, base_mp/node1/Makefile.am, base_mp/node2/Makefile.am
	cdtest/Makefile.am, loopback/Makefile.am, pppd/Makefile.am:
	Reflect changes above.
	* cdtest/main.cc: Adaptation to new C++ standards.
2004-05-10 16:02:11 +00:00
Ralf Corsepius
a00ee402bf 2004-01-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* base_mp/node1/Makefile.am: Re-add dirstamps to PRE/TMPINSTALL_FILES.
	Add PRE/TMPINSTALL_FILES to CLEANFILES.
	* base_mp/node2/Makefile.am: Ditto.
	* base_sp/Makefile.am: Ditto.
	* cdtest/Makefile.am: Ditto.
	* fileio/Makefile.am: Ditto.
	* hello/Makefile.am: Ditto.
	* loopback/Makefile.am: Ditto.
	* minimum/Makefile.am: Ditto.
	* paranoia/Makefile.am: Ditto.
	* pppd/Makefile.am: Ditto.
	* ticker/Makefile.am: Ditto.
	* unlimited/Makefile.am: Ditto.
2004-01-14 07:49:37 +00:00
Ralf Corsepius
9fa380ef52 2003-12-01 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* base_mp/Makefile.am: Reformat.
	* base_mp/node1/Makefile.am: Remove all-local: $(ARCH).
	* base_mp/node2/Makefile.am: Remove all-local: $(ARCH).
	* base_sp/Makefile.am: Remove all-local: $(ARCH).
	* cdtest/Makefile.am: Remove all-local: $(ARCH).
	* fileio/Makefile.am: Remove all-local: $(ARCH).
	* hello/Makefile.am: Remove all-local: $(ARCH).
	* loopback/Makefile.am: Remove all-local: $(ARCH).
	* minimum/Makefile.am: Remove all-local: $(ARCH).
	* paranoia/Makefile.am: Remove all-local: $(ARCH).
	* pppd/Makefile.am: Remove all-local: $(ARCH).
	* ticker/Makefile.am: Remove all-local: $(ARCH).
	* unlimited/Makefile.am: Remove all-local: $(ARCH).
2003-12-01 21:21:38 +00:00
Ralf Corsepius
ebb7d37156 2003-08-16 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
Makefile.am: Reflect having moved automake.
	base_mp/Makefile.am: Reflect having moved automake.
	base_mp/node1/Makefile.am: Reflect having moved automake.
	base_mp/node2/Makefile.am: Reflect having moved automake.
	base_sp/Makefile.am: Reflect having moved automake.
	cdtest/Makefile.am: Reflect having moved automake.
	fileio/Makefile.am: Reflect having moved automake.
	hello/Makefile.am: Reflect having moved automake.
	loopback/Makefile.am: Reflect having moved automake.
	minimum/Makefile.am: Reflect having moved automake.
	paranoia/Makefile.am: Reflect having moved automake.
	pppd/Makefile.am: Reflect having moved automake.
	ticker/Makefile.am: Reflect having moved automake.
	unlimited/Makefile.am: Reflect having moved automake.
2003-08-16 16:27:32 +00:00
Joel Sherrill
25b957c10a 2003-01-27 Joel Sherrill <joel@OARcorp.com>
* Makefile.am, configure.ac: Added new test loopback which shows how to
	use the loopback interface. Thank you Eric Norum for a portable
	target independent test which exercises the TCP/IP. This should
	prevent massive failures in the TCP/IP stack from reaching the
	street.
	* loopback/.cvsignore, loopback/Makefile.am, loopback/README,
	loopback/init.c, loopback/loopback.scn: New files.
2003-01-27 23:30:53 +00:00