lkml.org 
[lkml]   [2011]   [Jul]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    SubjectRe: [RFC] Kconfig library check merge
    From
    Hi,

    2011/7/1 Michal Marek <mmarek@suse.cz>:
    > On 6.6.2011 21:16, Arnaud Lacombe wrote:
    >>
    >> Hi Michal, Sam,
    >>
    >> This is a bit a more deep patch. I was fed up of seeing the various
    >> library
    >> check done for kconfig in at least 3 places in the scripts/kconfig/ tree.
    >> In
    >> particular, the QT and GTK checks are far too messy to be in a Makefile,
    >> while
    >> the gettext is pretty trivial and has its own shell script... Moreover,
    >> `nconf'
    >> is missing explicit check for ncurses.
    >>
    >> Anyway, here it is. It is a single huge patch _on_purpose_, merely meant
    >> to be a
    >> proof of concept. It is based on the previous serie of trivial fixes.
    >>
    >> Most of the changes are made to rationalize the architecture. I thought in
    >> the
    >> beginning of using autoconf/automake, but that'd be overkill. A single
    >> shell
    >> script is far enough to do the job. All the checks only do a bunch of
    >> verification, and export CFLAGS/LDFLAGS for building the frontend. The
    >> script
    >> itself output a Makefile ready to be included for the top-level Makefile,
    >> with
    >> the necessary check to trigger a re-check if the requested front-end is
    >> changed.
    >>
    >> Comments welcome!
    >>
    >> Regards,
    >>  - Arnaud
    >>
    >> Cc: Sam Ravnborg<sam@ravnborg.org>
    >>
    >> ---
    >>  scripts/kconfig/Makefile                   |  160
    >> +++++++------------------
    >>  scripts/kconfig/check.sh                   |  184
    >> ++++++++++++++++++++++++++--
    >>  scripts/kconfig/lxdialog/check-lxdialog.sh |   84 -------------
    >>  3 files changed, 216 insertions(+), 212 deletions(-)
    >>
    >> diff --git a/scripts/kconfig/Makefile b/scripts/kconfig/Makefile
    >> index 84abb2f..f8f853d 100644
    >> --- a/scripts/kconfig/Makefile
    >> +++ b/scripts/kconfig/Makefile
    >> @@ -141,14 +141,6 @@ help:
    >>        @echo  '  listnewconfig   - List new options'
    >>        @echo  '  oldnoconfig     - Same as silentoldconfig but set new
    >> symbols to n (unset)'
    >>
    >> -# lxdialog stuff
    >> -check-lxdialog  := $(srctree)/$(src)/lxdialog/check-lxdialog.sh
    >> -
    >> -# Use recursively expanded variables so we do not call gcc unless
    >> -# we really need to do so. (Do not call gcc as part of make mrproper)
    >> -HOST_EXTRACFLAGS += $(shell $(CONFIG_SHELL) $(check-lxdialog) -ccflags) \
    >> -                    -DLOCALE
    >> -
    >>  #
    >> ===========================================================================
    >>  # Shared Makefile for the various kconfig executables:
    >>  # conf:         Used for defconfig, oldconfig and related targets
    >> @@ -173,14 +165,19 @@ qconf-cxxobjs     := qconf.o
    >>  qconf-objs    := zconf.tab.o
    >>  gconf-objs    := gconf.o zconf.tab.o
    >>
    >> -hostprogs-y := conf
    >> +frontends-objs := $(conf-objs) $(mconf-objs) $(nconf-objs)
    >> +frontends-objs := $(qconf-cxxobjs) $(gconf-objs)
    >
    >                  ^^
    > Should be +=.
    >
    will fix.

    >> +
    >> +hostprogs-y :=
    >>
    >>  ifeq ($(MAKECMDGOALS),nconfig)
    >>        hostprogs-y += nconf
    >> +       ncurses-check := 1
    >>  endif
    >>
    >>  ifeq ($(MAKECMDGOALS),menuconfig)
    >>        hostprogs-y += mconf
    >> +       ncurses-check := 1
    >>  endif
    >>
    >>  ifeq ($(MAKECMDGOALS),update-po-config)
    >> @@ -188,140 +185,67 @@ ifeq ($(MAKECMDGOALS),update-po-config)
    >>  endif
    >>
    >>  ifeq ($(MAKECMDGOALS),xconfig)
    >> -       qconf-target := 1
    >> -endif
    >> -ifeq ($(MAKECMDGOALS),gconfig)
    >> -       gconf-target := 1
    >> -endif
    >> -
    >> -
    >> -ifeq ($(qconf-target),1)
    >>        hostprogs-y += qconf
    >> +       qt-check := 1
    >>  endif
    >> -
    >> -ifeq ($(gconf-target),1)
    >> +ifeq ($(MAKECMDGOALS),gconfig)
    >>        hostprogs-y += gconf
    >> +       gtk-check := 1
    >>  endif
    >
    > ...
    >>
    >> +KC_CHECK       := gettext
    >> +
    >> +ifeq ($(ncurses-check),1)
    >> +KC_CHECK       += ncurses
    >>  endif
    >
    > You could also build the KC_CHECK right when doing the $(MAKECMDGOALS) tests
    > and drop the *-check variables. Otherwise it is a very nice cleanup, thanks
    > a lot!
    >
    yes, good point.

    Btw, I intend to split the patch into more logical part. Will update soon.

    - Arnaud
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2011-07-02 02:35    [W:0.033 / U:4.652 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site