From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Date: Tue, 22 Sep 2020 10:26:15 +0200 From: Michael Olbrich Message-ID: <20200922082615.GF11021@pengutronix.de> References: <20200921221728.3229-1-rhi@pengutronix.de> <20200921221728.3229-5-rhi@pengutronix.de> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <20200921221728.3229-5-rhi@pengutronix.de> Subject: Re: [ptxdist] [PATCH 5/7] ptxdist: implement 'defconfig' commands for kconfig packages List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ptxdist-bounces@pengutronix.de Sender: "ptxdist" To: ptxdist@pengutronix.de Cc: Roland Hieber On Tue, Sep 22, 2020 at 12:17:26AM +0200, Roland Hieber wrote: > The current process to generate a kernel .config file from a defconfig > is a bit cumbersome: > > $ ptxdist extract kernel > $ cd platform-foo/build-target/linux- > $ make ARCH=... CROSS_COMPILE=... foo_defconfig > $ cp .config ../../../configs/platform-foo/kernelconfig > > All kernel and barebox rules and templates already support the > _%config target since commit b0f9f2fe33ca9027a554 (2020-08-07, > "barebox, kernel: enable use of {allyes, allno, allmod, alldef, > rand}config"), so we only need to wire them into the command line > parser, and then we can easily get a defconfig like this: > > $ ptxdist defconfig kernel # most ARCHs > $ ptxdist imx_v6_v7_defconfig kernel # e.g. with ARCH=arm > > Signed-off-by: Roland Hieber > --- > bin/ptxdist | 15 ++++++++++++++- > doc/ref_parameter.rst | 9 +++++++++ > 2 files changed, 23 insertions(+), 1 deletion(-) > > diff --git a/bin/ptxdist b/bin/ptxdist > index 0d5e4328e1d6..c2cf744f70a8 100755 > --- a/bin/ptxdist > +++ b/bin/ptxdist > @@ -705,6 +705,9 @@ Setup and Project Actions: > > menuconfig barebox configure the bootloader Barebox > > + []defconfig [] generate a default config file for > + e.g.: ptxdist multi_v7_defconfig kernel > + '[]' means something is optional and this is not the case for the package: []defconfig > oldconfig run 'make oldconfig' on ptxconfig file > allmodconfig run 'make allmodconfig' on ptxconfig file > allyesconfig run 'make allyesconfig' on ptxconfig file > @@ -1267,6 +1270,16 @@ do_config() > case "${config}" in > menuconfig|nconfig|oldconfig|all*config|randconfig) > ;; > + *defconfig) > + case "${part}" in > + "ptx"|"ptxdist"|""|"setup"|"platform"|"board"|"user"|"collection") > + echo > + echo "${PTXDIST_LOG_PROMPT}error: cannot do a '${config}' for part '${part}'" > + echo > + exit 1 > + ;; > + esac > + ;; > *) > echo > echo "${PTXDIST_LOG_PROMPT}error: invalid use of '${FUNCNAME} ${@}'" > @@ -1625,7 +1638,7 @@ parse_second() > > ######## *config, *setup, toolchain > > - menuconfig|nconfig|oldconfig|allmodconfig|allyesconfig|allnoconfig|alldefconfig|randconfig) > + menuconfig|nconfig|oldconfig|allmodconfig|allyesconfig|allnoconfig|*defconfig|randconfig) > do_config "${cmd}" "${@}" > exit > ;; > diff --git a/doc/ref_parameter.rst b/doc/ref_parameter.rst > index 1d54fa4b4428..ac1e06c5335e 100644 > --- a/doc/ref_parameter.rst > +++ b/doc/ref_parameter.rst > @@ -95,6 +95,15 @@ Setup and Project Actions > functionality as ``menuconfig``. It can be used instead of ``menuconfig`` > for all the component described above. > > +``[]defconfig []`` Same here. The package is not optional. Michael > + generate a default config file for kconfig-based packages (kernel, barebox). > + The ``[]`` can be given optionally to use a specific defconfig file, > + which depends on the respective package and the architecture. > + Examples:: > + > + $ ptxdist defconfig kernel # most ARCHs > + $ ptxdist imx_v6_v7_defconfig kernel # e.g. for ARCH=arm > + > ``oldconfig []``, ``allmodconfig []``, ``allyesconfig []``, ``allnoconfig []``, ``alldefconfig []``, ``randconfig []`` > this action will run the corresponding kconfig action for the specified > component. ``oldconfig`` will prompt for all new options. > -- > 2.28.0 > > > _______________________________________________ > ptxdist mailing list > ptxdist@pengutronix.de > To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de > -- Pengutronix e.K. | | Steuerwalder Str. 21 | http://www.pengutronix.de/ | 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 | _______________________________________________ ptxdist mailing list ptxdist@pengutronix.de To unsubscribe, send a mail with subject "unsubscribe" to ptxdist-request@pengutronix.de