diff options
author | Alper Yildirim <ayildirim@aselsan.com> | 2009-07-20 19:17:10 +0200 |
---|---|---|
committer | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2009-07-27 16:07:00 +0200 |
commit | b0df9df39ad76bdf89d1f58996cd4a1c2632b47c (patch) | |
tree | b7c7c6150b093b7eb34e6b46e4383491d9bb21bb /package/config | |
parent | 4b3e11b3e7d00881878f45cddbfe8f4bf07d1ebe (diff) | |
download | buildroot-novena-b0df9df39ad76bdf89d1f58996cd4a1c2632b47c.tar.gz buildroot-novena-b0df9df39ad76bdf89d1f58996cd4a1c2632b47c.zip |
config: Add support for xconfig
It involved:
* Modifying the top-level Makefile to create the xconfig target, and
the $(CONFIG)/qconf target to compile the qconf utility
* Modifying the package/config/Makefile magic so that C++ files and
binaries gets linked properly, re-using the
package/config/Makefile.kconfig logic inherited from the kernel
* Hacking a little bit package/config/Makefile.kconfig in a way
similar to the modifications done for the mconf (menuconfig
interface)
Signed-off-by: Alper Yildirim <ayildirim@aselsan.com>
Diffstat (limited to 'package/config')
-rw-r--r-- | package/config/Makefile | 9 | ||||
-rw-r--r-- | package/config/Makefile.kconfig | 4 | ||||
-rw-r--r-- | package/config/kconfig-to-buildroot2.patch | 14 |
3 files changed, 24 insertions, 3 deletions
diff --git a/package/config/Makefile b/package/config/Makefile index 3af4bd8de..a2184fa3c 100644 --- a/package/config/Makefile +++ b/package/config/Makefile @@ -14,7 +14,10 @@ __hostprogs := $(sort $(hostprogs-y) $(hostprogs-m)) host-csingle := $(foreach m,$(__hostprogs),$(if $($(m)-objs),,$(m))) host-cmulti := $(foreach m,$(__hostprogs),\ $(if $($(m)-cxxobjs),,$(if $($(m)-objs),$(m)))) +host-cxxmulti := $(foreach m,$(__hostprogs),\ + $(if $($(m)-cxxobjs),$(m),$(if $($(m)-objs),))) host-cobjs := $(sort $(foreach m,$(__hostprogs),$($(m)-objs))) +host-cxxobjs := $(sort $(foreach m,$(__hostprogs),$($(m)-cxxobjs))) $(host-csingle): %: %.c $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCFLAGS_$@) $< $(HOST_LOADLIBES) -o $@ @@ -22,9 +25,15 @@ $(host-csingle): %: %.c $(host-cmulti): %: $(host-cobjs) $(host-cshlib) $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCFLAGS_$@) $($@-objs) $(HOST_LOADLIBES) -o $@ +$(host-cxxmulti): %: $(host-cxxobjs) $(host-cobjs) $(host-cshlib) + $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCFLAGS_$@) $($@-objs) $($@-cxxobjs) $(HOSTLOADLIBES_$@) -o $@ + $(host-cobjs): %.o: %.c $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCFLAGS_$@) -c $< -o $@ +$(host-cxxobjs): %.o: %.cc + $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOSTCFLAGS) $(HOSTCXXFLAGS_$@) -c $< -o $@ + $(obj)/%:: $(src)/%_shipped $(Q)cat $< > $@ diff --git a/package/config/Makefile.kconfig b/package/config/Makefile.kconfig index 747f23d4c..6974cc3b5 100644 --- a/package/config/Makefile.kconfig +++ b/package/config/Makefile.kconfig @@ -131,6 +131,10 @@ endif ifeq ($(MAKECMDGOALS),xconfig) qconf-target := 1 endif +ifeq ($(findstring qconf,$(MAKECMDGOALS)),qconf) + qconf-target := 1 +endif + ifeq ($(MAKECMDGOALS),gconfig) gconf-target := 1 endif diff --git a/package/config/kconfig-to-buildroot2.patch b/package/config/kconfig-to-buildroot2.patch index e89046b73..8e7ce42ad 100644 --- a/package/config/kconfig-to-buildroot2.patch +++ b/package/config/kconfig-to-buildroot2.patch @@ -1,5 +1,5 @@ --- - Makefile | 3 + + Makefile | 7 +++ README.buildroot2 | 22 ++++++++++ conf.c | 13 ++---- confdata.c | 101 ++++++++++++++++++++++++++------------------------ @@ -10,13 +10,13 @@ util.c | 105 +++++++++++++++++++++++++++++++++++++++++++++++++++- zconf.tab.c_shipped | 2 zconf.y | 2 - 11 files changed, 234 insertions(+), 101 deletions(-) + 11 files changed, 238 insertions(+), 101 deletions(-) Index: config/Makefile =================================================================== --- config.orig/Makefile +++ config/Makefile -@@ -124,6 +124,9 @@ +@@ -124,10 +124,17 @@ ifeq ($(MAKECMDGOALS),menuconfig) hostprogs-y += mconf endif @@ -26,6 +26,14 @@ Index: config/Makefile ifeq ($(MAKECMDGOALS),xconfig) qconf-target := 1 + endif ++ifeq ($(findstring qconf,$(MAKECMDGOALS)),qconf) ++ qconf-target := 1 ++endif ++ + ifeq ($(MAKECMDGOALS),gconfig) + gconf-target := 1 + endif Index: config/README.buildroot2 =================================================================== --- /dev/null |