Yann E. MORIN"
247b7bcac6
Enhance the kconfig stuff build procedure:
...
- better allocate CFLAGS/LDFLAGS to object and dependency files
- only include the needed dependency files
- cleanly handle the kconfig/ check and creation
- use HOST_LD to link, not HOST_CC (even if both are set to 'gcc' for now)
- get rid of defoldconfig, it does not make much sense using it.
/trunk/kconfig/kconfig.mk | 110 66 44 0 ++++++++++++++++++++++++++++++++---------------------
1 file changed, 66 insertions(+), 44 deletions(-)
2008-10-22 16:56:23 +00:00
Yann E. MORIN"
84588069df
Avoid (re)building the kconfig dependencies when we don't need them (clean, build, list-steps...).
...
/trunk/kconfig/kconfig.mk | 24 20 4 0 ++++++++++++++++++++----
1 file changed, 20 insertions(+), 4 deletions(-)
2008-10-19 09:34:32 +00:00
Yann E. MORIN"
8d042db1d6
Extract the config files related stuff from the kconfig stuff
...
- create config/config.mk, with all the config.gen/ rules
- the only common points between config files and configurators:
- the top-level config file to include, stored in KCONFIG_TOP
- the config_file rules, which makes config files available to configurators
- dependency-files are renamed from %.d to %.dep (.d is reserved for directories)
- a few eye-candy here and there
/trunk/kconfig/kconfig.mk | 184 12 172 0 +++--------------------------------------------------
/trunk/config/config.mk | 118 9 109 0 +++-------------------------------
/trunk/ct-ng.in | 1 1 0 0 +
3 files changed, 22 insertions(+), 281 deletions(-)
2008-10-18 18:37:28 +00:00
Yann E. MORIN"
f31bcd0026
Update the kconfig stuff to match the one in the linux-2.6.27 version.
...
/trunk/kconfig/zconf.hash.c | 225 110 115 0 +++----
/trunk/kconfig/lkc_proto.h | 4 3 1 0 +
/trunk/kconfig/mconf.c | 217 110 107 0 +++---
/trunk/kconfig/menu.c | 86 60 26 0 ++-
/trunk/kconfig/symbol.c | 212 156 56 0 ++++--
/trunk/kconfig/kconfig.mk | 24 9 15 0 -
/trunk/kconfig/lex.zconf.c | 97 80 17 0 ++-
/trunk/kconfig/util.c | 38 30 8 0 +
/trunk/kconfig/lkc.h | 22 18 4 0 +
/trunk/kconfig/expr.c | 32 19 13 0 +
/trunk/kconfig/confdata.c | 254 172 82 0 +++++---
/trunk/kconfig/lxdialog/dialog.h | 12 9 3 0 +
/trunk/kconfig/lxdialog/inputbox.c | 6 3 3 0
/trunk/kconfig/lxdialog/checklist.c | 4 2 2 0
/trunk/kconfig/lxdialog/menubox.c | 6 3 3 0
/trunk/kconfig/lxdialog/textbox.c | 2 1 1 0
/trunk/kconfig/lxdialog/util.c | 47 30 17 0 +
/trunk/kconfig/lxdialog/yesno.c | 4 2 2 0
/trunk/kconfig/expr.h | 20 10 10 0
/trunk/kconfig/zconf.tab.c | 1441 793 648 0 ++++++++++++++++++++++++-------------------
/trunk/kconfig/conf.c | 276 124 152 0 ++++----
/trunk/kconfig/check-gettext.sh | 14 14 0 0 +
/trunk/ct-ng.in | 2 1 1 0
23 files changed, 1759 insertions(+), 1286 deletions(-)
2008-10-17 12:47:53 +00:00
Yann E. MORIN"
c54f4302cd
Fix oldconfig and defoldconfig.
...
Thanks Thomas Petazzoni for noticing the breakage.
/trunk/kconfig/kconfig.mk | 4 2 2 0 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
2008-10-17 09:51:19 +00:00
Yann E. MORIN"
4e7d6836a5
Cheesy kconfig stuff:
...
- silent/quiet/verbose build:
- ct-ng by default only prints quit messages, such as "CC xxx",
- if using V=0, nothing is printed,
- if using V=1, the full command lines are printed,
- other values are indeterminate,
- should help in debugging the kconfig stuff;
- complete kconfig/{,m}conf generation:
- fully dynamic dependencies on source files,
- compilation of .c into .o, then linking (instead of direct linking),
- VPATH usage when not --local;
Typo + a coment moved.
/trunk/kconfig/kconfig.mk | 140 87 53 0 +++++++++++++++++++++++++++++++++--------------------
/trunk/tools/tools.mk | 12 6 6 0 ++--
/trunk/steps.mk | 6 3 3 0 +-
/trunk/samples/samples.mk | 30 15 15 0 +++++-----
/trunk/ct-ng.in | 40 28 12 0 +++++++++++----
5 files changed, 139 insertions(+), 89 deletions(-)
2008-10-15 21:29:56 +00:00
Yann E. MORIN"
4b27b41f41
Rework the kconfig stuff
...
- better handle config file generation dependencies
- get rid of CT_TOP_DIR where useless
- rearrange code to be cleaner, and add adequate '#----' comments to split the different parts
- a few eye-candy here and there
/trunk/kconfig/kconfig.mk | 158 99 59 0 +++++++++++++++++++++++++++++++++--------------------
1 file changed, 99 insertions(+), 59 deletions(-)
2008-10-14 16:50:33 +00:00
Yann E. MORIN"
ab048ad81d
No one sane would you 'ct-ng config' to configure crosstool-NG.
...
Remove this useless rule.
/trunk/kconfig/kconfig.mk | 8 2 6 0 ++------
/trunk/ct-ng.comp | 2 1 1 0 +-
2 files changed, 3 insertions(+), 7 deletions(-)
2008-10-13 20:36:37 +00:00
Yann E. MORIN"
5ae048e78b
Generate the choice menu for C compilers, the same way arch, kernels and C libraries are generated.
...
/trunk/kconfig/kconfig.mk | 6 6 0 0 ++++++
/trunk/config/cc/gcc.in | 13 13 0 0 +++++++++++++
/trunk/config/cc.in | 31 3 28 0 +++----------------------------
3 files changed, 22 insertions(+), 28 deletions(-)
2008-10-13 16:58:52 +00:00
Yann E. MORIN"
d2fe51a715
Generate the choice menu for C libraries, the same way arch and kernels are generated.
...
/trunk/kconfig/kconfig.mk | 10 8 2 0 ++++++--
/trunk/scripts/build/libc/glibc.sh | 2 1 1 0 +-
/trunk/config/libc/glibc.in | 22 6 16 0 +++++-------------
/trunk/config/libc/uClibc.in | 7 6 1 0 +++++-
/trunk/config/libc/eglibc.in | 12 11 1 0 +++++++++-
/trunk/config/libc.in | 53 4 49 0 +++-----------------------------------------
6 files changed, 36 insertions(+), 70 deletions(-)
2008-10-13 11:23:51 +00:00
Yann E. MORIN"
c7df47dcea
In generated choice menus, move the selection options outside the choice menu.
...
/trunk/kconfig/kconfig.mk | 60 35 25 0 +++++++++++++++++++++++++++++++----------------------
/trunk/config/kernel.in | 6 0 6 0 -----
/trunk/config/target.in | 6 0 6 0 -----
3 files changed, 35 insertions(+), 37 deletions(-)
2008-10-12 11:22:46 +00:00
Yann E. MORIN"
82c9d1aceb
Simplify the Tools and Debug facilities menu entries:
...
- each config file no longer have to define their own 'menuconfig foo - if FOO - endif' gym
- each build script no longer has to say wether they are enabled
- generation of the 'menuconfig' entries for the Tools and Debug facilities now uses the same code
Some re-ordering of the code to be consistent with the steps ordering (tools, then debug).
/trunk/kconfig/kconfig.mk | 66 43 23 0 +++++++++++++++++++++++-------------
/trunk/scripts/build/debug.sh | 14 9 5 0 +++++---
/trunk/scripts/build/tools/000-template.sh | 7 0 7 0 ----
/trunk/scripts/build/tools/100-libelf.sh | 3 0 3 0 --
/trunk/scripts/build/tools/200-sstrip.sh | 2 0 2 0 -
/trunk/scripts/build/debug/000-template.sh | 7 0 7 0 ----
/trunk/scripts/build/debug/100-dmalloc.sh | 3 0 3 0 --
/trunk/scripts/build/debug/400-ltrace.sh | 3 0 3 0 --
/trunk/scripts/build/debug/300-gdb.sh | 3 0 3 0 --
/trunk/scripts/build/debug/500-strace.sh | 3 0 3 0 --
/trunk/scripts/build/debug/200-duma.sh | 3 0 3 0 --
/trunk/scripts/build/tools.sh | 14 9 5 0 +++++---
/trunk/scripts/crosstool.sh | 2 1 1 0
/trunk/config/debug/ltrace.in | 14 3 11 0 ++------
/trunk/config/debug/dmalloc.in | 9 1 8 0 +----
/trunk/config/debug/gdb.in | 9 1 8 0 +----
/trunk/config/debug/strace.in | 10 1 9 0 -----
/trunk/config/debug/duma.in | 10 1 9 0 -----
/trunk/config/tools/libelf.in | 12 2 10 0 +------
/trunk/config/tools/sstrip.in | 10 1 9 0 -----
/trunk/config/config.in | 4 2 2 0 +-
21 files changed, 74 insertions(+), 134 deletions(-)
2008-10-10 14:30:44 +00:00
Yann E. MORIN"
f2463146eb
Commonalise config.gen/{arch,kernel}.in generation.
...
/trunk/kconfig/kconfig.mk | 76 34 42 0 ++++++++++++++++++++++++-----------------------------
1 file changed, 34 insertions(+), 42 deletions(-)
2008-10-09 17:40:15 +00:00
Yann E. MORIN"
b8d189b296
Separate the architecture config file and function script.
...
/trunk/kconfig/kconfig.mk | 46 23 23 0 +++++++++++++++++++++++-----------------------
/trunk/scripts/crosstool.sh | 2 1 1 0 +-
/trunk/docs/overview.txt | 28 11 17 0 +++++++++++-----------------
3 files changed, 35 insertions(+), 41 deletions(-)
2008-10-05 15:32:00 +00:00
Yann E. MORIN"
601ec482e1
First shot at moving arch/ into config/arch/ .
...
/trunk/kconfig/kconfig.mk | 4 2 2 0 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
2008-10-03 12:30:29 +00:00
Yann E. MORIN"
16c6cc994f
Save the toolchain configuration to its own file, as an auto-extracting shell script:
...
- get rid of the 'extractconfig' action, it was cumbersome to use, and badly documented,
- introduce a skeleton for the config script,
- update auto-completion,
- document the config script.
/trunk/kconfig/kconfig.mk | 9 2 7 0 ++-------
/trunk/scripts/crosstool.sh | 6 5 1 0 +++++-
/trunk/docs/overview.txt | 21 9 12 0 +++++++++------------
/trunk/tools/toolchain-config.in | 8 8 0 0 ++++++++
/trunk/ct-ng.comp | 2 1 1 0 +-
5 files changed, 25 insertions(+), 21 deletions(-)
2008-10-01 18:10:40 +00:00
Yann E. MORIN"
8b1e61df9d
Rework the way EXPERIMENTAL architecture are marked as such, the same way kernels are handeld.
...
Fix marking EXPERIMENTAL kernel when using --prefix.
/trunk/kconfig/kconfig.mk | 44 22 22 0 ++++++++++++++++++++++----------------------
/trunk/arch/ia64/config.in | 1 1 0 0 +
/trunk/arch/sh/config.in | 1 1 0 0 +
3 files changed, 24 insertions(+), 22 deletions(-)
2008-09-29 20:51:16 +00:00
Yann E. MORIN"
cce0841d96
Rework the way EXPERIMENTAL kernels are marked as such.
...
/trunk/kconfig/kconfig.mk | 51 25 26 0 ++++++++++++++++++++++----------------------
/trunk/docs/overview.txt | 47 47 0 0 +++++++++++++++++++++++++++++++++++++++++
/trunk/config/kernel/bare-metal.in | 1 1 0 0 +
3 files changed, 73 insertions(+), 26 deletions(-)
2008-09-29 20:19:45 +00:00
Yann E. MORIN"
472756d364
Don't remove files that are no longer generated whne cleaning in kconfig/ .
...
/trunk/kconfig/kconfig.mk | 1 0 1 0 -
1 file changed, 1 deletion(-)
2008-09-28 10:35:55 +00:00
Yann E. MORIN"
8b2aad9f00
Simplify conf and mconf generation. We don't care for the _shipped stuff.
...
/trunk/kconfig/kconfig.mk | 4 0 4 0 ----
1 file changed, 4 deletions(-)
2008-09-28 10:33:30 +00:00
Yann E. MORIN"
0460d997cc
Fix generated debug.in and tools.in (xlcwu <xlcwu.taiwan@gmail.com>).
...
Some cosmetics at the same time.
/trunk/kconfig/kconfig.mk | 8 4 4 0 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
2008-09-28 08:14:33 +00:00
Yann E. MORIN"
c36b921790
Generate the kernel config choice, rather than having it hard-coded:
...
- change the menu label from 'Target OS' to 'Operating System',
- bare-metal is a kind of kernel (OS), rename to 'bare-metal' from 'none',
- update the kconfig.mk to generate the kernel choice entries,
- update glibc&eglibc kernel version option accordingly.
Update the debug & tools confiog file generation to match with arch & kernel.
Print terse command lines when building in kconfig/ (a-la Linux kernel).
Fix the makefile rules in kconfig/kconfig.mk to be /simple/ rules.
/trunk/kconfig/kconfig.mk | 117 81 36 0 +++++++++++++++++++++----------
/trunk/config/kernel/linux.in | 4 4 0 0 +
/trunk/config/kernel/bare-metal.experimental.in | 15 15 0 0 ++++
/trunk/config/kernel.in | 33 5 28 0 +--------
/trunk/config/libc/glibc-eglibc-common.in | 4 2 2 0
5 files changed, 107 insertions(+), 66 deletions(-)
2008-09-16 17:39:40 +00:00
Yann E. MORIN"
59b1a0929d
Don't advertise 'xconfig' as a config rule.
...
/trunk/kconfig/conf.c | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
2008-09-16 14:32:07 +00:00
Yann E. MORIN"
3e527cffc3
Fix architecture config file make rules.
...
/trunk/kconfig/kconfig.mk | 2 1 1 0 +-
1 file changed, 1 insertion(+), 1 deletion(-)
2008-09-15 21:03:24 +00:00
Yann E. MORIN"
21fdd0774c
Rebuild the kconfig stuff on kconfig source change.
...
/trunk/kconfig/kconfig.mk | 14 12 2 0 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
2008-08-30 15:23:12 +00:00
Yann E. MORIN"
679fd52ed1
Michael ABBOTT reported that Ubuntu had problems running menuconfig.
...
Turned out that a POSIX script shell was in fact not POSIX: == does not check for equality, -eq does.
/trunk/kconfig/lxdialog/check-lxdialog.sh | 4 2 2 0 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
2008-07-22 09:16:07 +00:00
Yann E. MORIN"
22bd5ce4ca
Although working with bash, 'echo -n' is really non-portable.
...
Get rid of this by using printf(1) with no trailing new-line (\n).
Again, thanks to Martin GUY, who pointed this issue.
/trunk/kconfig/kconfig.mk | 2 1 1 0
/trunk/scripts/build/libc_uClibc.sh | 4 3 1 0 ++
/trunk/scripts/showSamples.sh | 78 39 39 0 +++++++++++++++++++++---------------------
3 files changed, 43 insertions(+), 41 deletions(-)
2008-07-07 21:25:57 +00:00
Yann E. MORIN"
62744e84e7
Autogenerate the architecture selection choice menu.
...
Update architectures definition files accordingly.
Update documentation accordingly.
Use makefile syntax when listing arch/, tools/ and debug/ config files.
/trunk/kconfig/kconfig.mk | 32 29 3 0 +++++++++++++++--
/trunk/docs/overview.txt | 75 67 8 0 +++++++++++++++++++++++++++++++++++----
/trunk/config/target.in | 94 16 78 0 ++++++++-----------------------------------------
/trunk/arch/arm/config.in | 6 5 1 0 +++
/trunk/arch/powerpc/config.in | 2 2 0 0 +
/trunk/arch/ia64/config.in | 4 4 0 0 ++
/trunk/arch/alpha/config.in | 2 1 1 0
/trunk/arch/x86/config.in | 3 3 0 0 ++
/trunk/arch/mips/config.in | 5 5 0 0 +++
/trunk/arch/sh/config.in | 4 3 1 0 ++
/trunk/arch/x86_64/config.in | 3 3 0 0 ++
11 files changed, 138 insertions(+), 92 deletions(-)
2008-06-27 13:58:53 +00:00
Yann E. MORIN"
2fe3a9dbbb
Don't use /bin/sh for crosstool-NG build scripts, we want /bin/bash!
...
Don't hardcode ncurses include and link flags.
2007-09-12 17:35:07 +00:00
Yann E. MORIN"
a1d03e8c79
In a directory previously used as CT_TOP_DIR, when using a new version, ct-ng will fail to create the symlink to the new config files.
...
Fix that by forcing creation of the symlink, even if it already exists and points to a previous location.
2007-09-08 10:32:53 +00:00
Yann E. MORIN"
54cca9f2ba
Add the possibility to force the number of // jobs without reconfiguring.
2007-08-15 14:59:37 +00:00
Yann E. MORIN"
f38b71646a
Re-instate the --local configure switch to not install and use the local crosstool-NG copy.
2007-07-22 17:44:27 +00:00
Yann E. MORIN"
d5db172ef4
Revisit the extract-config way of working: ct-ng is the sole entry point to crosstool-NG, and ct-ng.extrac-config no longer exists. You now have to call "ct-ng extractconfig </path/to/your/build.log" instead.
2007-07-17 21:44:33 +00:00
Yann E. MORIN"
e9916d58e9
Rename all Makefiles used by ct-ng into (something).mk, to avoid confusion.
2007-07-15 09:09:04 +00:00
Yann E. MORIN"
caab647ef2
Fix distclean.
2007-07-15 08:37:22 +00:00
Yann E. MORIN"
396ef34c2e
Make distclean work again: don't try to remove a directory twice.
2007-07-08 17:56:13 +00:00
Yann E. MORIN"
477605c70c
Clean a little bit more.
2007-07-07 17:21:59 +00:00
Yann E. MORIN"
9265403b8b
Get rid of eclipse fiels once and for all.
...
Homogenise the references to crosstool-NG:
- the project is named "crosstool-NG"
- the front-end is named "ct-ng"
- don't use shortcuts (such as "ct-ng" to stand for "crosstool-NG")
Default action is to print help.
Don't speak of make rules when dumping help, just speak of actions.
2007-07-02 19:40:54 +00:00
Yann E. MORIN"
26713d4210
Merge the build system to trunk: ct-ng is now installable:
...
- ./configure --prefix=/some/place
- make
- make install
- export PATH="${PATH}:/some/place/bin"
- ct-ng <action>
2007-07-01 19:04:20 +00:00
Yann E. MORIN"
253edb125b
Rework the help system. For now, this is mostly a no-op (it only re-organise the help entries), but later, that may come in handy when we want ct-ng to be installable).
2007-06-17 16:24:23 +00:00
Yann E. MORIN"
eefa05172a
Answer default values when doing a defoldconfig.
2007-06-16 20:47:58 +00:00
Yann E. MORIN"
5486810b76
When doing a silent old config, don't check if stdin was redirected. ct-ng doesn't use this feature, and even better yet, it makes explicit use of redirecting both stdin and stdout at aome moments.
2007-06-16 20:45:03 +00:00
Yann E. MORIN"
bbf7b2ed16
Rework the generated config file handling.
2007-06-16 18:01:59 +00:00
Yann E. MORIN"
51554bf237
Introduce the notion of tols facilities (none so far, sstrip coming right away...).
2007-06-01 16:55:33 +00:00
Yann E. MORIN"
340c3e2030
Make the debug config menu a generated file.
...
Add a uClibc-0.9.29 patch directory with one patch (from me!).
Update the armeb-unknown-linux-uclibc sample to uClibc-0.9.29.
Some eyecandy in the gdb build process.
2007-05-17 22:10:48 +00:00
Yann E. MORIN"
ae66018803
Quiet some messages from the configurators. We don't need them.
2007-05-14 19:28:14 +00:00
Yann E. MORIN"
7ed70a0028
Correctly handle the version string, defined in a single place now.
...
Fix and update README.
2007-05-13 19:03:49 +00:00
Yann E. MORIN"
58b4c6d0a4
Merge the save-sample branch to trunk:
...
- reorder most of the environment setup,
- geting, extracting and patching are now components' sub-actions,
- save the current config as a sample to be used as a pre-configured target.
2007-05-07 09:04:02 +00:00
Yann E. MORIN"
94a79a1186
Remove the superfluous _config suffix to preconfigured targets (in "make help").
2007-05-01 16:32:52 +00:00
Yann E. MORIN"
afaffaea38
Update to latest kconfig from linux-2.6.20.7.
...
I'm not sure of the improvements, but at least we're up-to-date, and updating in the future will be easier.
2007-04-15 16:45:11 +00:00