From mboxrd@z Thu Jan 1 00:00:00 1970 From: Doug Goldstein Subject: Re: [PATCHv6] 03/28] build: use generated Kconfig options for Xen Date: Wed, 9 Dec 2015 14:34:00 -0600 Message-ID: <56689038.8020000@cardoe.com> References: <1448387538-12208-1-git-send-email-cardoe@cardoe.com> <1448387538-12208-4-git-send-email-cardoe@cardoe.com> <565C6F2402000078000BA43E@prv-mh.provo.novell.com> <56673554.7050309@cardoe.com> <5667F71F02000078000BD7A0@prv-mh.provo.novell.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============4446357871778217098==" Return-path: In-Reply-To: <5667F71F02000078000BD7A0@prv-mh.provo.novell.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Jan Beulich Cc: Andrew Cooper , Keir Fraser , Stefano Stabellini , Ian Campbell , xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --===============4446357871778217098== Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="H2BJH7efUUSdbR9tFdDkhjFb0RNpDBInu" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --H2BJH7efUUSdbR9tFdDkhjFb0RNpDBInu Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable On 12/9/15 2:40 AM, Jan Beulich wrote: >>>> On 08.12.15 at 20:53, wrote: >> On 11/30/15 8:45 AM, Jan Beulich wrote: >>>>>> On 24.11.15 at 18:51, wrote: >>>> @@ -227,9 +230,14 @@ kconfig :=3D silentoldconfig oldconfig config m= enuconfig defconfig \ >>>> $(kconfig): >>>> $(MAKE) -f $(BASEDIR)/scripts/kconfig/Makefile ARCH=3D$(XEN_TARGET= _ARCH) $@ >>>> =20 >>>> -$(BASEDIR)/include/config/%.conf: $(BASEDIR)/include/config/auto.co= nf.cmd >>>> +$(BASEDIR)/include/config/%.conf: $(BASEDIR)/include/config/auto.co= nf.cmd $(BASEDIR)/.config >>>> $(Q)$(MAKE) -f $(BASEDIR)/scripts/kconfig/Makefile ARCH=3D$(XEN_TA= RGET_ARCH) silentoldconfig >>>> =20 >>>> # Allow people to just run `make` as before and not force them to c= onfigure >>>> -$(BASEDIR)/.config $(BASEDIR)/include/config/auto.conf.cmd: ; >>>> +$(BASEDIR)/.config: >>>> $(Q)$(MAKE) -f $(BASEDIR)/scripts/kconfig/Makefile ARCH=3D$(XEN_TA= RGET_ARCH) defconfig >>> >>> This should be one of the oldconfig targets now, shouldn't it? >> >> oldconfig uses .config. This is the case when the user has checked out= >> the tree fresh. Its there to not change the workflow of "git clone ...= >> && cd xen/xen && make" >=20 > Okay. But then this is meant to only support the simplest possible > form, i.e. without honoring any make command line or ./.config > overrides like debug=3Dy or kexec=3Dn? If that understanding of > mine is correct, at least the comment should mention such a > limitation (even better would be if in such cases unexpected > results would be prevented by - as the most trivial solution - > failing the build with a meaningful error message). So you would like me to add code into xen/Makefile to detect if someone ran "make kexec=3DX" or added "kexec=3DX" into top level .config and give= them a meaningful error message to tell them to use "make config" instead= ? >=20 >>>> +# Break the dependency chain for the first run >>>> +$(BASEDIR)/include/config/auto.conf.cmd: ; >>>> + >>>> +-include $(BASEDIR)/include/config/auto.conf.cmd >>> >>> The comment is quite a bit different in Linux, and seems to make more= >>> sense. Also note how Linux has an empty rule for $(KCONFIG_CONFIG), >>> a variable which iirc you defined in an earlier patch and hence perha= ps >>> you should be using here. >> >> I don't see where that's defined. >=20 > "That" may have multiple meanings in this context. The empty > rule is in ./Makefile: "That" was KCONFIG_CONFIG. Which was not anywhere in this patchset and was always .config. >=20 > # To avoid any implicit rule to kick in, define an empty command > $(KCONFIG_CONFIG) include/config/auto.conf.cmd: ; >=20 > And if I was wrong with seeing you define KCONFIG_CONFIG > somewhere, it would kind of imply that you probably should be > inheriting this level of abstraction from Linux. >=20 > Jan >=20 Ok. I'll add a variable called KCONFIG_CONFIG. It'll default to .config. Arguably someone can override "make menuconfig KCONFIG_CONFIG=3D/some/place/I/stored/my/config" in Linux which they call= "Load Alternate Config". Googling searching doesn't show this is a commonly used option/behavior since people usually copy their .config in.= The other places this variable matters are in the building of the dependencies in kbuild but Xen doesn't use kbuild. --=20 Doug Goldstein --H2BJH7efUUSdbR9tFdDkhjFb0RNpDBInu Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0 iQJ8BAEBCgBmBQJWaJA8XxSAAAAAAC4AKGlzc3Vlci1mcHJAbm90YXRpb25zLm9w ZW5wZ3AuZmlmdGhob3JzZW1hbi5uZXRBNTM5MEQ2RTNFMTkyNzlCNzVDMzIwOTVB MkJDMDNEQzg3RUQxQkQ0AAoJEKK8A9yH7RvUAbsP/iXeny+fnt0RNCXUs/7K1yD+ VXMdP5NhnappkSvhDGQ0Gv+C73fLVddyGMmfMtsBPITnpNMz7yHDb4EIIkzD+cwP /cZcdxj1IxCRWLookDY8Vc3PiomSEerEacTXPTV4fJ/z/YLPtzKiayXbKhcmydRd BYdFrLRpkDOfBTWfD1/JmQ7xQcUwiKZc45PkbgIW4UgWUQqmQEa2Nk/B7wwDBWa6 DTMng30WOxZkKqD2PbI/EJ+HZlnvW3cBBDydUKzMpBEtNQTUfKeyCBaB1rn+lkLw ILtxTjBiJi7F2RWFI/cE/kNFT1w+vIDbpEwDmL1Utifi+/8JFZKquwv+B1z9zjsm Hlix82jYtSUCkraSNsuRARv/PU0SVOOvSvwwsJqlA6AUdLK6/au7JXBRiQWG58lr QUjQZpAEoxY3BMPQSqoV1ETvjrIl9GFLwbJsR0L9nKoc/mFkTwHnWsn3JLhljmzd 9s0TdJ4vsLmDDMMyPNIfOCH9ey38RKGupLQ4KyAabBf4z5o+heaBOYGZJR8ygpOo s92V+i0P/ROcj5rNsms/GKjyyc6G5+ktx2Fcr6z22FFbMfiOY3sWCnb2COwkCjKw 5GcRslFKsfa2XORCezSZaeHAmu8jFeEWBGXGdlIIvRubV47WZbFZx9zJprf4tqBu HzLP1ov1L/KmdYLKveVi =JEid -----END PGP SIGNATURE----- --H2BJH7efUUSdbR9tFdDkhjFb0RNpDBInu-- --===============4446357871778217098== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel --===============4446357871778217098==--