Commit Graph

41 Commits

Author SHA1 Message Date
Sebastian Huber
f1baeb0224 bootstrap: Add special case for clean command
The testsuites/ada/sptests/sp19/Makefile was added to document how
sptest.adb is generated.  However, this Makefile is in the way of
./bootstrap -c.  Add an exception.
2020-02-17 08:03:55 +01:00
Sebastian Huber
2548d14b82 build: Include header.am in cpukit/Makefile.am
Include all cpukit/*/header.am files in cpukit/Makefile.am.  This gets
rid of all subtree Makefile.am and the sudirs hack.
2018-10-10 14:06:28 +02:00
Joel Sherrill
7b1a711d3b bootstrap: Correct help message
closes #3509.
2018-08-30 08:41:17 -05:00
Sebastian Huber
adb85dd473 bsps: Move make/custom/* files to bsps
Adjust various build files.  Remove automatic generation of the
c/src/lib/libbsp/*/acinclude.m4 files from bootstrap script.

This patch is a part of the BSP source reorganization.

Update #3285.
2018-04-23 15:18:42 +02:00
Amaan Cheval
4dfeba3a0e bootstrap: Use printf instead of echo -e for POSIX shells
On POSIX compliant shells, echo does not have the -e option.
This causes the "-e" to be echoed as well, causing potential buggy
build processes.

Example shell session:

-> % sh
$ echo -e "foo bar"
-e foo bar
$

According to POSIX, "\$" should be fine regardless due to the use of
double-quotes[1]. However, since printf is recommended over echo anyway,
we replace "echo -e" with printf where required.

[1] http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag_02_02_03
2018-03-09 13:16:01 -06: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
Joel Sherrill
31285e1ed4 bootstrap: Fix bug where BSPs were not picked up 2018-01-05 11:01:37 -06:00
Joel Sherrill
a30f707834 bootstrap: Remove reference to bsp_specs in determining BSP directories
Updates #3520.
2017-11-27 09:50:05 -06:00
Gedare Bloom
3be28ee6dd bootstrap: make sort use C locale consistently
Closes #2965.
2017-04-13 13:00:51 -04:00
Joel Sherrill
48a7fa31f9 Remove texinfo format documentation. Replaced by Sphinx formatted documentation.
closes #2812.
2017-01-11 12:13:21 -06:00
Chris Johns
b74c9cfb76 bootstrap: Sort the contents of the prinstall.am files.
Sorting removed the variations across different host operating systems
and file systems.
2014-04-23 14:32:34 +10:00
Ralf Corsépius
22fb90e491 Misc. cosmetic changes. 2012-10-09 19:26:51 +02:00
Ralf Corsépius
aa96f47df1 Do not remove scripts upon ./bootstrap -c. Introduce ./bootstrap -c -f. 2012-08-06 12:42:43 -04:00
Joel Sherrill
65c6425de9 Remove CVS Id Strings (manual edits after script)
These modifications were required by hand after running the script.
In some cases, the file names did not match patterns. In others,
the format of the file did not match any common patterns.
2012-05-11 08:44:14 -05:00
Ralf Corsepius
4b5348cce4 2011-10-03 Ralf Corsépius <ralf.corsepius@rtems.org>
* depcomp, compile, texinfo.tex, mdate-sh: New.
	* bootstrap (-c): Don't remove depcomp, compile, texinfo.tex,
	mdate-sh.
2011-10-03 09:38:27 +00:00
Ralf Corsepius
fba17c9e91 2011-02-03 Ralf Corsépius <ralf.corsepius@rtems.org>
* bootstrap: Add -g option.
	Switch default to autoreconf.
2011-03-03 16:05:34 +00:00
Ralf Corsepius
58b9db5877 2008-04-14 Ralf Corsépius <ralf.corsepius@rtems.org>
* bootstrap: Use find . ... preinstall.am for portability reasons.
2008-04-14 07:41:30 +00:00
Ralf Corsepius
3031e6c4c9 Add -r (autoreconf). 2006-11-18 06:07:06 +00:00
Ralf Corsepius
77fff59287 2006-11-18 Ralf Corsépius <ralf.corsepius@rtems.org>
* bootstrap: Add -p (regenerate preinstall.ams).
2006-11-18 01:58:17 +00:00
Ralf Corsepius
a5a0db49c9 2006-02-01 Ralf Corsepius <ralf.corsepius@rtems.org>
PR 882/make_build
	* bootstrap: Only remove bspopts.h.in instead of bspopts.h*.
2006-02-01 15:08:54 +00:00
Ralf Corsepius
1d3713ef5c 2004-02-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bootstrap: RTEMS_CHECK_BSPDIR(RTEMS_BSP_FAMILY).
2004-02-12 16:15:34 +00:00
Ralf Corsepius
6223498d61 2004-01-09 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* .cvsignore: Remove mkinstalldirs.
	* bootstrap: Remove compile during "clean".
2004-01-09 13:38:16 +00:00
Ralf Corsepius
0affee39fc 2003-10-20 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bootstrap: Use $RTEMS_BSP_FAMILY instead of RTEMS_BSP_ALIAS in
	c/src/lib/libbsp/*/acinclude.m4.
2003-10-20 13:33:14 +00:00
Ralf Corsepius
23557f57c4 2003-07-13 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* config.sub: Remove (Automatically added by automake, again).
	* bootstrap: Reflect change above.
	* configure.ac: Require automake >= 1.7.6.
2003-07-13 16:21:33 +00:00
Ralf Corsepius
cf0ed4671a 2003-06-18 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bootstrap: Reflect having added config.sub.
2003-06-18 15:15:48 +00:00
Ralf Corsepius
0b22af60bb Merger from rtems-4-6-branch. 2003-03-25 08:50:16 +00:00
Ralf Corsepius
d854517744 2003-02-11 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bootstrap: Remove attempts to detect autoconf and automake using
	"which" (PR 325).
2003-02-11 13:00:13 +00:00
Ralf Corsepius
b41b79738e 2002-12-07 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bootstrap: Require autoconf 2.54 or 2.57.
	Require automake-1.7.2.
2002-12-09 10:41:21 +00:00
Ralf Corsepius
82b1805a1d 2002-12-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bootstrap: Allow autoconf-2.57.
2002-12-04 16:38:50 +00:00
Ralf Corsepius
e9fc7e502f 2002-11-15 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bootstrap: Allow autoconf-2.56.
2002-11-15 14:41:54 +00:00
Ralf Corsepius
7395fa5e33 2002-11-07 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bootstrap: Allow autoconf > 2.52, automake > 1.6.
2002-11-07 16:29:56 +00:00
Ralf Corsepius
282cb9c3ad 2002-10-30 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bootstrap: Add generate_bspdir_acinclude to automatically update
	c/src/lib/libbsp/<cpu>/acinclude.m4.
	Use #! /bin/sh instead of #!/bin/sh.
	Remove autom4te*.cache during ./bootstrap --clean.
2002-10-30 07:08:44 +00:00
Ralf Corsepius
58fd5ab6b8 2002-10-08 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bootstrap: Add autoconf/automake version checks by popular demand.
	[FWIW: I dislike this.]
2002-10-09 17:23:52 +00:00
Joel Sherrill
76d527ec18 2002-03-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* aclocal/version.m4: New file.
	* aclocal/rtems-top.m4: Add RTEMS_VERSIONING, replace VERSION w/
	aclocal/version.m4.
	* bootstrap: Use aclocal/version.m4 instead of VERSION.
	* configure.ac: Use aclocal/version.m4 instead of VERSION.
2002-03-28 13:53:19 +00:00
Joel Sherrill
d7aabb7c3f 2002-01-23 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* aclocal/sysv-ipc.m4: Use 3-args AC_DEFINE for autoconf-2.5x
	compatibility.
	* bootstrap: Let --clean remove texinfo.tex.
2002-01-24 14:14:55 +00:00
Joel Sherrill
d0d33f21a3 2001-12-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bootstrap: Run autoheader when configure.ac contains
	RTEMS_BSP_CONFIGURE. Remove bspopts.h* files.
2001-12-07 12:31:13 +00:00
Joel Sherrill
ceb9f8f0e4 2001-09-21 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* bootstrap: remove/add automake added files.
	* .cvsignore: reflect changes to bootstrap.
2001-09-21 15:01:28 +00:00
Joel Sherrill
e712997cac 2001-07-19 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
* configure.in: autoupdate to autoconf-2.52.
	* bootstrap: Add handling for configure.ac, make autoheader verbose,
	fix auto*tool invocation order.
	* aclocal/rtems-test-no-pause.m4: Introduce AC_HELP_STRING.
	* aclocal/enable-bare.m4: Introduce AC_HELP_STRING.
	* aclocal/enable-cxx.m4: Introduce AC_HELP_STRING.
	* aclocal/enable-gcc28: Introduce AC_HELP_STRING.
	* aclocal/enable-inlines.m4: Introduce AC_HELP_STRING.
	* aclocal/enable-itron.m4: Introduce AC_HELP_STRING.
	* aclocal/enable-libcdir.m4: Introduce AC_HELP_STRING.
	* aclocal/enable-multiprocessing.m4: Introduce AC_HELP_STRING.
	* aclocal/enable-networking.m4: Introduce AC_HELP_STRING.
	* aclocal/enable-posix.m4: Introduce AC_HELP_STRING.
	* aclocal/enable-rdbg.m4: Introduce AC_HELP_STRING.
	* aclocal/enable-rtemsbsp.m4: Introduce AC_HELP_STRING.
	* aclocal/enable-tests.m4: Introduce AC_HELP_STRING.
	* aclocal/env-rtemsbsp.m4: Add AC_ARC_VAR(RTEMS_BSP), apply true in
	RTEMS_CONFIG_PER_BSP conditional.
	* aclocal/multilib.m4: Introduce AC_HELP_STRING.
	* aclocal/rtems-debug.m4: Introduce AC_HELP_STRING.
	* aclocal/rtems-top.m4: Add AC_PREFIX_DEFAULT(/opt/rtems).
2001-09-13 13:14:30 +00:00
Joel Sherrill
ec6968b1c4 Patch rtems-rc-20000614-2-cvs.diff from Ralf Corsepius
<corsepiu@faw.uni-ulm.de> to evaluate ACLOCAL_AMFLAGS in
Makefile.ams before running aclocal.

  Remark: This patch is in preparation to switching to Cygnus/GNU
  canonicalization. I plan to introduce to an alternate aclocal macros
  directory which shall contain Cygnus/GNU conforming macros only,
  soon.
2000-06-14 17:15:18 +00:00
Joel Sherrill
df49c60c96 Merged from 4.5.0-beta3a 2000-06-12 15:00:15 +00:00
Joel Sherrill
d6c8352925 Patch rtems-rc-19991105-1.diff.gz from Ralf Corsepius
<corsepiu@faw.uni-ulm.de> which does the following:

    This is the configuration cleanup patch:

    Main changes:
      * TARGET_ARCH removed
      * target.cfg.in moved to c/make/target.cfg.in (Only configured once for
        all BSPs of a target)
      * BARE_XXX variables appended to bsp.cfg.in
      * autogen renamed to bootstrap
      * removed stray variables from make/custom/*.cfg

    To apply:
        cd <source-tree>
        rm c/src/make/target.cfg.in
        cp autogen bootstrap
        mkdir c/make
        cp make/target.cfg.in c/make/target.cfg.in
        rm make/target.cfg.in
        rm autogen
        patch -p1 < rtems-rc-19991105-1.diff
1999-11-16 15:48:11 +00:00