[U-Boot-Users] [PATCH 8/9] Generate include/autoconf.mk from board config files
Shinya Kuribayashi
skuribay at ruby.dti.ne.jp
Wed Sep 26 16:24:24 CEST 2007
Grant Likely wrote:
> diff --git a/tools/scripts/define2mk.sed b/tools/scripts/define2mk.sed
> new file mode 100644
> index 0000000..6464627
> --- /dev/null
> +++ b/tools/scripts/define2mk.sed
> @@ -0,0 +1,29 @@
> +#
> +# Sed script to parse CPP macros and generate output usable by make
> +#
> +# It is expected that this script is fed the output of 'gpp -dM'
'cpp -dM'
> +# which preprocesses the common.h header files and outputs the final
> +# list of CPP macros (and whitespace is sanitized)
> +#
> +
> +# Only process values prefixed with #define CONFIG_
> +/^#define CONFIG_[A-Za-z0-9_]\+/ {
> + # Strip the #define prefix
> + s/#define *//;
> + # Change to form CONFIG_*=VALUE
> + s/ \+/=/;
> + # Drop trailing spaces
> + s/ *$//;
> + # drop quotes around string values
> + s/="\(.*\)"$/=\1/;
> + # Concatenate string values
> + s/" *"//g;
> + # Wrap non-numeral values with quotes
> + s/=\(.*\?[^0-9].*\)$/=\"\1\"/;
> + # Change '1' and empty values to "y" (not perfect, but
> + # supports conditional compilation in the makefiles
> + s/=$/=y/;
> + s/=1$/=y/;
> + # print the line
> + p
> +}
It seems scripts works, but I feel like a little bit hard coded.
FWIW how Linux work around this sort of job? I have to check..
Anyway, I don't intend to object this patch. Please go ahead :-)
Thanks,
Shinya Kuribayashi
P.S.
The remaining patches are also Ok for me.
More information about the U-Boot
mailing list