[opensuse-kernel] [PATCH] rpm/kernel-source.spec.in: require bc for kernel-source
This is needed for building include/generated/timeconst.h from kernel/time/timeconst.bc. --- rpm/kernel-source.spec.in | 1 + 1 file changed, 1 insertion(+) diff --git a/rpm/kernel-source.spec.in b/rpm/kernel-source.spec.in index f58b8946a0..2d80c45883 100644 --- a/rpm/kernel-source.spec.in +++ b/rpm/kernel-source.spec.in @@ -118,6 +118,7 @@ Prefix: /usr/src # Source is only complete with devel files. Requires: kernel-devel%variant = %version-%source_rel Recommends: openssl-devel +Requires: bc %(chmod +x %_sourcedir/{@SCRIPTS@}) -- 2.18.0 -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Wed, 18 Jul 2018 11:28:38 +0200, Andreas Schwab wrote:
This is needed for building include/generated/timeconst.h from kernel/time/timeconst.bc.
Applied now, thanks. Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Wednesday, 18 July 2018 11:28 Andreas Schwab wrote:
This is needed for building include/generated/timeconst.h from kernel/time/timeconst.bc. --- rpm/kernel-source.spec.in | 1 + 1 file changed, 1 insertion(+)
diff --git a/rpm/kernel-source.spec.in b/rpm/kernel-source.spec.in index f58b8946a0..2d80c45883 100644 --- a/rpm/kernel-source.spec.in +++ b/rpm/kernel-source.spec.in @@ -118,6 +118,7 @@ Prefix: /usr/src # Source is only complete with devel files. Requires: kernel-devel%variant = %version-%source_rel Recommends: openssl-devel +Requires: bc
%(chmod +x %_sourcedir/{@SCRIPTS@})
I'm not sure about this. 1. People install kernel-source for various reasons, not always to be able to build whole kernel. Some only want to check the sources (sure, it would be easier to use git), some want to build an out of tree module (and don't know that's what -devel packages are for) etc. 2. If we really want kernel-source to have hard requirement for tools needed to build the kernel, we should be consistent and require all of them, not just pick one. We would have to require at least flex, bison and libelf-devel, maybe more. Right now, there is only "Recommends: openssl-devel". Michal Kubecek -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 07:10:58 +0200, Michal Kubecek wrote:
On Wednesday, 18 July 2018 11:28 Andreas Schwab wrote:
This is needed for building include/generated/timeconst.h from kernel/time/timeconst.bc. --- rpm/kernel-source.spec.in | 1 + 1 file changed, 1 insertion(+)
diff --git a/rpm/kernel-source.spec.in b/rpm/kernel-source.spec.in index f58b8946a0..2d80c45883 100644 --- a/rpm/kernel-source.spec.in +++ b/rpm/kernel-source.spec.in @@ -118,6 +118,7 @@ Prefix: /usr/src # Source is only complete with devel files. Requires: kernel-devel%variant = %version-%source_rel Recommends: openssl-devel +Requires: bc
%(chmod +x %_sourcedir/{@SCRIPTS@})
I'm not sure about this.
1. People install kernel-source for various reasons, not always to be able to build whole kernel. Some only want to check the sources (sure, it would be easier to use git), some want to build an out of tree module (and don't know that's what -devel packages are for) etc.
True.
2. If we really want kernel-source to have hard requirement for tools needed to build the kernel, we should be consistent and require all of them, not just pick one. We would have to require at least flex, bison and libelf-devel, maybe more. Right now, there is only "Recommends: openssl-devel".
Yeah, a good point. Moving the items that are in BuildRequires to be Requires in kernel-*-devel sounds like a better idea. thanks, Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Michal Kubecek
We would have to require at least flex, bison and libelf-devel, maybe more.
Nope, none of them are needed. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 08:55:06 +0200, Takashi Iwai wrote:
On Mon, 23 Jul 2018 07:10:58 +0200, Michal Kubecek wrote:
On Wednesday, 18 July 2018 11:28 Andreas Schwab wrote:
This is needed for building include/generated/timeconst.h from kernel/time/timeconst.bc. --- rpm/kernel-source.spec.in | 1 + 1 file changed, 1 insertion(+)
diff --git a/rpm/kernel-source.spec.in b/rpm/kernel-source.spec.in index f58b8946a0..2d80c45883 100644 --- a/rpm/kernel-source.spec.in +++ b/rpm/kernel-source.spec.in @@ -118,6 +118,7 @@ Prefix: /usr/src # Source is only complete with devel files. Requires: kernel-devel%variant = %version-%source_rel Recommends: openssl-devel +Requires: bc
%(chmod +x %_sourcedir/{@SCRIPTS@})
I'm not sure about this.
1. People install kernel-source for various reasons, not always to be able to build whole kernel. Some only want to check the sources (sure, it would be easier to use git), some want to build an out of tree module (and don't know that's what -devel packages are for) etc.
True.
2. If we really want kernel-source to have hard requirement for tools needed to build the kernel, we should be consistent and require all of them, not just pick one. We would have to require at least flex, bison and libelf-devel, maybe more. Right now, there is only "Recommends: openssl-devel".
Yeah, a good point. Moving the items that are in BuildRequires to be Requires in kernel-*-devel sounds like a better idea.
On the second thought, an easier place would be kernel-devel. I pushed the change to my branch. There I used Requires instead of Recommends, since kernel-devel is the package for building binaries, so they can be seen as hard dependency. If this is OK, I'll backport to other branches (up to SLE15), too. thanks, Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Takashi Iwai
Yeah, a good point. Moving the items that are in BuildRequires to be Requires in kernel-*-devel sounds like a better idea.
Nope, kernel-*-devel does not contain kernel/time/timeconst.bc. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 09:22:15 +0200, Andreas Schwab wrote:
On Jul 23 2018, Michal Kubecek
wrote: We would have to require at least flex, bison and libelf-devel, maybe more.
Nope, none of them are needed.
Do you mean they aren't needed for building KMPs? They are needed if you rebuild the kernel. Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 09:23:23 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: Yeah, a good point. Moving the items that are in BuildRequires to be Requires in kernel-*-devel sounds like a better idea.
Nope, kernel-*-devel does not contain kernel/time/timeconst.bc.
So this is a bug? Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Monday, 23 July 2018 9:23 Takashi Iwai wrote:
On the second thought, an easier place would be kernel-devel.
This sounds like the best option, kernel-devel would be pulled in by both kernel-source and kernel-${flavor}-devel.
I pushed the change to my branch. There I used Requires instead of Recommends, since kernel-devel is the package for building binaries, so they can be seen as hard dependency. If this is OK, I'll backport to other branches (up to SLE15), too.
If we want it everywhere, it's IMHO better to use "packaging" branch. Michal -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Takashi Iwai
On Mon, 23 Jul 2018 09:23:23 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: Yeah, a good point. Moving the items that are in BuildRequires to be Requires in kernel-*-devel sounds like a better idea.
Nope, kernel-*-devel does not contain kernel/time/timeconst.bc.
So this is a bug?
What does "this" refer to? Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 09:48:51 +0200, Michal Kubecek wrote:
On Monday, 23 July 2018 9:23 Takashi Iwai wrote:
On the second thought, an easier place would be kernel-devel.
This sounds like the best option, kernel-devel would be pulled in by both kernel-source and kernel-${flavor}-devel.
I pushed the change to my branch. There I used Requires instead of Recommends, since kernel-devel is the package for building binaries, so they can be seen as hard dependency. If this is OK, I'll backport to other branches (up to SLE15), too.
If we want it everywhere, it's IMHO better to use "packaging" branch.
OK, that's a better option. SLE15 can still merge that branch, too. I'll scratch my master branch now. We may revisit the list of hard requirement there before merging, though. Let's see.. Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 09:53:26 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: On Mon, 23 Jul 2018 09:23:23 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: Yeah, a good point. Moving the items that are in BuildRequires to be Requires in kernel-*-devel sounds like a better idea.
Nope, kernel-*-devel does not contain kernel/time/timeconst.bc.
So this is a bug?
What does "this" refer to?
s/Nope, // Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Michal Kubecek
1. People install kernel-source for various reasons, not always to be able to build whole kernel. Some only want to check the sources (sure, it would be easier to use git), some want to build an out of tree module (and don't know that's what -devel packages are for) etc.
Installing kernel-source already drags in the whole goo. Except bc. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Takashi Iwai
On the second thought, an easier place would be kernel-devel.
Nope, kernel-devel does not contain kernel/time/timeconst.bc. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Takashi Iwai
On Mon, 23 Jul 2018 09:22:15 +0200, Andreas Schwab wrote:
On Jul 23 2018, Michal Kubecek
wrote: We would have to require at least flex, bison and libelf-devel, maybe more.
Nope, none of them are needed.
Do you mean they aren't needed for building KMPs?
kernel-source has nothing to do with KMPs. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 09:59:28 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: On Mon, 23 Jul 2018 09:22:15 +0200, Andreas Schwab wrote:
On Jul 23 2018, Michal Kubecek
wrote: We would have to require at least flex, bison and libelf-devel, maybe more.
Nope, none of them are needed.
Do you mean they aren't needed for building KMPs?
kernel-source has nothing to do with KMPs.
So "none of them are needed" for which purpose? This is an unclear point from the beginning... kernel-source may be installed only as a reference, and for that purpose, "Requires" is an overkill. Do you agree with it? Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Takashi Iwai
On Mon, 23 Jul 2018 09:53:26 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: On Mon, 23 Jul 2018 09:23:23 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: Yeah, a good point. Moving the items that are in BuildRequires to be Requires in kernel-*-devel sounds like a better idea.
Nope, kernel-*-devel does not contain kernel/time/timeconst.bc.
So this is a bug?
What does "this" refer to?
s/Nope, //
Please expand. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Monday, 23 July 2018 9:58 Andreas Schwab wrote:
On Jul 23 2018, Michal Kubecek
wrote: 1. People install kernel-source for various reasons, not always to be able to build whole kernel. Some only want to check the sources (sure, it would be easier to use git), some want to build an out of tree module (and don't know that's what -devel packages are for) etc.
Installing kernel-source already drags in the whole goo. Except bc.
I'm not sure what "whole goo" is supposed to mean but I just tried "zypper install kernel-source" on Tumbleweed system without gcc, make, flex, bison, libelf-devel and bc. It only installs bc kernel-devel kernel-macros kernel-source (bc is there because stable already has your patch). So my question still is: what makes bc so special that it should be a hard requirement of kernel-source when other tools needed to build kernel (or modules) are not? Michal Kubecek -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 10:09:12 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: On Mon, 23 Jul 2018 09:53:26 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: On Mon, 23 Jul 2018 09:23:23 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: Yeah, a good point. Moving the items that are in BuildRequires to be Requires in kernel-*-devel sounds like a better idea.
Nope, kernel-*-devel does not contain kernel/time/timeconst.bc.
So this is a bug?
What does "this" refer to?
s/Nope, //
Please expand.
kernel-*-devel does not contain kernel/time/timeconst.bc. Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Takashi Iwai
kernel-source may be installed only as a reference, and for that purpose, "Requires" is an overkill. Do you agree with it?
No. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 10:17:01 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: kernel-source may be installed only as a reference, and for that purpose, "Requires" is an overkill. Do you agree with it?
No.
Then could you explain why bc must be installed even if a user wants to install kernel-source just for read the kernel source code? Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Takashi Iwai
On Mon, 23 Jul 2018 10:09:12 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: On Mon, 23 Jul 2018 09:53:26 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: On Mon, 23 Jul 2018 09:23:23 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: > Yeah, a good point. Moving the items that are in BuildRequires to be > Requires in kernel-*-devel sounds like a better idea.
Nope, kernel-*-devel does not contain kernel/time/timeconst.bc.
So this is a bug?
What does "this" refer to?
s/Nope, //
Please expand.
kernel-*-devel does not contain kernel/time/timeconst.bc.
Yes. What's your point? Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Michal Kubecek
On Monday, 23 July 2018 9:58 Andreas Schwab wrote:
On Jul 23 2018, Michal Kubecek
wrote: 1. People install kernel-source for various reasons, not always to be able to build whole kernel. Some only want to check the sources (sure, it would be easier to use git), some want to build an out of tree module (and don't know that's what -devel packages are for) etc.
Installing kernel-source already drags in the whole goo. Except bc.
I'm not sure what "whole goo" is supposed to mean but I just tried "zypper install kernel-source" on Tumbleweed system without gcc, make, flex, bison, libelf-devel and bc. It only installs
bc kernel-devel kernel-macros kernel-source
(bc is there because stable already has your patch). So my question still is: what makes bc so special that it should be a hard requirement of kernel-source when other tools needed to build kernel (or modules) are not?
I also get kernel-default-devel, with all the goo behind it. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Takashi Iwai
Then could you explain why bc must be installed even if a user wants to install kernel-source just for read the kernel source code?
You get all the rest already, *execept* bc. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 10:24:24 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: Then could you explain why bc must be installed even if a user wants to install kernel-source just for read the kernel source code?
You get all the rest already, *execept* bc.
Why do I need bc just for reading the source code? Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 10:22:34 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: On Mon, 23 Jul 2018 10:09:12 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: On Mon, 23 Jul 2018 09:53:26 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: On Mon, 23 Jul 2018 09:23:23 +0200, Andreas Schwab wrote: > > On Jul 23 2018, Takashi Iwai
wrote: > > > Yeah, a good point. Moving the items that are in BuildRequires to be > > Requires in kernel-*-devel sounds like a better idea. > > Nope, kernel-*-devel does not contain kernel/time/timeconst.bc. So this is a bug?
What does "this" refer to?
s/Nope, //
Please expand.
kernel-*-devel does not contain kernel/time/timeconst.bc.
Yes. What's your point?
It's an answer to your previous question. Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Takashi Iwai
It's an answer to your previous question.
Does it fail? Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Takashi Iwai
On Mon, 23 Jul 2018 10:24:24 +0200, Andreas Schwab wrote:
On Jul 23 2018, Takashi Iwai
wrote: Then could you explain why bc must be installed even if a user wants to install kernel-source just for read the kernel source code?
You get all the rest already, *execept* bc.
Why do I need bc just for reading the source code?
Because it fails to build. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Monday, 23 July 2018 10:23 Andreas Schwab wrote:
On Jul 23 2018, Michal Kubecek
wrote: I'm not sure what "whole goo" is supposed to mean but I just tried "zypper install kernel-source" on Tumbleweed system without gcc, make, flex, bison, libelf-devel and bc. It only installs
bc kernel-devel kernel-macros kernel-source
(bc is there because stable already has your patch). So my question still is: what makes bc so special that it should be a hard requirement of kernel-source when other tools needed to build kernel (or modules) are not?
I also get kernel-default-devel, with all the goo behind it.
I don't. Checked ~20 minutes ago. And you still didn't explain what "all the goo" is supposed to mean. Michal Kubecek -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Michal Kubecek
I don't. Checked ~20 minutes ago. And you still didn't explain what "all the goo" is supposed to mean.
Everything that's glued behind it. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Monday, 23 July 2018 10:34 Andreas Schwab wrote:
On Jul 23 2018, Michal Kubecek
wrote: I don't. Checked ~20 minutes ago. And you still didn't explain what "all the goo" is supposed to mean.
Everything that's glued behind it.
Once again: I took a Tumbleweed system which didn't have libelf-devel, bison, flex, not even make and gcc installed. All of these are needed to build the kernel these days. Then I ran "zypper install kernel-source". And the only packages zypper decided to install were bc kernel-devel kernel-macros kernel-source Except kernel-macros and kernel-devel, the only "goo" it added was bc which was only added because your patch already got into Kernel:stable. In particular, it did _not_ install kernel-default-devel (or any other kernel-${flavor}-devel) and neither it did install any of the other packages needed to build the kernel. Michal Kubecek -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, Jul 23, 2018 at 11:41 AM, Michal Kubecek
On Monday, 23 July 2018 10:34 Andreas Schwab wrote:
On Jul 23 2018, Michal Kubecek
wrote: I don't. Checked ~20 minutes ago. And you still didn't explain what "all the goo" is supposed to mean.
Everything that's glued behind it.
Once again: I took a Tumbleweed system which didn't have libelf-devel, bison, flex, not even make and gcc installed. All of these are needed to build the kernel these days. Then I ran "zypper install kernel-source". And the only packages zypper decided to install were
bc kernel-devel kernel-macros kernel-source
Except kernel-macros and kernel-devel, the only "goo" it added was bc which was only added because your patch already got into Kernel:stable. In particular, it did _not_ install kernel-default-devel (or any other kernel-${flavor}-devel) and neither it did install any of the other packages needed to build the kernel.
"goo" is pulled in by kernel-default-devel (and even there make and gcc are just recommended, not required). -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Michal Kubecek
On Monday, 23 July 2018 10:34 Andreas Schwab wrote:
On Jul 23 2018, Michal Kubecek
wrote: I don't. Checked ~20 minutes ago. And you still didn't explain what "all the goo" is supposed to mean.
Everything that's glued behind it.
Once again: I took a Tumbleweed system which didn't have libelf-devel, bison, flex, not even make and gcc installed. All of these are needed to build the kernel these days. Then I ran "zypper install kernel-source". And the only packages zypper decided to install were
bc kernel-devel kernel-macros kernel-source
# zypper in kernel-source Loading repository data... Reading installed packages... Resolving package dependencies... The following 30 NEW packages are going to be installed: binutils cpp cpp8 gcc gcc8 glibc-devel kernel-default-devel kernel-devel kernel-macros kernel-source libasan5 libatomic1 libelf-devel libgomp1 libisl19 libitm1 liblsan0 libmpc3 libmpfr6 libmpx2 libmpxwrappers2 libopenssl-1_1-devel libopenssl-devel libtsan0 libubsan1 linux-glibc-devel make make-lang site-config zlib-devel The following recommended package was automatically selected: libopenssl-devel 30 new packages to install. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Monday, 23 July 2018 10:54 Andreas Schwab wrote:
On Jul 23 2018, Michal Kubecek
wrote: Once again: I took a Tumbleweed system which didn't have libelf-devel, bison, flex, not even make and gcc installed. All of these are needed to build the kernel these days. Then I ran "zypper install kernel-source". And the only packages zypper decided to install were
bc kernel-devel kernel-macros kernel-source
# zypper in kernel-source Loading repository data... Reading installed packages... Resolving package dependencies...
The following 30 NEW packages are going to be installed: binutils cpp cpp8 gcc gcc8 glibc-devel kernel-default-devel kernel-devel kernel-macros kernel-source libasan5 libatomic1 libelf-devel libgomp1 libisl19 libitm1 liblsan0 libmpc3 libmpfr6 libmpx2 libmpxwrappers2 libopenssl-1_1-devel libopenssl-devel libtsan0 libubsan1 linux-glibc-devel make make-lang site-config zlib-devel
The following recommended package was automatically selected: libopenssl-devel
30 new packages to install.
It does not behave like this here. And there are no dependencies that would explain it either: ------------------------------------------------------------------------ tweed:~ # rpm -qp --requires kernel-source-4.17.9-1.1.g059e5b8.noarch.rpm /bin/sh bc coreutils kernel-devel = 4.17.9-1.g059e5b8 rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PartialHardlinkSets) <= 4.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(PayloadIsXz) <= 5.2-1 sed tweed:~ # rpm -qp --recommends kernel-source-4.17.9-1.1.g059e5b8.noarch.rpm openssl-devel tweed:~ # rpm -qp --requires kernel-devel-4.17.9-1.1.g059e5b8.noarch.rpm /bin/sh kernel-macros rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PartialHardlinkSets) <= 4.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(PayloadIsXz) <= 5.2-1 tweed:~ # rpm -qp --recommends kernel-devel-4.17.9-1.1.g059e5b8.noarch.rpm tweed:~ # rpm -qp --requires kernel-macros-4.17.9-1.1.g059e5b8.noarch.rpm rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(PayloadIsXz) <= 5.2-1 tweed:~ # rpm -qp --recommends kernel-macros-4.17.9-1.1.g059e5b8.noarch.rpm tweed:~ # ------------------------------------------------------------------------ So kernel-default-devel shouldn't be added even if you had automatic installation of recommended packages turned on. Michal Kubecek -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, Jul 23, 2018 at 11:54 AM, Andreas Schwab
On Jul 23 2018, Michal Kubecek
wrote: On Monday, 23 July 2018 10:34 Andreas Schwab wrote:
On Jul 23 2018, Michal Kubecek
wrote: I don't. Checked ~20 minutes ago. And you still didn't explain what "all the goo" is supposed to mean.
Everything that's glued behind it.
Once again: I took a Tumbleweed system which didn't have libelf-devel, bison, flex, not even make and gcc installed. All of these are needed to build the kernel these days. Then I ran "zypper install kernel-source". And the only packages zypper decided to install were
bc kernel-devel kernel-macros kernel-source
# zypper in kernel-source Loading repository data... Reading installed packages... Resolving package dependencies...
The following 30 NEW packages are going to be installed: binutils cpp cpp8 gcc gcc8 glibc-devel kernel-default-devel kernel-devel kernel-macros kernel-source libasan5 libatomic1 libelf-devel libgomp1 libisl19 libitm1 liblsan0 libmpc3 libmpfr6 libmpx2 libmpxwrappers2 libopenssl-1_1-devel libopenssl-devel libtsan0 libubsan1 linux-glibc-devel make make-lang site-config zlib-devel
The following recommended package was automatically selected: libopenssl-devel
30 new packages to install.
I cannot reproduce it with default TW repositories. kernel-source only pulls in kernel-devel and kernel-macros. And even with "zypper in --recommends" I only get openssl-devel. I wonder where kernel-default-devel comes from in your case. -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Michal Kubecek
So kernel-default-devel shouldn't be added even if you had automatic installation of recommended packages turned on.
Which is the default. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Monday, 23 July 2018 11:07 Andrei Borzenkov wrote:
On Mon, Jul 23, 2018 at 11:54 AM, Andreas Schwab
zypper in kernel-source Loading repository data... Reading installed packages... Resolving package dependencies...
The following 30 NEW packages are going to be installed: binutils cpp cpp8 gcc gcc8 glibc-devel kernel-default-devel kernel-devel kernel-macros kernel-source libasan5 libatomic1 libelf-devel libgomp1 libisl19 libitm1 liblsan0 libmpc3 libmpfr6 libmpx2 libmpxwrappers2 libopenssl-1_1-devel libopenssl-devel libtsan0 libubsan1 linux-glibc-devel make make-lang site-config zlib-devel
The following recommended package was automatically selected: libopenssl-devel
30 new packages to install.
I cannot reproduce it with default TW repositories. kernel-source only pulls in kernel-devel and kernel-macros. And even with "zypper in --recommends" I only get openssl-devel. I wonder where kernel-default-devel comes from in your case.
Perhaps it was recommended by some other package already installed in the system. Soft dependency (Requires) would allow uninstalling with "rpm -e ..." but then zypper would add it back. Michal Kubecek -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Andrei Borzenkov
I cannot reproduce it with default TW repositories.
It's a bog standard TW install, using the server profile. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Monday, 23 July 2018 11:08 Andreas Schwab wrote:
On Jul 23 2018, Michal Kubecek
wrote: So kernel-default-devel shouldn't be added even if you had automatic installation of recommended packages turned on.
Which is the default.
Default can be turned off which is why we distinguish "Requires" and "Recommends". Adding Requires where the package is not actually necessary makes such setting useless. Michal Kubecek -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Jul 23 2018, Michal Kubecek
On Monday, 23 July 2018 11:08 Andreas Schwab wrote:
On Jul 23 2018, Michal Kubecek
wrote: So kernel-default-devel shouldn't be added even if you had automatic installation of recommended packages turned on.
Which is the default.
Default can be turned off which is why we distinguish "Requires" and "Recommends". Adding Requires where the package is not actually necessary makes such setting useless.
But moving it to kernel-devel or kernel-*-devel is wrong nevertheless. Andreas. -- Andreas Schwab, SUSE Labs, schwab@suse.de GPG Key fingerprint = 0196 BAD8 1CE9 1970 F4BE 1748 E4D4 88E3 0EEA B9D7 "And now for something completely different." -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 10:50:53 +0200, Andrei Borzenkov wrote:
On Mon, Jul 23, 2018 at 11:41 AM, Michal Kubecek
wrote: On Monday, 23 July 2018 10:34 Andreas Schwab wrote:
On Jul 23 2018, Michal Kubecek
wrote: I don't. Checked ~20 minutes ago. And you still didn't explain what "all the goo" is supposed to mean.
Everything that's glued behind it.
Once again: I took a Tumbleweed system which didn't have libelf-devel, bison, flex, not even make and gcc installed. All of these are needed to build the kernel these days. Then I ran "zypper install kernel-source". And the only packages zypper decided to install were
bc kernel-devel kernel-macros kernel-source
Except kernel-macros and kernel-devel, the only "goo" it added was bc which was only added because your patch already got into Kernel:stable. In particular, it did _not_ install kernel-default-devel (or any other kernel-${flavor}-devel) and neither it did install any of the other packages needed to build the kernel.
"goo" is pulled in by kernel-default-devel (and even there make and gcc are just recommended, not required).
Right. So recap: - kernel-source.rpm itself has no hard dependency on toolchains; it has a Requires to kernel-devel.rpm at most, and kernel-devel has also no toolchain dependency, either. - But the toolchans can be grabbed via kernel-default-devel.rpm Supplements(kernel-default:kernel-devel). Even these are provided as recommends. - kernel-source.rpm contains kernel/time/timeconst.bc but no include/generated/timeconst.h, because include/generated/* go to kernel-*-devel package. (And the output of timeconst.h depends on HZ, so it's kconfig-dependent, hence not suitable for kernel-source.) - The lack of bc becomes a problem only when you build kernel from the tree of kernel-source.rpm due to timeconst.bc. - Since include/generated/timeconst.h is already included in kernel-default-devel, the KMP build doesn't need bc. bc is needed only when you build the kernel manually from scratch with kernel-source.rpm tree. So, we need a dependency on bc to some package. And, since it's an *optional* requirement *only* for kernel-source scratch build, the easiest option would be to "Recommends:bc" to kernel-source, supposedly. BTW, this also leads to another question: why flex and bison aren't needed. I thought they are also converted at compile time. Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 11:29:13 +0200, Takashi Iwai wrote:
BTW, this also leads to another question: why flex and bison aren't needed. I thought they are also converted at compile time.
I checked this again: flex and bison *are* needed as well as bc for building a kernel from kernel-source. % zypper in kernel-source % cd /somewhere % zcat /proc/config.gz > .config % export KBUILD_OUTPUT=$PWD % make -C /usr/src/linux .... CHK include/generated/timeconst.h /bin/sh: bc: command not found make[2]: *** [/usr/src/linux-4.17.6-1/./Kbuild:42: include/generated/timeconst.h] Error 127 % zypper in bc % make -C /usr/src/linux .... HOSTCC scripts/genksyms/genksyms.o YACC scripts/genksyms/parse.tab.c /bin/sh: bison: command not found make[3]: *** [/usr/src/linux-4.17.6-1/scripts/genksyms/Makefile:22: scripts/genksyms/parse.tab.c] Error 127 % zypper in bison % make -C /usr/src/linux .... YACC scripts/genksyms/parse.tab.c HOSTCC scripts/genksyms/parse.tab.o LEX scripts/genksyms/lex.lex.c /bin/sh: flex: command not found make[3]: *** [scripts/Makefile.lib:188: scripts/genksyms/lex.lex.c] Error 127 So we'd need some dependency on all bc, bison and flex. Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Monday, 23 July 2018 12:51 Takashi Iwai wrote:
I checked this again: flex and bison *are* needed as well as bc for building a kernel from kernel-source.
They are needed for Kconfig ("make *config") since something like 4.16 or 4.17. We also need libelf-devel (for objdump and/or unwinder, IIRC) and openssl-devel (for kernel/module signing tools). Hopefully that will be all.
So we'd need some dependency on all bc, bison and flex.
I'm perfectly fine with adding all of them as Recommends for kernel-source (even if I would find a bit nicer to do it in kernel-devel which is required by both kernel-source and kernel-${flavor}-devel). I just don't like the idea of (1) using Requires and (2) picking just bc and omitting the rest. Michal -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 13:35:03 +0200, Michal Kubecek wrote:
On Monday, 23 July 2018 12:51 Takashi Iwai wrote:
I checked this again: flex and bison *are* needed as well as bc for building a kernel from kernel-source.
They are needed for Kconfig ("make *config") since something like 4.16 or 4.17.
We also need libelf-devel (for objdump and/or unwinder, IIRC) and openssl-devel (for kernel/module signing tools). Hopefully that will be all.
FWIW, libelf-devel is already a Requires in kernel-default-devel, and openssl-devel is already Recommends in kernel-source.
So we'd need some dependency on all bc, bison and flex.
I'm perfectly fine with adding all of them as Recommends for kernel-source (even if I would find a bit nicer to do it in kernel-devel which is required by both kernel-source and kernel-${flavor}-devel). I just don't like the idea of (1) using Requires and (2) picking just bc and omitting the rest.
Agreed. If no one has objection, I'm going to send a pull request including all three in Recommends in kernel-source. thanks, Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, Jul 23, 2018 at 2:59 PM, Takashi Iwai
On Mon, 23 Jul 2018 13:35:03 +0200, Michal Kubecek wrote:
On Monday, 23 July 2018 12:51 Takashi Iwai wrote:
I checked this again: flex and bison *are* needed as well as bc for building a kernel from kernel-source.
They are needed for Kconfig ("make *config") since something like 4.16 or 4.17.
We also need libelf-devel (for objdump and/or unwinder, IIRC) and openssl-devel (for kernel/module signing tools). Hopefully that will be all.
FWIW, libelf-devel is already a Requires in kernel-default-devel, and
kernel-default-devel is not pulled in by installing kernel-source, nor is it needed to build anything from kernel-source. So it still should be Recommended by kernel-source I guess to match other requirements.
openssl-devel is already Recommends in kernel-source.
So we'd need some dependency on all bc, bison and flex.
I'm perfectly fine with adding all of them as Recommends for kernel-source (even if I would find a bit nicer to do it in kernel-devel which is required by both kernel-source and kernel-${flavor}-devel). I just don't like the idea of (1) using Requires and (2) picking just bc and omitting the rest.
Agreed.
If no one has objection, I'm going to send a pull request including all three in Recommends in kernel-source.
-- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
On Mon, 23 Jul 2018 14:20:35 +0200, Andrei Borzenkov wrote:
On Mon, Jul 23, 2018 at 2:59 PM, Takashi Iwai
wrote: On Mon, 23 Jul 2018 13:35:03 +0200, Michal Kubecek wrote:
On Monday, 23 July 2018 12:51 Takashi Iwai wrote:
I checked this again: flex and bison *are* needed as well as bc for building a kernel from kernel-source.
They are needed for Kconfig ("make *config") since something like 4.16 or 4.17.
We also need libelf-devel (for objdump and/or unwinder, IIRC) and openssl-devel (for kernel/module signing tools). Hopefully that will be all.
FWIW, libelf-devel is already a Requires in kernel-default-devel, and
kernel-default-devel is not pulled in by installing kernel-source, nor is it needed to build anything from kernel-source. So it still should be Recommended by kernel-source I guess to match other requirements.
OK, makes sense. Takashi -- To unsubscribe, e-mail: opensuse-kernel+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-kernel+owner@opensuse.org
participants (4)
-
Andreas Schwab
-
Andrei Borzenkov
-
Michal Kubecek
-
Takashi Iwai