annotate configure.in @ 3118:103d5fa67c22

New package -- Smartfusion Cortex-M3 I2C driver package. [Bugzilla 1001291]
author vae
date Mon, 12 Mar 2012 20:52:32 +0000
parents 74dbf4c3f2e1
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
1 dnl Process this file with autoconf to produce a configure script.
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
2 dnl ====================================================================
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
3 dnl
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
4 dnl configure.in
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
5 dnl
283
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
6 dnl Top-level configure script for eCos software.
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
7 dnl
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
8 dnl ====================================================================
2729
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
9 dnl ####ECOSHOSTGPLCOPYRIGHTBEGIN####
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
10 dnl -------------------------------------------
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
11 dnl This file is part of the eCos host tools.
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
12 dnl Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc.
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
13 dnl
2729
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
14 dnl This program is free software; you can redistribute it and/or modify
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
15 dnl it under the terms of the GNU General Public License as published by
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
16 dnl the Free Software Foundation; either version 2 or (at your option) any
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
17 dnl later version.
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
18 dnl
2729
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
19 dnl This program is distributed in the hope that it will be useful, but
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
20 dnl WITHOUT ANY WARRANTY; without even the implied warranty of
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
21 dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
22 dnl General Public License for more details.
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
23 dnl
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
24 dnl You should have received a copy of the GNU General Public License
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
25 dnl along with this program; if not, write to the
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
26 dnl Free Software Foundation, Inc., 51 Franklin Street,
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
27 dnl Fifth Floor, Boston, MA 02110-1301, USA.
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
28 dnl -------------------------------------------
74dbf4c3f2e1 Update all copyright banners to reflect FSF ownership; fix and improve licence text.
jlarmour
parents: 2528
diff changeset
29 dnl ####ECOSHOSTGPLCOPYRIGHTEND####
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
30 dnl ====================================================================
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
31 dnl#####DESCRIPTIONBEGIN####
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
32 dnl
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
33 dnl Author(s): bartv
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
34 dnl Contact(s): bartv
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
35 dnl Date: 1998/12/17
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
36 dnl Version: 0.01
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
37 dnl
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
38 dnl####DESCRIPTIONEND####
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
39 dnl ====================================================================
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
40
283
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
41 dnl eCos is a componentized architecture for deeply embedded systems.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
42 dnl It requires a very different configuration system from typical
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
43 dnl autoconfiscated software such as the various GNU packages.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
44 dnl
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
45 dnl The main eCos host-side software is autoconfiscated to some extent,
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
46 dnl in that the usual sequence of "configure;make;make install" will
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
47 dnl work under the right conditions. However it does not conform to
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
48 dnl the GNU coding standards in numerous ways, for example "make dist"
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
49 dnl will not work. The main eCos host-side software lives in the
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
50 dnl "host" subdirectory, and is built unconditionally.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
51 dnl
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
52 dnl The eCos target-side software lives in the "packages" subdirectory,
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
53 dnl and is organized in numerous subdirectories corresponding to different
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
54 dnl packages and potentially different versions of each package. In the
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
55 dnl master repository managed by CVS there will only be one version of
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
56 dnl each package, "current", which simplifies things somewhat. Other
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
57 dnl repositories will not be quite so straightforward and require a
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
58 dnl suitable administration tool.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
59 dnl
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
60 dnl The various eCos packages are not currently auto-confiscated.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
61 dnl In particular building eCos requires the use of eCos configuration
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
62 dnl technology, not autoconf - there is simply no good way of handling
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
63 dnl a system as highly configurable as eCos using a few command-line
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
64 dnl options passed to "configure". There would also be serious confusion
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
65 dnl between host and target, especially when e.g. cross-compiling the
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
66 dnl host tools. However a possible future enhancement
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
67 dnl would involve making eCos releases via configure and make, thus
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
68 dnl allowing for a release process that combines building the various
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
69 dnl host-side tools such as gcc with creating eCos epk's for the various
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
70 dnl packages.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
71 dnl
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
72 dnl A complication is that some of the eCos target-side packages also
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
73 dnl contain package-specific host-side support. For example the
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
74 dnl Linux synthetic target support uses special host-side software
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
75 dnl to provide I/O facilities: the architectural HAL package provdes
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
76 dnl generic support, the synthetic ethernet package extends this
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
77 dnl with ethernet support, and so on. Such package-specific host-side
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
78 dnl software does not belong in the main host subdirectory, that
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
79 dnl would make it very difficult to distribute new packages or
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
80 dnl new versions of a package. However keeping the code with the
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
81 dnl various packages makes building more complicated.
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
82 dnl
283
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
83 dnl 1) if the entire repository is managed by CVS or anoncvs, this
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
84 dnl configure script will search the packages tree for any packages
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
85 dnl that have host-side software that needs to be built -
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
86 dnl specifically, that have a file "configure" inside a "host"
881
d6a1854fdc1b Make toplevel configure script work in a release tree rather than just
bartv
parents: 283
diff changeset
87 dnl subdirectory in a version of a package.
283
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
88 dnl
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
89 dnl 2) if instead the repository contains additional packages
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
90 dnl installed as epk's and managed by an administration tool then
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
91 dnl it is the responsibility of that tool to let the users build
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
92 dnl and rebuild the host-side software as required, for whichever
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
93 dnl host platform or platforms are being used. In other words
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
94 dnl it is the responsibility of the admin tool to create a
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
95 dnl suitable build directory and run "configure; make; make install",
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
96 dnl usually as part of the installation process. Note that several
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
97 dnl versions of a package may be installed, and it is the
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
98 dnl responsibility of each package to take this into account
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
99 dnl (although the configure macros are aware of this to some extent,
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
100 dnl and will e.g. generate suitable install directory names).
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
101 dnl Also note that the top-level configure script will not pick
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
102 dnl up such packages because they will be versioned, i.e. the
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
103 dnl test for current/host/configure will fail because the
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
104 dnl version will not be "current".
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
105 dnl
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
106 dnl 3) as a special case it may be desirable to ship pre-built binaries
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
107 dnl of some of the package-specific software. It is not clear
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
108 dnl just what would be the best way of shipping these - putting
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
109 dnl them into the epk's would not be quite right because that would
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
110 dnl make the epk's host-specific rather than generic.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
111 dnl
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
112 dnl There is an unresolved problem with possible dependencies between
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
113 dnl packages, if e.g. the host-side of the synthetic ethernet package could
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
114 dnl only be built after the architectural synthetic target package.
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
115
283
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
116 dnl Some of the eCos documentation is generic and lives in the "doc"
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
117 dnl subdirectory. Other eCos documentation is package-specific and lives
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
118 dnl in the appropriate package directory. At present there is no support
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
119 dnl for building the documentation via configure and make, but such
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
120 dnl support may be added in future.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
121 dnl
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
122 dnl There is a subdirectory acsupport containing various files such
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
123 dnl as config.guess and install.sh that are common. This also contains
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
124 dnl an acinclude.m4 file with various macros that are useful for
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
125 dnl eCos.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
126
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
127 dnl Generic initialization.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
128 AC_INIT(acsupport/config.guess)
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
129 AC_CONFIG_AUX_DIR(acsupport)
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
130 AC_CANONICAL_HOST
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
131 AM_INIT_AUTOMAKE(eCos,2.0,0)
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
132 AM_MAINTAINER_MODE
2528
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
133
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
134 dnl Detect attempts at cross-compilation. Usually this is the result
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
135 dnl of somebody failing to read the documentation or the README.host
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
136 dnl file.
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
137 if test "${target_alias}x" != "x" ; then
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
138 AC_MSG_ERROR("
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
139 ================================================================
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
140 You have specified a target ${target_alias}.
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
141 This configure script is for building the eCos host-side support
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
142 tools which are independent of the target architecture. It is not
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
143 used for building eCos itself.
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
144
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
145 If your intention is to build eCos itself then you should first
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
146 read the relevant documentation starting with the User's Guide.
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
147
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
148 If your intention is to rebuild the host-side support tools then
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
149 there is no need to specify --target.
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
150
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
151 If your intention is to cross-compile the host-side support tools
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
152 then you should be using --host instead of --target.
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
153 ================================================================
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
154 ")
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
155 fi
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
156
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
157 dnl Make sure the source and build trees are kept separate.
283
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
158 ECOS_CHECK_BUILD_ne_SRC
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
159
283
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
160 dnl Nothing actually gets built in this directory, so there should be no
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
161 dnl need to worry about compiler flags etc. Instead, the problem is
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
162 dnl figuring out what should actually get built.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
163 dnl
881
d6a1854fdc1b Make toplevel configure script work in a release tree rather than just
bartv
parents: 283
diff changeset
164 dnl 1) the host subdirectory should always get built, if it exists.
d6a1854fdc1b Make toplevel configure script work in a release tree rather than just
bartv
parents: 283
diff changeset
165 dnl With the 2.0 release system the directory gets moved to
d6a1854fdc1b Make toplevel configure script work in a release tree rather than just
bartv
parents: 283
diff changeset
166 dnl tools/src
d6a1854fdc1b Make toplevel configure script work in a release tree rather than just
bartv
parents: 283
diff changeset
167
d6a1854fdc1b Make toplevel configure script work in a release tree rather than just
bartv
parents: 283
diff changeset
168 if test -f "${srcdir}/host/configure" ; then
2528
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
169 ecos_subdirs="host"
881
d6a1854fdc1b Make toplevel configure script work in a release tree rather than just
bartv
parents: 283
diff changeset
170 elif test -f "${srcdir}/tools/src/configure" ; then
2528
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
171 ecos_subdirs="tools/src"
881
d6a1854fdc1b Make toplevel configure script work in a release tree rather than just
bartv
parents: 283
diff changeset
172 else
2528
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
173 ecos_subdirs=""
881
d6a1854fdc1b Make toplevel configure script work in a release tree rather than just
bartv
parents: 283
diff changeset
174 fi
283
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
175
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
176 dnl 2) any package which has a configure script in a
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
177 dnl current/host subdirectory should also get built.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
178 dnl
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
179 dnl Searching the directory tree is currently done by shell globbing.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
180 dnl Invoking "find" with suitable arguments might be quicker, but
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
181 dnl less portable. On some hosts there may be problems with environmental
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
182 dnl limits if too many packages provide host-side software.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
183 dnl
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
184 dnl Currently there is no ordering of packages, so e.g. a device
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
185 dnl driver's host-side support cannot depend on some HAL package
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
186 dnl because the latter may not have been built and installed yet.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
187 dnl This is a good thing because packages are meant to be self-contained
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
188 dnl whenever possible. Interaction between packages is typically handled
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
189 dnl at the Tcl level at run-time, so there are no build-time complications.
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
190
2528
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
191 AC_MSG_NOTICE([searching for configure scripts in eCos packages'
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
192 host subdirectories. This operation can take a long time.
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
193 If running on Windows and the eCos repository is accessed
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
194 over a network then it may take some hours.])
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
195 ecos_hostdirs=""
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
196 ecos_configure_scripts="${srcdir}/packages/*/*/host/configure"
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
197 ecos_configure_scripts="${ecos_configure_scripts} ${srcdir}/packages/*/*/*/host/configure"
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
198 ecos_configure_scripts="${ecos_configure_scripts} ${srcdir}/packages/*/*/*/*/host/configure"
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
199 ecos_configure_scripts="${ecos_configure_scripts} ${srcdir}/packages/*/*/*/*/*/host/configure"
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
200 ecos_configure_scripts="${ecos_configure_scripts} ${srcdir}/packages/*/*/*/*/*/*/host/configure"
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
201 for configure in ${ecos_configure_scripts}; do
283
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
202 if test -f ${configure}; then
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
203 dnl A configure script has been found in the source tree.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
204 dnl First turn it into a directory, then replace the absolute path
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
205 dnl with a relative one.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
206 hostdir=`dirname ${configure}`
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
207 hostdir=`echo ${hostdir} | sed -e "s:^${srcdir}/::"`
2528
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
208 ecos_hostdirs="${ecos_hostdirs} ${hostdir}"
283
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
209 fi
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
210 done
2528
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
211 AC_MSG_NOTICE([found configure scripts in
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
212 ${ecos_hostdirs}])
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
213 ecos_subdirs="${ecos_subdirs} ${ecos_hostdirs}"
283
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
214
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
215 dnl Because the eCos directory layout does not conform to GNU conventions
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
216 dnl it is necessary to create various levels of intermediate directories.
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
217 dnl This happens via config.status, prior to the recursion into the
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
218 dnl appropriate directories.
2528
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
219 AC_OUTPUT_COMMANDS([${CONFIG_SHELL-/bin/sh} ${ac_top_srcdir}/acsupport/mkinstalldirs ${REQUIRED_DIRS}],REQUIRED_DIRS="${ecos_subdirs}")
283
f58bc1b2c2bc Reorganization of the host-side autoconfiscation support, and a couple
bartv
parents: 208
diff changeset
220
2528
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
221 dnl This causes warnings with current versions of configure which
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
222 dnl want literal arguments. Since this script deliberately searches
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
223 dnl for subdirectories there is no obvious way to eliminate those
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
224 dnl warnings.
a2fb80f5315f Update host-side configury
bartv
parents: 881
diff changeset
225 AC_CONFIG_SUBDIRS(${ecos_subdirs})
208
e0c0827131d1 Merge from eCos master repository on 2002-05-20-20:11:54-BST
jlarmour
parents:
diff changeset
226 AC_OUTPUT(Makefile)