Commit Graph

43 Commits

Author SHA1 Message Date
Chris Johns
b8c5935355 build: Fix make clean.
Update #3254.
2018-04-11 13:26:58 +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
7ec982bfeb build-system: Fix the targets support for the parallel build. 2017-05-26 10:35:17 +10:00
Chris Johns
a748603cb4 build-system: Parallel build all subdirs. 2017-05-24 19:59:22 +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
488dc6be31 2011-10-21 Ralf Corsépius <ralf.corsepius@rtems.org>
* automake/compile.am: Remove -Werror=...
2011-10-21 03:29:23 +00:00
Ralf Corsepius
82034cbe40 2010-05-22 Ralf Corsépius <ralf.corsepius@rtems.org>
* automake/compile.am: (Temporarily) Add -Werror=overflow,
	-Werror=pointer-to-int-cast, -Werror=int-to-pointer-cast.
2010-05-22 09:15:42 +00:00
Ralf Corsepius
e447c7d242 Whitespace removal. 2009-11-28 06:15:55 +00:00
Ralf Corsepius
05eb1fb576 Remove RTEMS_CFLAGS. 2009-10-23 14:57:58 +00:00
Ralf Corsepius
ed908735b0 Adaptations to automake-1.10. 2006-10-16 15:58:13 +00:00
Ralf Corsepius
bc82457e4f Remove depend. 2005-11-13 09:11:32 +00:00
Ralf Corsepius
f2a9529351 2005-02-04 Ralf Corsepius <ralf.corsepius@rtems.org>
* automake/compile.am: Remove depend: (Redundant).
2005-02-04 16:18:45 +00:00
Ralf Corsepius
07750fff6a 2005-01-28 Ralf Corsepius <ralf.corsepius@rtems.org>
* automake/compile.am: Remove RTEMS_CPPFLAGS.
2005-01-28 03:06:51 +00:00
Ralf Corsepius
7ddfdb25e4 2005-01-05 Ralf Corsepius <ralf.corsepius@rtems.org>
* aclocal/env-rtemscpu.m4: Remove CFLAGS_OPTIMIZE_V.
	Remove CPU_CFLAGS.
	* aclocal/prog-cc.m4: Don't invoke _RTEMS_FLAGS to set up
	RTEMS_CFLAGS.
	* automake/compile.am: AM_CFLAGS = RTEMS_CFLAGS.
	Remove CPPFLAGS, CFLAGS, CPU_CFLAGS, CFLAGS_OPTIMIZE.
	Cleanup comments.
2005-01-05 16:07:20 +00:00
Ralf Corsepius
20cef00f23 2005-01-05 Ralf Corsepius <ralf.corsepius@rtems.org>
* aclocal/env-rtemscpu.m4: Remove CFLAGS_DEBUG_V.
	* aclocal/prog-cc.m4: Remove RTEMS_USE_GCC.
	* automake/compile.am: Cleanup comments. Remove ASFLAGS.
2005-01-05 08:41:18 +00:00
Ralf Corsepius
846a4af893 2005-01-01 Ralf Corsepius <ralf.corsepius@rtems.org>
* automake/compile.am, httpd/Makefile.am, itron/Makefile.am,
	libblock/Makefile.am, libcsupport/Makefile.am, libfs/Makefile.am,
	libmisc/Makefile.am, libnetworking/Makefile.am, librpc/Makefile.am,
	posix/Makefile.am, rtems/Makefile.am, sapi/Makefile.am,
	score/Makefile.am, wrapup/Makefile.am:
	Remove build-variant support.
2005-01-01 10:41:29 +00:00
Ralf Corsepius
6741c2e1c7 2004-10-20 Ralf Corsepius <ralf_corsepius@rtems.org>
* automake/compile.am: Remove RTEMS_CFLAGS_*_V.
2004-10-21 09:01:00 +00:00
Ralf Corsepius
5c24afe96e 2004-01-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Re-add dirstamps to PREINSTALL_FILES.
	Add PREINSTALL_FILES to CLEANFILES.
	* automake/local.am: Remove depend-am.
	* automake/subdirs.am: Remove depend-recursive.
2004-01-14 05:20:59 +00:00
Ralf Corsepius
a42f159af5 2004-01-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* Makefile.am: Remove AUTOMAKE_FILES.
	* automake/compile.am: Replace contents with contents of
	automake/amcompile.am.
	* automake/amcompile.am, automake/lib.am: Remove.
2004-01-11 05:25:27 +00:00
Ralf Corsepius
35d9b418a2 2004-01-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.ac, aclocal/enable-bare.m4,
	aclocal/enable-inlines.m4, aclocal/enable-itron.m4,
	aclocal/enable-multiprocessing.m4, aclocal/enable-networking.m4,
	aclocal/enable-posix.m4, aclocal/enable-rtems-debug.m4, aclocal/multi.m4,
	aclocal/multilib.m4: Use AS_HELP_STRING instead of AC_HELP_STRING
	(deprecated in autoconf-2.59)
	* automake/local.am: Remove clean-local, depend-gcc.
2004-01-11 02:30:12 +00:00
Ralf Corsepius
d7a75734b0 2004-01-08 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* aclocal/enable-networking.m4: Don't AC_SUBST(RTEMS_HAS_NETWORKING).
	* aclocal/check-networking.m4: Don't AC_SUBST(HAS_NETWORKING).
	* automake/amcompile.am: Remove $(ARCH).
	* wrapup/Makefile.am: Add $(ARCH).
	Remove compile.am, lib.am.
	Include amcompile.am.
2004-01-09 18:14:38 +00:00
Ralf Corsepius
e7d110bac3 2004-01-07 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/amcompile.am: New.
	* configure.ac: Add subdir-objects, AM_PROG_CC_C_O.
2004-01-07 17:16:36 +00:00
Ralf Corsepius
a953fa1472 2003-12-17 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/compile.am: Use $(mkdir_p) instead of $(mkinstalldirs).
2003-12-17 03:54:31 +00:00
Ralf Corsepius
ba962ea235 2003-12-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* aclocal/lead-dot.m4: Remove (Use the version in automake-1.8).
	* automake/lib.am: Remove $(project_libdir)$(MULTISUBDIR).
	* aclocal/env-rtemscpu.m4: Reflect new definition of project_lib.
	* Makefile.am: Remove BUILT_SOURCES.
2003-12-12 10:37:19 +00:00
Ralf Corsepius
5ef82f9716 2003-11-30 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/compile.am: Add $(ARCH)/$(dirstamp) rules.
	* wrapup/Makefile.am: Reflect $(dirstamp) changes.
2003-12-01 04:10:53 +00:00
Ralf Corsepius
63a04f76c1 2003-08-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/local.am: Remove "debug".
2003-08-18 06:57:29 +00:00
Ralf Corsepius
d46ec86a67 2003-05-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
PR 321:
	* aclocal/env-rtemscpu.m4: Remove support for profile-variant.
	* automake/compile.am: Ditto.
	* automake/local.am: Ditto.
2003-05-27 13:03:29 +00:00
Ralf Corsepius
46fa6611e2 2003-05-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/compile.am: Remove LIBSUFFIX_VA (unused).
2003-05-14 04:34:20 +00:00
Ralf Corsepius
b9184faa30 Merger from rtems-4-6-branch. 2003-02-28 06:57:04 +00:00
Ralf Corsepius
08df9a21e4 2003-01-23 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/local.am: Remove distclean-local.
	Remove PROJECT_TOOLS.
2003-01-23 22:21:24 +00:00
Ralf Corsepius
16735cab84 2003-01-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/compile.am: Remove CLEAN_DEPEND (Unused).
	Remove CLOBBER_DEPEND (Unused).
2003-01-21 13:40:05 +00:00
Ralf Corsepius
28ed8f3ab2 2002-12-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/compile.am: Remove $(RTEMS_BSP_CFLAGS).
2002-12-19 05:17:22 +00:00
Ralf Corsepius
baa8dd7cb0 2002-12-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/compile.am: Rework *FLAGS, AM_*FLAGS handling.
2002-12-06 13:07:15 +00:00
Ralf Corsepius
8e4cd5a6f7 2002-12-06 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/multilib.am: Don't include @RTEMS_BSP@.cfg.
	* automake/compile.am: Remove hard-coded CFLAGS_PROFILE_V.
	Add autoconf-supplied CPU_CFLAGS, CFLAGS_OPTIMIZE_V, CFLAGS_DEBUG_V,
	CFLAGS_PROFILE_V.
	Hard-code RTEMS_CFLAGS_PROFILE = -pg
	* aclocal/prog-cc.m4: Sync with toplevel/aclocal/prog-cc.m4.
	Remove GCCSED.
	* aclocal/env-rtemsbsp.m4: Add AC_ARG_VAR for CPU_CFLAGS,
	CFLAGS_OPTIMIZE_V, CFLAGS_DEBUG_V, CFLAGS_PROFILE_V.
2002-12-06 11:21:50 +00:00
Ralf Corsepius
fd5e23acf1 2002-11-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/compile.am: Remove CFLAGS_DEBUG_OPTIMIZE_V (Unused).
2002-11-20 02:57:45 +00:00
Ralf Corsepius
789a953dec 2002-11-15 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* aclocal/prog-cc.m4: Acknowledge configuration-time CFLAGS.
	* automake/compile.am: Acknowledge configuration-time CFLAGS.
	Remove CFLAGS_DEFAULT.
2002-11-15 15:00:13 +00:00
Ralf Corsepius
532fad2825 2002-07-31 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* aclocal/canonicalize-tools.m4: Remove LD.
	* automake/lib.am: Remove LD.
	* Makefile.am: Put preinstall-stamp into CLEANFILES.
2002-07-31 14:57:47 +00:00
Ralf Corsepius
c3efdb3ea9 2002-07-26 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/compile.am: Use .$(OBJEXT) instead of .o.
2002-07-26 12:51:02 +00:00
Ralf Corsepius
9f6d7a3496 2002-07-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/lib.am: Use project_libdir instead of
	$(PROJECT_RELEASE)/lib.
2002-07-22 09:27:52 +00:00
Ralf Corsepius
1462016612 2002-07-22 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* aclocal/env-rtemsbsp.m4: Remove RTEMS_BSP_SPECS, PROJECT_RELEASE.
	Add project_libdir, libdir. New GCC_SPECS. Various cleanups.
	* aclocal/env-rtemscpu.m4: Remove RTEMS_BSP_SPECS, PROJECT_RELEASE.
	Add project_libdir, libdir. New GCC_SPECS. Various cleanups.
	* aclocal/rtems-top.m4: New PROJECT_ROOT handling.
	* automake/compile.am: Remove RTEMS_BSP_SPECS, LD* flags, LINK,
	references to bsp_specs. Use project_libdir instead of
	$(PROJECT_RELEASE)/lib.
2002-07-22 09:17:11 +00:00
Ralf Corsepius
1b16e63c4f 2002-07-05 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* automake/multilib.am: Add install-multi.
	* aclocal/rtems-top.m4: Reflect new RTEMS_TOPdir to detecting
	version.m4.
	Add --with-project-root.
	Reflect --with-project-root to setting up PROJECT_ROOT.
	* aclocal/env-rtemscpu.m4: Reflect new RTEMS_TOPdir (HACK).
	* aclocal/check-cpu.m4:  Reflect new RTEMS_TOPdir.
	* aclocal/check-bsps.m4: Reflect new RTEMS_TOPdir.
2002-07-05 16:13:07 +00:00
Ralf Corsepius
52614062c5 2002-06-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* aclocal/prog-ccas.m4: New.
	* aclocal/canonicalize-tools.m4: Remove AS, OBJCOPY, NM, SIZE, STRIP.
	RTEMS_GCC_PRINT
	* aclocal/check-multiprocessing.m4: Fix typo.
	* automake/compile.am: Remove CXX support.
	Replace AS by CCAS. Remove LINK_LIBS, LINK_OBJS, LINK_FILES.
2002-06-27 12:18:24 +00:00
Ralf Corsepius
9ea3832c6c Copied over from the automake/ 2002-06-15 05:29:18 +00:00