-
Notifications
You must be signed in to change notification settings - Fork 589
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add defconfig make target for current arch config #2446
base: master
Are you sure you want to change the base?
Conversation
@@ -72,6 +72,11 @@ menuconfig: Kconfig | |||
MENUCONFIG_STYLE=aquatic \ | |||
$(KCONFIG_MCONF) $< | |||
|
|||
# Generate config for the current architecture (only) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't we build arm64 and amd64 by default?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Possibly. But we build for everything by default. This was a request for something between "minimal" and "all"
What I have wanted in the past is something like
make minimal templates install
, so I still get all the templates, but only the native guestagent. Because minimal only installs the default template.
Going with files (instead of a script) is probably easiest for discussion, even if config is somewhat duplicated.
This comment was marked as off-topic.
This comment was marked as off-topic.
Signed-off-by: Anders F Björklund <anders.f.bjorklund@gmail.com>
I agree with the opinion that a way to install only the native guest agent is needed, but I don’t quite understand why that would require |
I don’t necessarily want to block this PR, but since I don't understand the reasons for its implementation, I don’t have the criteria to judge its merits and therefore cannot evaluate the PR. |
The Kconfig is the configuration for the Makefile code, so enabling/disabling features is done there. A similar system is autoconf for automake, you might have seen a |
Another approach would be to add another boolean, that would override the other ones (per arch). e.g. GUESTAGENT_ARCH_HOSTONLY
And then do the rest (uname) in the Makefile. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I understand what this PR is doing, but I still don’t understand why it’s necessary.
@@ -72,6 +72,11 @@ menuconfig: Kconfig | |||
MENUCONFIG_STYLE=aquatic \ | |||
$(KCONFIG_MCONF) $< | |||
|
|||
# Generate config for the current architecture (only) | |||
# This is done to avoid a dependency on KCONFIG tools | |||
defconfig: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What does the name defconfig
mean? If it stands for something like 'default config,' wouldn't config.mk
already be the default? I believe the name should be something that users searching for the feature added by this PR can easily find.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It's a kconfig thing, I think it stands for default config for this specific architecture or some-such?
It's unrelated to the "default config" (all options off / empty config file), in that it does have config.
The way it is created is that you select the options you want, and then run "savedefconfig" to defconfig.
The normal .config file that is generated has all available options, including ones you didn't pick.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It is useful when you are building something linux or busybox, or an embedded system like buildroot.
It is totally overkill for something with a half dozen options (like Lima) - unless you are already used to it :-)
The only requirement was to be able to build Lima for the host architecture only... Building "minimal" does this, but it doesn't include any templates or helpers. Current workaround is doing the quiz:
|
I’ve drafted a PR #2638 that refactors the Makefile, including a solution to that requirement. |
make defconfig
The goal was to generate a config file, with only the current architecture.
Default config, empty
defconfig
:Could have used files:
As in the tool default:
ARCH=x86_64 kconfig-conf --defconfig Kconfig
arch/x86_64/config.mk
alternatively, defconfig:
ARCH=aarch64 kconfig-conf --defconfig Kconfig
arch/aarch64/config.mk
alternatively, defconfig:
The framework is overkill here, compared with kernel.
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/tree/arch