• Masahiro Yamada's avatar
    kconfig: add 'shell' built-in function · 2fd5b09c
    Masahiro Yamada authored
    This accepts a single command to execute.  It returns the standard
    output from it.
    
    [Example code]
    
      config HELLO
              string
              default "$(shell,echo hello world)"
    
      config Y
              def_bool $(shell,echo y)
    
    [Result]
    
      $ make -s alldefconfig && tail -n 2 .config
      CONFIG_HELLO="hello world"
      CONFIG_Y=y
    
    Caveat:
    Like environments, functions are expanded in the lexer.  You cannot
    pass symbols to function arguments.  This is a limitation to simplify
    the implementation.  I want to avoid the dynamic function evaluation,
    which would introduce much more complexity.
    Signed-off-by: default avatarMasahiro Yamada <yamada.masahiro@socionext.com>
    2fd5b09c
preprocess.c 7.69 KB