On Sun, 2011-01-16 at 16:20 -0500, Kevin O'Connor wrote:
On Sun, Jan 16, 2011 at 09:38:37PM +0100, Marc Bertens wrote:
Kevin,
Finally here is the patch for Kconfig build system for SeaBIOS, the patch exists out of two files;
- kconfig-for-seabios-patch.1.diff this is the part where the new
files are added. 2. kconfig-for-seabios-patch.2.diff this is the part with the changes to the existing files.
Thanks Marc.
Your patch was too large for the mailing list. Can you put future versions online somewhere or send compressed?
I hope that you agree with the changes :-) and that the kconfig will here to stay....
I loaned the kconfig build system from the coreboot project, maybe there are some references there what i missed.
[...]
+++ b/src/configh.h @@ -0,0 +1,248 @@ +/*
- This file is part of the seabios project.
- Copyright (C) 2011 Marc Bertens mbertens@xs4all.nl
- Copyright (C) 2008-2010 Kevin O'Connor kevin@koconnor.net
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; version 2 of the License.
[...]
I really don't like these big copyright banners. I don't see much point in copyrighting a header file. SeaBIOS is LGPLv3, and all core files must use that copyright.
Oke, not a problem, was trying to do it right :-)
This doesn't apply to non-core files copied from other projects, so doesn't need to be true for tools/kconfig.
Also, your first patch modifies seabios, but I thought you were going to do that in patch2? I don't see a reason to have old way and new way in parallel - lets just go right to the kconfig way. The way you've introduced configh.h, configu.h, and configk.h in addition to the existing config.h is confusing.
I did not know how you wanted to proceed with this, that why i made it backwards compatible. But we can drop it, if we go direcly to the kconfig build system.
configk.h are the leftovers from the orginal config.h which are not maintained yet by Kconfig configh.h is the orginal config.h this is included when Kconfig is in config.h modes, this needs the configu.h witch undefines everything before configk.h in included.
so, if we want to move directly to Kconfig move the stuff from configk.h to config.h. and drop the files configh.h and configu.h, and removed them from config.h
[...]
--- a/tools/kconfig/Makefile +++ b/tools/kconfig/Makefile @@ -225,7 +225,7 @@ endif $(objk)/gconf.o: $(objk)/.tmp_gtkcheck
ifeq ($(gconf-target),1) --include $(objk)/.tmp_gtkcheck +include $(objk)/.tmp_gtkcheck
# GTK needs some extra effort, too... $(objk)/.tmp_gtkcheck: @@ -250,23 +250,23 @@ endif
# --- UNUSED, ignore ---------------------------------------------------------- ifdef UNUSED -$(obj)/zconf.tab.o: $(obj)/lex.zconf.c $(obj)/zconf.hash.c +$(obj)/zconf.tab.o: $(srck)/lex.zconf.c $(srck)/zconf.hash.c
Can you explain what this does?
-Kevin
I'm not sure, i was learning and building the kconfig system in one weekend, and i was trying to get the "gconfig" to work, that still has a problem when compiling and starting.
Currently the 'menuconfig' works correctly and i could not test the 'xconfig' yet.
So for now we have todo with menuconfig only.