Commit Graph

86 Commits (e71f0db6e340192b149a74a4a99058091e8455fa)

Author SHA1 Message Date
Jean-Marie Lemetayer 6b0fa2221a Revert the automated build option
This reverts commits:
 * d6413fe29f.
 * 4f266e1a8c.

Signed-off-by: Jean-Marie Lemetayer <jeanmarie.lemetayer@gmail.com>
8 years ago
Bryan Hundven 4f266e1a8c configure: Add automated build option
This commit introduces a configure time option to let the build know
that this is going to be an automated build.

This forces the build to disable the progress bar, log tool warnings,
and force the log level to debug.

Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
8 years ago
Ray Donnelly d2bc2be8db configure: Add --with-gperf option
On OS X, Apple supply an old gperf (3.0.3) with xcode and
xcode commandline tools which causes build failures:

./zconf.hash.c:183:17: error: expected expression
{offsetof(struct kconf_id_strings_t, kconf_id_strings_str2),

.. upgrading to gperf 3.0.4 was sufficient to fix this,
so this option allows the user to specify the gperf
program that they wish to use.

To install gperf 3.0.4 from homebrew, I did:

    brew tap homebrew/dupes
    brew install homebrew/dupes/gperf

.. then passed --with-gperf=$BREWFIX/Cellar/gperf/3.0.4/bin/gperf
to configure

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
Message-Id: <CAOYw7dtCmcJ9WiqmQ81MmZeRPcV-tDOqe9=kRDW4uQGuZNd2Ng@mail.gmail.com>
Patchwork-Id: 274892
10 years ago
Ray Donnelly 4e45eb1093 Allow reordered MAKEFLAGS
-R and -r (-Rr) can be reordered to -r and -R (-rR).
This happens with MSYS1/2 gnu-make and mingw32-make,
and triggers "Recursion detected, bailing out..."

Signed-off-by: Ray Donnelly <mingw.android@gmail.com>
Message-Id: <CAOYw7dsdsg-XaDOwwEWJeUUSo2Vu_UD5GtkSgNTu59ai7yx0cQ@mail.gmail.com>
Patchwork-Id: 258027
10 years ago
Yann E. MORIN" 3342dd74da Makefile: fix parrallel (-j) installs
Currently, we would remove previously installed patches before
installing the new ones. Unfortunately, that does not play well
with heavily parallel installs.

Now, we consider it is the responsibility of the user to first
uninstall any previous version before installing a new one.

Reported-by: Markos Chandras <markos.chandras@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
11 years ago
Titus von Boxberg 49a1602050 Makefile.in: Use only standard options compatible with BSD install
Don't use options specific to FSF's coreutils install.

Signed-off-by: Titus von Boxberg <titus@v9g.de>
Message-Id: <51587db99510a9ec08f8.1352226968@tschetwerikow.boxberg.lan>
Patchwork-Id: 197532
11 years ago
Yann E. MORIN" 9c75afd9d3 configure: check for GNU awk, not any awk
Building glibc requires GNU awk, not any other.

Reported-by: Han Sooloo <hansooloo@gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
11 years ago
Yann E. MORIN" 887eefec34 configure: also detect plain grep
We need just 'grep', and we need to be able to call it with 'grep -E'.
Check for 'grep', and bailout if egrep != grep -E

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
12 years ago
Yann E. MORIN" b86899a341 scripts: fix tools override
The tools found by the new autostuff configure can contain arguments,
for example: grep -E

This needs separating the paths set for the Makfile from the paths
set for the scripts.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
12 years ago
Yann E. MORIN" cb7fcbe1ef kconfig: install compiled frontends
The kconfig frontends are currently instaleld as source files. This is
a remnant of the early times, when I wanted a single installation of
crosstool-NG to be shared across multiple machines, potentially of
different architectures.

This does not really make sense, and it's been a long time since it
was las tpossible in practice.

So, just build the kconfig frontends at make-time, and install them
as we do for all other crosstool-NG dependent files.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
12 years ago
Yann E. MORIN" c8e39d6d29 configure: use autoconf to generate configure
Create configure.ac, an autoconf script to generate ./configure
This will be needed by a subsequent patch to properly handle
--build and --host, and more tests, when the kconfig stuff will
be installed pre-built.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
12 years ago
Michael Hope 89cf5bb67f Makefile: use phony targets
Add 'build', 'build-*', and 'install' as phony targets to the top level
Makefile.

I tend to do everything in tree with the build in a directory called
'build'.  This interfered with the target 'build', making it think the
target was up to date, and stopping scripts/crosstool-NG.sh from being
regenerated.

Added 'install' as I often set the prefix to $PWD/install.

Signed-off-by: Michael Hope <michael.hope@linaro.org>
12 years ago
Yann E. MORIN" 9a9e8385ba configure: use def_bool for available features
It's one line shorter, and easier to read.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
12 years ago
Titus von Boxberg" 6b9c9e74b2 configure: require libtoolize, create wrapper to it
libtoolize must be checked_for and there needs to be a wrapper
that points to GNU libtoolize since that may be installed
as glibtoolize.
This fixes a problem with building Cloog/PPL that was

Reported-by: "Pierrick Brossin" <pierrick@bs-network.net>
Signed-off-by: "Titus von Boxberg" <titus@v9g.de>
12 years ago
Yann E. MORIN" 770a64c7ff configure: recognise and handle --program-transform-name
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
12 years ago
Yann E. MORIN" 9ff2560230 configure: recognise and handle --program-suffix
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
12 years ago
Yann E. MORIN" f2f6d799c5 configure: handle --program-prefix
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
12 years ago
Yann E. MORIN" d706bf2e6b Makefile: introduce PROG_NAME to contain the 'ct-ng' executable name
With the upcomming --program-{prefix,suffix,transform-name} options,
we'll have a need to centralise the actual executable name, that is
now no longer be a constant.

Rather than spread the prefix/suffix through-out the code, just
centralise the name setting in one place. Beside, transform-name
would not be possible without setting the name at a single location.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
12 years ago
Yann E. MORIN" cd7f5cb1c6 Makefile: fix samples install
Installing samples was not installing the C library config file
and the reported.by description.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
12 years ago
Yann E. MORIN" 929fda76b8 Makefile: make it work for auto-completion
The latest autocompletion calls 'make -qp' to get all the possible
targets. This currently fails, as our makefile is calling itself
again and again ad-libitum.

Fix it by detecting that the recursion level is not 0, and bail out
if so. It works so well that it has the side effect of showing only
the 'public' target, and hide our internal ones! :-)

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
12 years ago
Yann E. MORIN" a257ff7da8 configure: add possibility to set arbitrary variable in check_for
If check_for is able to find the required prog/inc/lib, allow it to
set an arbitrary variable to 'y'. This variable is then pushed down
to the kconfig definition.

For example:
  has_or_abort prog=foobar kconfig=has_foobar

If foobar is available, it yields a kconfig variable defaulting to y:
    config CONFIGURE_has_foobar
        bool
        default y

If foobar is missing, it yields a kconfig variable defaulting to n:
    config CONFIGURE_has_foobar
        bool

Thus it is possible to depends on that variabel to show/hide options:
    config SOME_FEATURE
        bool
        prompt "Some feature"
        depends on CONFIGURE_has_foobar

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
13 years ago
Yann E. MORIN" 9d38d4427c scripts: fix installation
Changeset e013ddebc063 forgot to install the samples.mk file.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
13 years ago
Yann E. MORIN" 26da02fdaa docs: uninstall the man page
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
13 years ago
Yann E. MORIN" ff3fba024c scripts: fix installing samples
It's been a while now that the working directory CT_WORK_DIR has
been changed from 'targets' to '.build'. Fix the install procedure
to properly tweak the installed samples.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
13 years ago
Yann E. MORIN" a211f4100d docs: split into multiple files
The overview.txt file has evolved into more than just an overview.
Split it into chapters, and include the misc tutorials.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
13 years ago
Yann E. MORIN" 11c957c216 configure: fix --mandir
--mandir points to the base dir of the man pages, so
we have to append our man section below given dir.
13 years ago
Yann E. MORIN" c8ecae9a5f scripts: enhance Makefile for installation
Split the multiple directory copies into autonomous rules.
Fix the autocompletion message.
13 years ago
Andy Gibbs" 709a529e21 test-suite: correctly install when not --local 13 years ago
Titus von Boxberg ebf80df032 ct-ng: Add ability to configure and use some GNU tools
Make the paths to libtool, objcopy, objdump, readelf, patch configurable.
14 years ago
Yann E. MORIN" e5a007415a scripts: misc help and auto-complete fixes
- don't list samples in the main help screen
- improve the samples listing in list-samples
- don't document the 'config' action, it's long dead
- document the 'V' environment variable
- improve on START, STOP and PREFIX environment variables
- add PREFIX and V to autocomplete
- advertise auto-complete at install time
14 years ago
Frederic Roussel" 6d9e27b5b7 Fix typos and adjust some documentation. 14 years ago
Yann E. MORIN" a83479174b docs: get rid of any reference to the now long-gone svn repository 14 years ago
Yann E. MORIN" d0528ffa5c ./configure:
- fix a few messages

 -------- diffstat follows --------
 /trunk/Makefile.in |    6     3     3     0 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
15 years ago
Yann E. MORIN" e89072b5a5 Add a new action: show-tuple
- in a directory containing a crosstool-NG configuration,
  prints the tuple of the configured target to stdout.

 -------- diffstat follows --------
 /trunk/Makefile.in             |    4     3     1     0 +++-
 /trunk/scripts/showTuple.sh.in |   30    30     0     0 ++++++++++++++++++++++++++++++
 /trunk/ct-ng.comp              |    2     1     1     0 +-
 /trunk/ct-ng.in                |   10     9     1     0 +++++++++-
 4 files changed, 43 insertions(+), 3 deletions(-)
15 years ago
Yann E. MORIN" 1805f4e62d There's no longer any reason to require GNU awk:
- the only part that required it (socks proxy settings) is gone,
- all remaining awk scripts are POSIXly correct (or should be).

 -------- diffstat follows --------
 /trunk/configure                     |    5     2     3     0 ++---
 /trunk/Makefile.in                   |    2     0     2     0 --
 /trunk/scripts/build/kernel/linux.sh |    2     1     1     0 +-
 /trunk/scripts/build/internals.sh    |    1     0     1     0 -
 /trunk/scripts/build/mpfr.sh         |    2     1     1     0 +-
 /trunk/scripts/functions             |    4     2     2     0 ++--
 /trunk/scripts/saveSample.sh.in      |    4     2     2     0 ++--
 7 files changed, 8 insertions(+), 12 deletions(-)
15 years ago
Yann E. MORIN" 06b48c1518 Set the execute bit on generated script at build time, not install time.
Do not advertise "make install" when ./configure-d with "--local".

 -------- diffstat follows --------
 /trunk/configure   |    8     5     3     0 +++++---
 /trunk/Makefile.in |   10     3     7     0 +++-------
 2 files changed, 8 insertions(+), 10 deletions(-)
15 years ago
Yann E. MORIN" 430ce931e1 Use tools discovered by ./configure in scripts/saveSample.sh
/trunk/Makefile.in              |    7     6     1     0 ++++++-
 /trunk/scripts/saveSample.sh.in |   23    13    10     0 +++++++++++++----------
 2 files changed, 19 insertions(+), 11 deletions(-)
15 years ago
Yann E. MORIN" 534ee284bb Set proper mode to installed files; fixes running when not using --local.
/trunk/Makefile.in |    8     5     3     0 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)
15 years ago
Yann E. MORIN" feb0c60e3b Ignore generated file, remove generated file on clean.
/trunk/Makefile.in |    2     2     0     0 ++
 1 file changed, 2 insertions(+)
15 years ago
Yann E. MORIN" 6912bc6a2c Finally used the discovered paths from ./configure in scripts/crosstool-NG.sh:
- fix Makefile to really, really not used built-in rules and variables
- have scripts/crosstool-NG.sh generated from scripts/crosstool-NG.sh.in
- create a bin-overide directory ( in ${CT_WORK_DIR}/bin ) that contains shell wrappers to the actual discovered tools

 /trunk/scripts/crosstool-NG.sh.in |   27    23     4     0 +++++++++++++++++++++---
 /trunk/Makefile.in                |   50    48     2     0 +++++++++++++++++++++++++++++++++++++++++++--
 2 files changed, 71 insertions(+), 6 deletions(-)
15 years ago
Yann E. MORIN" 44596c425f Makefile.in: remove generated paths.mk during clean
/trunk/Makefile.in |    2     2     0     0 ++
 1 file changed, 2 insertions(+)
15 years ago
Yann E. MORIN" db0f33d012 Makefile.in: create and install the Makefile and shell-script fragment "paths.mk", containing the paths found by ./configure
/trunk/Makefile.in |   66    39    27     0 +++++++++++++++++++++++++++++++++++-------------------------
 1 file changed, 39 insertions(+), 27 deletions(-)
15 years ago
Yann E. MORIN" d89301a3be Makefile.in: re-order tools in alphabetical order.
/trunk/Makefile.in |    4     2     2     0 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
15 years ago
Yann E. MORIN" 9305713521 Fix Makefile.in to use the correct variables.
/trunk/Makefile.in |   16     8     8     0 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)
15 years ago
Yann E. MORIN" eca38a0246 Use ./configure-discovered paths in Makefile.
/trunk/Makefile.in |   55    31    24     0 +++++++++++++++++++++++++++++++------------------------
 /trunk/ct-ng.in    |    2     1     1     0 +-
 2 files changed, 32 insertions(+), 25 deletions(-)
15 years ago
Yann E. MORIN" fb4b418266 Small Makefile fixes.
/trunk/Makefile.in |   29    17    12     0 +++++++++++++++++------------
 1 file changed, 17 insertions(+), 12 deletions(-)
15 years ago
Yann E. MORIN" 65bb3ac67c Get rid of the tols/ directory:
- move config.guess and config.sub from tools/ into scripts/
- update the scripts and makefile fragments accordingly

 /trunk/Makefile.in        |   10     5     5     0 +++++-----
 /trunk/scripts/functions  |   16     8     8     0 ++++++++--------
 /trunk/scripts/scripts.mk |   28    13    15     0 +++++++++++++---------------
 /trunk/ct-ng.in           |    4     2     2     0 ++--
 4 files changed, 28 insertions(+), 30 deletions(-)
15 years ago
Yann E. MORIN" f15b8ade72 Get rid of the local-test in Makefile.
/trunk/Makefile.in       |   30    19    11     0 +++++++++++++++++++-----------
 /trunk/docs/overview.txt |   25    13    12     0 +++++++++++++------------
 2 files changed, 32 insertions(+), 23 deletions(-)
15 years ago
Yann E. MORIN" 81f9d4d73e Honor the DESTDIR variable to install out-of-place (Eg. for packaging).
/trunk/configure         |   10    10     0     0 +++++++++
 /trunk/Makefile.in       |   62    36    26     0 +++++++++++++++++++++++++++++++-----------------------
 /trunk/docs/overview.txt |   12    12     0     0 ++++++++++
 3 files changed, 58 insertions(+), 26 deletions(-)
15 years ago
Yann E. MORIN" 67b3e099c5 Third shot at moving arch/ into config/ .
/trunk/Makefile.in |    2     1     1     0 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
15 years ago