Link lxdialog with mconf directly
cover Link lxdialog with mconf directly
The following series revives one three years old patch, turning lxdialog
to a library and linking it directly to mconf, making menuconfig nicer and things in general quite simpler and cleaner.
The first two patches make slight adjustements to kbuild in order to make
liblxdialog possible. The third patch does the libification itself and appropriate modifications to mconf.c.
PS: Sorry for the blank covermail I've sent before. StGIT still seems
to behave, er.. erratically.
Petr Baudis
Signature · 1 line
And on the eigth day, God started debugging.
PATCH 1/3 Allow building of standalone .so libraries
This patch allows specifying .so libraries directly in 'hostprogs-y'. I need to create a .so library not linked to anything in the scripts/lxdialog/ directory.
---
scripts/Makefile.host | 14 +++++++++++--- 1 files changed, 11 insertions(+), 3 deletions(-)
scripts/Makefile.host +11 -3
@@ -29,6 +29,12 @@ # conf.c is compiled as a c program, and conf.o is linked together with # libkconfig.so as the executable conf. # Note: Shared libraries consisting of C++ files are not supported +# +# hostprogs-y := liblxdialog.so +# liblxdialog-objs := checklist.o util.o +# Will create a "standalone" liblxdialog.so library in the directory, +# not linked against anything (useful when you want to link something +# to it later). __hostprogs := $(sort $(hostprogs-y)$(hostprogs-m))
@@ -39,7 +45,7 @@ obj-dirs := $(strip $(sort $(filter-out # C code # Executables compiled from a single .c file -host-csingle := $(foreach m,$(__hostprogs),$(if $($(m)-objs),,$(m))) +host-csingle := $(foreach m,$(__hostprogs),$(if $($(m:.so=)-objs),,$(m))) # C executables linked based on several .o files host-cmulti := $(foreach m,$(__hostprogs),\
@@ -57,8 +63,10 @@ host-cxxmulti := $(foreach m,$(__hostpro host-cxxobjs := $(sort $(foreach m,$(host-cxxmulti),$($(m)-cxxobjs))) # Shared libaries (only .c supported) -# Shared libraries (.so) - all .so files referenced in "xxx-objs" -host-cshlib := $(sort $(filter %.so, $(host-cobjs))) +# Shared libraries (.so) - all .so files referenced in "xxx-objs", and +# also standalone .so's referenced in hostprogs. +host-cshlib := $(sort $(filter %.so, $(host-cobjs))) \ + $(sort $(filter %.so, $(__hostprogs))) # Remove .so files from "xxx-objs" host-cobjs := $(filter-out %.so,$(host-cobjs))
PATCH 2/3 Possibility to sanely link against off-directory .so
In reply to Petr BaudisThis patch introduces two special variables which make it actually possible to link something against .so being built in another directory. The variable $(<foo>-linkobjs) allows the user to specify additional objects to link <foo> against, while not creating any dependencies of <foo> on the objects.
I need this in order to link scripts/lxdialog/liblxdialog.so from scripts/kconfig (I'll be able to build that lib thanks to the previous patch and the actual change to make it a library will follow in the next patch).
On 6 Nov 2002 Sam Ravnborg <[email protected]> disputed this approach, saying that such an extra complexity will bog the whole kernel build, but this involves only the host tools build and there I think the extra penalty is negligible. Also, .so has two users instead of a single one now, so it's not that easy to use his suggested approach to offload the functionality to the leaf makefiles.
---
scripts/Makefile.host | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-)
scripts/Makefile.host +7 -1
@@ -34,7 +34,12 @@ # liblxdialog-objs := checklist.o util.o # Will create a "standalone" liblxdialog.so library in the directory, # not linked against anything (useful when you want to link something -# to it later). +# to it later). To link the library from another directory, do: +# hostprogs-y := mconf +# mconf-objs := mconf.o +# mconf-linkobjs := ../lxdialog/liblxdialog.so +# This will prevent kbuild from trying to build ../lxdialog/liblxdialog.so +# from scripts/kconfig nor make mconf depend on it. __hostprogs := $(sort $(hostprogs-y)$(hostprogs-m))
@@ -116,6 +121,7 @@ $(host-csingle): %: %.c FORCE quiet_cmd_host-cmulti = HOSTLD $@ cmd_host-cmulti = $(HOSTCC) $(HOSTLDFLAGS) -o $@ \ $(addprefix $(obj)/,$($(@F)-objs)) \ + $(addprefix $(obj)/,$($(@F)-linkobjs)) \ $(HOST_LOADLIBES) $(HOSTLOADLIBES_$(@F)) $(host-cmulti): %: $(host-cobjs) $(host-cshlib) FORCE $(call if_changed,host-cmulti)
PATCH 3/3 Direct use of lxdialog routines by menuconfig
In reply to Petr BaudisAfter three years, the zombie walks again! This patch (against the latest git tree) cleans up interaction between kconfig's mconf (menuconfig frontend) and lxdialog. Its commandline interface disappears in this patch, instead a .so is packed from the lxdialog objects and the relevant functions are called directly from mconf.
In practice, this means that drawing on the screen is done with _MUCH_ less overhead now, the screen updates are better optimalized as ncurses won't get reset everytime you display something, that also implies that the ugly screen flickering is done. As a cute side-effect, the dialogs are now rendered on the top of the menu or help panel. In the future, this also gives us much more freedom for enhancing the user interface.
This opens space for plenty of cleanups of liblxdialog, removal of superfluous stuff and temporary files usage, etc.
Compared to the previous version (from February 2003), this one should be less buggy (especially wrt. the escape character handling), should not crash while resizing and the resizing should have immediate effect (although things can still start looking ugly when you are resizing while not in a menu - to fix that properly, more liblxdialog integration is required). Also, the code is considerably simplified on few places.
---
scripts/kconfig/Makefile | 18 + scripts/kconfig/mconf.c | 538 ++++++++++++++++-------------------------- scripts/lxdialog/.gitignore | 4 scripts/lxdialog/Makefile | 18 + scripts/lxdialog/checklist.c | 113 ++++----- scripts/lxdialog/dialog.h | 58 +++-- scripts/lxdialog/inputbox.c | 5 scripts/lxdialog/lxdialog.c | 226 ------------------ scripts/lxdialog/menubox.c | 95 ++++--- scripts/lxdialog/msgbox.c | 8 - scripts/lxdialog/textbox.c | 8 + scripts/lxdialog/util.c | 62 +++++ scripts/lxdialog/yesno.c | 6 13 files changed, 448 insertions(+), 711 deletions(-)
scripts/kconfig/Makefile +14 -4
@@ -10,9 +10,8 @@ xconfig: $(obj)/qconf gconfig: $(obj)/gconf $< arch/$(ARCH)/Kconfig -menuconfig: $(obj)/mconf - $(Q)$(MAKE) $(build)=scripts/lxdialog - $< arch/$(ARCH)/Kconfig +menuconfig: build-lxdialog $(obj)/mconf + $(obj)/mconf arch/$(ARCH)/Kconfig config: $(obj)/conf $< arch/$(ARCH)/Kconfig
@@ -83,7 +82,7 @@ help: # =========================================================================== # Shared Makefile for the various kconfig executables: # conf: Used for defconfig, oldconfig and related targets -# mconf: Used for the mconfig target. +# mconf: Used for the mconfig target # Utilizes the lxdialog package # qconf: Used for the xconfig target # Based on QT which needs to be installed to compile it
@@ -94,6 +93,7 @@ help: hostprogs-y := conf mconf qconf gconf kxgettext conf-objs := conf.o zconf.tab.o mconf-objs := mconf.o zconf.tab.o +mconf-linkobjs := ../lxdialog/liblxdialog.so kxgettext-objs := kxgettext.o zconf.tab.o ifeq ($(MAKECMDGOALS),xconfig)
@@ -129,6 +129,9 @@ endif HOSTCFLAGS_lex.zconf.o := -I$(src) HOSTCFLAGS_zconf.tab.o := -I$(src) +HOSTLOADLIBES_mconf = -lncurses + + HOSTLOADLIBES_qconf = $(KC_QT_LIBS) -ldl HOSTCXXFLAGS_qconf.o = $(KC_QT_CFLAGS) -D LKC_DIRECT_LINK
@@ -226,6 +229,13 @@ $(obj)/lkc_defs.h: $(src)/lkc_proto.h sed < $< > $@ 's/P(\([^,]*\),.*/#define \1 (\*\1_p)/' +# We need to do it indirectly since default kbuild rule will override +# us otherwise. +.PHONY: build-lxdialog +build-lxdialog: FORCE + $(Q)$(MAKE) $(build)=scripts/lxdialog + + ### # The following requires flex/bison/gperf # By default we use the _shipped versions, uncomment the following line if
scripts/kconfig/mconf.c +200 -338
851 lines not on this page · raw message
scripts/lxdialog/.gitignore new file +4 -0
@@ -0,0 +1,4 @@ +# +# The library +# +liblxdialog.so
scripts/lxdialog/Makefile +14 -4
@@ -1,4 +1,14 @@ -HOST_EXTRACFLAGS := -DLOCALE +# A little excursion to the grand scheme of things: +# +# Unlike how it used to be in the past, now we don't use the external lxdialog +# utility in make menuconfig, but we link the lxdialog suite directly against +# mconf. Also, mconf is linked against ncurses only over there, regardless +# to what you see here in HOST_LOADLIBES; here we merely check for ncurses +# presence. +# +# 2005-12-11 Petr Baudis <[email protected]> + +HOST_EXTRACFLAGS := -DLOCALE ifeq ($(shell uname),SunOS) HOST_LOADLIBES := -lcurses else
@@ -19,11 +29,11 @@ endif endif endif -hostprogs-y := lxdialog +hostprogs-y := liblxdialog.so always := ncurses $(hostprogs-y) -lxdialog-objs := checklist.o menubox.o textbox.o yesno.o inputbox.o \ - util.o lxdialog.o msgbox.o +liblxdialog-objs := checklist.o menubox.o textbox.o yesno.o inputbox.o \ + util.o msgbox.o .PHONY: $(obj)/ncurses $(obj)/ncurses:
scripts/lxdialog/checklist.c +47 -66
250 lines not on this page · raw message
scripts/lxdialog/dialog.h +38 -20
97 lines not on this page · raw message
scripts/lxdialog/inputbox.c +5 -0
@@ -123,6 +123,9 @@ dialog_inputbox (const char *title, conswhile (key !=ESC ) { key =wgetch (dialog); +if (should_resize) +do_resize_dialog (); +if (button ==-1 ) {/* Input box selected */ switch (key) {case TAB :
@@ -223,6 +226,8 @@ dialog_inputbox (const char *title, consbreak ; }break ; +case KEY_RESIZE : + button =-2 ;case ' ' :case '\n' :delwin (dialog);
scripts/lxdialog/lxdialog.c deleted +0 -226
226 lines not on this page · raw message
scripts/lxdialog/menubox.c +46 -49
249 lines not on this page · raw message
scripts/lxdialog/msgbox.c +6 -2
@@ -73,13 +73,17 @@ dialog_msgbox (const char *title, constwrefresh (dialog);while (key !=ESC && key !='\n' && key !=' ' && - key !='O' && key !='o' && key !='X' && key !='x' ) + key !='O' && key !='o' && key !='X' && key !='x' && + key !=KEY_RESIZE ) { key =wgetch (dialog); +if (should_resize) +do_resize_dialog (); + } }else { key ='\n' ;wrefresh (dialog); }delwin (dialog); -return key ==ESC ?-1 :0 ; +return key ==ESC ?-1 : key ==KEY_RESIZE ?-2 :0 ; }
scripts/lxdialog/textbox.c +7 -1
@@ -133,7 +133,13 @@ dialog_textbox (const char *title, constwhile ((key !=ESC ) && (key !='\n' )) { key =wgetch (dialog); + +if (should_resize) { +do_resize_dialog (); + } +switch (key) { +case KEY_RESIZE :case 'E' :/* Exit */ case 'e' :case 'X' :
@@ -141,7 +147,7 @@ dialog_textbox (const char *title, constdelwin (dialog);free (buf);close (fd); -return 0 ; +return key ==KEY_RESIZE ?-2 :0 ;case 'g' :/* First page */ case KEY_HOME :if (!begin_reached) {
scripts/lxdialog/util.c +61 -1
80 lines not on this page · raw message
scripts/lxdialog/yesno.c +6 -0
@@ -85,6 +85,10 @@ dialog_yesno (const char *title, const cwhile (key !=ESC ) { key =wgetch (dialog); + +if (should_resize) +do_resize_dialog (); +switch (key) {case 'Y' :case 'y' :
@@ -104,6 +108,8 @@ dialog_yesno (const char *title, const cprint_buttons (dialog, height, width, button);wrefresh (dialog);break ; +case KEY_RESIZE : + button =-2 ;case ' ' :case '\n' :delwin (dialog);
Re: [PATCH 3/3] [kconfig] Direct use of lxdialog routines by menuconfig
Quoted 18 lines · Petr Baudis
After three years, the zombie walks again! This patch (against the latest git tree) cleans up interaction between kconfig's mconf (menuconfig frontend) and lxdialog. Its commandline interface disappears in this patch, instead a .so is packed from the lxdialog objects and the relevant functions are called directly from mconf.
scripts/kconfig/mconf.c +2
-2@@ -808,18 +684,22 @@ static void conf(struct menu *menu) }break ;case 4 : -if (type =='t' ) +if (active_type =='t' )sym_set_tristate_value (sym, no);break ;case 5 : -if (type =='t' ) +if (active_type =='t' )sym_set_tristate_value (sym, mod);
scripts/kconfig/mconf.c static void conf(struct menu *menu) · line 699
Quoted 10 lines
scripts/kconfig/mconf.c +4
-3break ;case 6 : -if (type =='t' ) +if (active_type =='t' ) {sym_toggle_tristate_value (sym); -else if (type =='m' ) -conf (submenu); + }else if (active_type =='m' ) { +if (single_menu_mode) + submenu->data = (void *) !submenu->data;
Shouldn't this be:
submenu->data = (void *) (long) !submenu->data;
scripts/kconfig/mconf.c static void conf(struct menu *menu) · line 705
Quoted 6 lines
scripts/kconfig/mconf.c +3
-0+else +conf (submenu); + }break ;case 7 :search_conf ();
Kurt
Signature · 2 lines
The light at the end of the tunnel is the headlight of an approaching train.
Re: [PATCH 3/3] [kconfig] Direct use of lxdialog routines by menuconfig
Dear diary, on Mon, Dec 12, 2005 at 04:18:26AM CET, I got a letter where Kurt Wall <[email protected]> said that...
Quoted 31 lines · Petr Baudis
Quoted 18 lines
After three years, the zombie walks again! This patch (against the latest git tree) cleans up interaction between kconfig's mconf (menuconfig frontend) and lxdialog. Its commandline interface disappears in this patch, instead a .so is packed from the lxdialog objects and the relevant functions are called directly from mconf.
scripts/kconfig/mconf.c +2
-2@@ -808,18 +684,22 @@ static void conf(struct menu *menu) }break ;case 4 : -if (type =='t' ) +if (active_type =='t' )sym_set_tristate_value (sym, no);break ;case 5 : -if (type =='t' ) +if (active_type =='t' )sym_set_tristate_value (sym, mod);scripts/kconfig/mconf.c static void conf(struct menu *menu) · line 699
Quoted 10 lines
scripts/kconfig/mconf.c +4
-3break ;case 6 : -if (type =='t' ) +if (active_type =='t' ) {sym_toggle_tristate_value (sym); -else if (type =='m' ) -conf (submenu); + }else if (active_type =='m' ) { +if (single_menu_mode) + submenu->data = (void *) !submenu->data;Shouldn't this be:
Quoted 1 line
submenu->data = (void *) (long) !submenu->data;
You are right, it should be so at least for consistency - it'll be fixed in the next resend of the patch. I can't see why is it needed, though - shouldn't the int be padded to void* anyway?
Signature · 4 lines
Petr "Pasky" Baudis Stuff: http://pasky.or.cz/ VI has two modes: the one in which it beeps and the one in which it doesn't.
Re: [PATCH 3/3] [kconfig] Direct use of lxdialog routines by menuconfig
Quoted 3 lines · Petr Baudis
Dear diary, on Mon, Dec 12, 2005 at 04:18:26AM CET, I got a letter where Kurt Wall <[email protected]> said that...
[...]
Quoted 8 lines
Quoted 4 lines
Quoted 1 line
+
submenu->data= (void *) !submenu->data;Shouldn't this be:
submenu->data = (void *) (long) !submenu->data;You are right, it should be so at least for consistency - it'll be fixed in the next resend of the patch. I can't see why is it needed, though - shouldn't the int be padded to void* anyway?
The cast to long quiets a warning from gcc. Without the cast, it complains:
$ make menuconfig HOSTCC scripts/kconfig/mconf.o scripts/kconfig/mconf.c: In function `conf': scripts/kconfig/mconf.c:699: warning: cast to pointer from integer of different size HOSTLD scripts/kconfig/mconf scripts/kconfig/mconf arch/x86_64/Kconfig
I like the changes, though -- menuconfig is much snappier and easier on the eyes without the nasty flashing.
Kurt
Signature · 1 line
"I'd love to go out with you, but it's my parakeet's bowling night."
Re: [PATCH 3/3] [kconfig] Direct use of lxdialog routines by menuconfig
In reply to Petr BaudisHi,
Quoted 6 lines · Petr Baudis
In practice, this means that drawing on the screen is done with _MUCH_ less overhead now, the screen updates are better optimalized as ncurses won't get reset everytime you display something, that also implies that the ugly screen flickering is done. As a cute side-effect, the dialogs are now rendered on the top of the menu or help panel. In the future, this also gives us much more freedom for enhancing the user interface.
At least in the first version I'd prefer not to do draw the dialogs over each other. It's just weird if a string dialog pops up over the help text. In the next version we should add some infrastructure to properly layer windows on top of other (and should also help with resizing).
Quoted 6 lines
Compared to the previous version (from February 2003), this one should be less buggy (especially wrt. the escape character handling), should not crash while resizing and the resizing should have immediate effect (although things can still start looking ugly when you are resizing while not in a menu - to fix that properly, more liblxdialog integration is required). Also, the code is considerably simplified on few places.
The <esc><esc> as described in mconf.c still produces two exits, which is a little annoying if one is used to it. I don't know how easy it is to supress that second <esc>.
Otherwise it looks good. Regarding merging please coordinate with Sam and if you move it, I'd prefer to keep it in a subdirectory, e.g. just "mv scripts/lxdialog scripts/kconfig/lxdialog".
bye, Roman
Re: [PATCH 3/3] [kconfig] Direct use of lxdialog routines by menuconfig
Quoted 11 lines · Roman Zippel
Quoted 7 lines
Compared to the previous version (from February 2003), this one should be less buggy (especially wrt. the escape character handling), should not crash while resizing and the resizing should have immediate effect (although things can still start looking ugly when you are resizing while not in a menu - to fix that properly, more liblxdialog integration is required). Also, the code is considerably simplified on few places.
The <esc><esc> as described in
mconf.cstill produces two exits, which is a little annoying if one is used to it. I don't know how easy it is to supress that second <esc>.
The <esc><esc> behaviour is just illogical and to let it die cannot hurt much. We create a more logical interface but yes, some users will be irritated only due to the change.
Sam
Re: [PATCH 3/3] [kconfig] Direct use of lxdialog routines by menuconfig
In reply to Petr BaudisQuoted 16 lines · Petr Baudis
After three years, the zombie walks again! This patch (against the latest git tree) cleans up interaction between kconfig's mconf (menuconfig frontend) and lxdialog. Its commandline interface disappears in this patch, instead a .so is packed from the lxdialog objects and the relevant functions are called directly from mconf.
In practice, this means that drawing on the screen is done with _MUCH_ less overhead now, the screen updates are better optimalized as ncurses won't get reset everytime you display something, that also implies that the ugly screen flickering is done. As a cute side-effect, the dialogs are now rendered on the top of the menu or help panel. In the future, this also gives us much more freedom for enhancing the user interface.
This opens space for plenty of cleanups of liblxdialog, removal of superfluous stuff and temporary files usage, etc.
Quoted 8 lines
Compared to the previous version (from February 2003), this one should be less buggy (especially wrt. the escape character handling), should not crash while resizing and the resizing should have immediate effect (although things can still start looking ugly when you are resizing while not in a menu - to fix that properly, more liblxdialog integration is required). Also, the code is considerably simplified on few places.
Signed-off-by Petr Baudis <[email protected]>
I just gave it a very quick spin and I like it. Very nice.
It's definately a lot snappier, nice work.
--
Jesper Juhl <[email protected]>
Don't top-post http://www.catb.org/~esr/jargon/html/T/top-post.html
Plain text mails only, please http://www.expita.com/nomime.html
Quoted 7 lines · Petr Baudis
The following series revives one three years old patch, turning lxdialog
to a library and linking it directly to mconf, making menuconfig nicer and things in general quite simpler and cleaner.The first two patches make slight adjustements to kbuild in order to make
liblxdialog possible. The third patch does the libification itself and appropriate modifications tomconf.c.
Why not just copy over relevant files to scripts/kconfig? Then no playing tricks with libaries etc. is needed, and everythings just works.
It is only 8 files and prefixing them with lx* would make them stand out compared to the rest. It is not like there is any user planned for the lxdialog functionality in the kernel, and kconfig users outside the kernel I beleive copy lxdialog with rest of kconfig files.
Btw. the work you are doing are clashing with a general cleanup effort of lxdialog I have in -mm at the moment.
I received only very limited feedback = looks ok. Integrating principles from your old patch was on my TODO list.
I have something in the works that uses linked list instead of a preallocated array, to keep the dynamic behaviour. I will probarly make a version with the linked list approach but otherwise use your changes to mconf.c. But it will take a few days until I get to it.
Sam
Dear diary, on Mon, Dec 12, 2005 at 08:14:22PM CET, I got a letter where Sam Ravnborg <[email protected]> said that...
Quoted 9 lines · Petr Baudis
Quoted 7 lines
The following series revives one three years old patch, turning lxdialog
to a library and linking it directly to mconf, making menuconfig nicer and things in general quite simpler and cleaner.The first two patches make slight adjustements to kbuild in order to make
liblxdialog possible. The third patch does the libification itself and appropriate modifications tomconf.c.
Quoted 8 lines
Why not just copy over relevant files to
scripts/kconfig? Then no playing tricks with libaries etc. is needed, and everythings just works.It is only 8 files and prefixing them with lx* would make them stand out compared to the rest. It is not like there is any user planned for the lxdialog functionality in the kernel, and kconfig users outside the kernel I beleive copy lxdialog with rest of kconfig files.
Ok. I didn't want to pollute scripts/kconfig/ too much, but if it's ok by you, I can do it that way. I will submit another series later in the evening.
Quoted 4 lines
Btw. the work you are doing are clashing with a general cleanup effort of lxdialog I have in -mm at the moment.
I received only very limited feedback = looks ok. Integrating principles from your old patch was on my TODO list.
Do you mean the series you posted at Nov 21? Should I just rebase my patches on top of that?
FWIW, the changes there look fine to me. I actually wanted to change the indentation of the menus as well; it looks horrible especially in the singlemenu mode.
Quoted 4 lines
I have something in the works that uses linked list instead of a preallocated array, to keep the dynamic behaviour. I will probarly make a version with the linked list approach but otherwise use your changes to
mconf.c. But it will take a few days until I get to it.
I can do it and include it in the updated series.
Signature · 4 lines
Petr "Pasky" Baudis Stuff: http://pasky.or.cz/ VI has two modes: the one in which it beeps and the one in which it doesn't.
Quoted 8 lines · Petr Baudis
Quoted 4 lines
It is only 8 files and prefixing them with lx* would make them stand out compared to the rest. It is not like there is any user planned for the lxdialog functionality in the kernel, and kconfig users outside the kernel I beleive copy lxdialog with rest of kconfig files.
Ok. I didn't want to pollute
scripts/kconfig/too much, but if it's ok by you, I can do it that way. I will submit another series later in the evening.
In the end this is Roman's call, not mine.
Keeping the lxdialog functionality close to the users though makes total sense. We do not have to take special care of dependencies etc.
Quoted 8 lines
Quoted 5 lines
Btw. the work you are doing are clashing with a general cleanup effort of lxdialog I have in -mm at the moment.
I received only very limited feedback = looks ok. Integrating principles from your old patch was on my TODO list.Do you mean the series you posted at Nov 21? Should I just rebase my patches on top of that?
Please do so. I did not post the biggest one where I Lindented all of lxdialog, but they are all ingit://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild.git
Quoted 10 lines
FWIW, the changes there look fine to me. I actually wanted to change the indentation of the menus as well; it looks horrible especially in the singlemenu mode.
Quoted 4 lines
I have something in the works that uses linked list instead of a preallocated array, to keep the dynamic behaviour. I will probarly make a version with the linked list approach but otherwise use your changes to
mconf.c. But it will take a few days until I get to it.I can do it and include it in the updated series.
Would be perfect!
I will then do a proper review of next round of patches.
Sam
Quoted 4 lines · Petr Baudis
Ok. I didn't want to pollute
scripts/kconfig/too much, but if it's ok by you, I can do it that way. I will submit another series later in the evening.
I've just done the renaming and relevant updates.
So you will deal with much smaller patches.
My kbuild tree is updated with the changes and will soon mirror out.
Sam