From a0f533460bcb41a04d592345303348575f2e23e2 Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Sun, 11 Apr 2010 02:14:56 +0200 Subject: auto-generate package/Config.in The algorithm in package/pkgmaker works as follows: 1) for all package/*/Makefile a) parse PKG_NAME and PKG_SECTION b) skip if PKG_SECTION is 'kernel' (special ones) c) check if Config.in{,.lib,.manual} contain something d) fetch the first word of the first prompt from any result from c) e) fetch the verbose section name from package/SECTIONS.list based on PKG_SECTION, or just 'libs' if it's about Config.in.lib f) write results to package/package_section_list, in the form: ' ' 2) sort package/package_section_list first by , next by 3) create package/Config.in.auto using the result from 2) --- .gitignore | 1 + 1 file changed, 1 insertion(+) (limited to '.gitignore') diff --git a/.gitignore b/.gitignore index 3c58ed468..1e46f0c60 100644 --- a/.gitignore +++ b/.gitignore @@ -28,6 +28,7 @@ config/*.o config/lxdialog/*.o make.log dl/ +package/Config.in.auto package/*/info.mk package/*/Config.in package/*/Config.in.lib -- cgit v1.2.3 From 2c5f2d9b3b3b26ecf783f30112fc6019c1c17167 Mon Sep 17 00:00:00 2001 From: Phil Sutter Date: Sat, 12 Jun 2010 17:35:44 +0200 Subject: massive rewrite of the pkgmaker logic When adjusting for auto-generated package/Config.in, I found out that the splitting into Config.in{,.lib,.kmod} done by pkgmaker was rather subversive to my approach. Categorisation of packages and subpackages should be done via package section, which is enabled by this patch for subpackages, too. Instead of filling up the package subdirectories, use a common directory package/pkgconfigs.d/ to contain all auto-generated Config.in files. In order to allow simple assumption from config symbol to actual package from within menuconfig (the path to the Config.in file containing the current config symbol is printed as part of the help text), put all generated Config.in files for a certain package into a common subdirectory. pkgmaker now saves each generated config symbol (excluding the flavours) into it's own file, therefore allowing to sort subpackages of a package into a different section. --- .gitignore | 1 + 1 file changed, 1 insertion(+) (limited to '.gitignore') diff --git a/.gitignore b/.gitignore index 1e46f0c60..5e17dd900 100644 --- a/.gitignore +++ b/.gitignore @@ -29,6 +29,7 @@ config/lxdialog/*.o make.log dl/ package/Config.in.auto +package/pkgconfigs.d/ package/*/info.mk package/*/Config.in package/*/Config.in.lib -- cgit v1.2.3