* [Buildroot] [PATCH 0/3] core: add kconfigsymbols to packages (branch yem/check-target-packages)
@ 2015-12-29 23:10 Yann E. MORIN
2015-12-29 23:10 ` [Buildroot] [PATCH 1/3] package/c-libraries: need linux-headers Yann E. MORIN
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Yann E. MORIN @ 2015-12-29 23:10 UTC (permalink / raw)
To: buildroot
Hello All!
Since we check that packages in _DEPENDENCIES are enabled at the Kconfig
level, it means all the target packages need to have a Kconfig symbol.
This is currently not the case for quite a few of them:
- linux-headers
- netbsd-queue
- virtual packages
- a few more...
This series fixes the most critical ones (the three identified in the
list above); others will be fixed in later patches when the autobulders
find them.
Regards,
Yann E. MORIN.
The following changes since commit 5203541aa62c1d77d1e85662961bd7ab313813bc:
package/xtables-addons: require kernel modules from Kconfig (2015-12-29 23:53:04 +0100)
are available in the git repository at:
git://git.busybox.net/~ymorin/git/buildroot yem/check-target-packages
for you to fetch changes up to 7048b92dbba0ba35f610d7863f0c599eca3e3399:
core/pkg-virtual: do not check they are neabled (2015-12-30 00:07:09 +0100)
----------------------------------------------------------------
Yann E. MORIN (3):
package/c-libraries: need linux-headers
package/netbsd-queue: add Kconfig symbol like for all target packages
core/pkg-virtual: do not check they are neabled
package/glibc/Config.in | 4 ++--
package/linux-headers/Config.in | 2 ++
package/musl/Config.in | 3 ++-
package/netbsd-queue/Config.in | 2 ++
package/pkg-generic.mk | 5 ++++-
package/pkg-virtual.mk | 2 ++
package/uclibc/Config.in | 2 +-
toolchain/toolchain-buildroot/Config.in | 1 +
8 files changed, 16 insertions(+), 5 deletions(-)
create mode 100644 package/linux-headers/Config.in
create mode 100644 package/netbsd-queue/Config.in
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH 1/3] package/c-libraries: need linux-headers
2015-12-29 23:10 [Buildroot] [PATCH 0/3] core: add kconfigsymbols to packages (branch yem/check-target-packages) Yann E. MORIN
@ 2015-12-29 23:10 ` Yann E. MORIN
2015-12-30 9:10 ` Thomas Petazzoni
2015-12-29 23:10 ` [Buildroot] [PATCH 2/3] package/netbsd-queue: add Kconfig symbol like for all target packages Yann E. MORIN
2015-12-29 23:10 ` [Buildroot] [PATCH 3/3] core/pkg-virtual: do not check they are neabled Yann E. MORIN
2 siblings, 1 reply; 7+ messages in thread
From: Yann E. MORIN @ 2015-12-29 23:10 UTC (permalink / raw)
To: buildroot
Now that we check that a target package in the _DEPENDENCIES of another
package has to be enabled in config, all target packages must have a
kconfig symbol.
Add a Kconfig symbol for linux-headers, and select it from the packages
that depends on it (C libraries).
Also remove the now-misleading comments "for legal-info" from the C
libraries.
Fixes:
http://autobuild.buildroot.org/results/2a9/2a9e5d27b34357819b44f573a834da1ba5079030/
... and numerous similar failures ...
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
Note: all target packages must have a kconfig symbol. Let's take care
of the most problematic one for now; other patches will come later...
Conflicts:
package/musl/Config.in
---
package/glibc/Config.in | 4 ++--
| 2 ++
package/musl/Config.in | 2 +-
package/uclibc/Config.in | 2 +-
toolchain/toolchain-buildroot/Config.in | 1 +
5 files changed, 7 insertions(+), 4 deletions(-)
create mode 100644 package/linux-headers/Config.in
diff --git a/package/glibc/Config.in b/package/glibc/Config.in
index 72fd3df..aeb236c 100644
--- a/package/glibc/Config.in
+++ b/package/glibc/Config.in
@@ -1,9 +1,9 @@
if BR2_TOOLCHAIN_BUILDROOT_EGLIBC
-# For legal-info
config BR2_PACKAGE_EGLIBC
bool
default y
+ select BR2_PACKAGE_LINUX_HEADERS
choice
prompt "eglibc version"
@@ -25,10 +25,10 @@ endif
if BR2_TOOLCHAIN_BUILDROOT_GLIBC
-# For legal-info
config BR2_PACKAGE_GLIBC
bool
default y
+ select BR2_PACKAGE_LINUX_HEADERS
choice
prompt "glibc version"
--git a/package/linux-headers/Config.in b/package/linux-headers/Config.in
new file mode 100644
index 0000000..0ea9516
--- /dev/null
+++ b/package/linux-headers/Config.in
@@ -0,0 +1,2 @@
+config BR2_PACKAGE_LINUX_HEADERS
+ bool
diff --git a/package/musl/Config.in b/package/musl/Config.in
index 0aa3537..4f6cc51 100644
--- a/package/musl/Config.in
+++ b/package/musl/Config.in
@@ -1,5 +1,5 @@
-# For legal-info
config BR2_PACKAGE_MUSL
bool
depends on BR2_TOOLCHAIN_USES_MUSL
default y
+ select BR2_PACKAGE_LINUX_HEADERS
diff --git a/package/uclibc/Config.in b/package/uclibc/Config.in
index bd95041..9ebec70 100644
--- a/package/uclibc/Config.in
+++ b/package/uclibc/Config.in
@@ -1,9 +1,9 @@
if BR2_TOOLCHAIN_BUILDROOT_UCLIBC
-# For legal-info
config BR2_PACKAGE_UCLIBC
bool
default y
+ select BR2_PACKAGE_LINUX_HEADERS
comment "uClibc Options"
diff --git a/toolchain/toolchain-buildroot/Config.in b/toolchain/toolchain-buildroot/Config.in
index cee2578..cbeb030 100644
--- a/toolchain/toolchain-buildroot/Config.in
+++ b/toolchain/toolchain-buildroot/Config.in
@@ -110,6 +110,7 @@ config BR2_TOOLCHAIN_BUILDROOT_LIBC
default "glibc" if BR2_TOOLCHAIN_BUILDROOT_GLIBC
default "musl" if BR2_TOOLCHAIN_BUILDROOT_MUSL
+source "package/linux-headers/Config.in"
source "package/uclibc/Config.in"
source "package/glibc/Config.in"
source "package/binutils/Config.in.host"
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH 2/3] package/netbsd-queue: add Kconfig symbol like for all target packages
2015-12-29 23:10 [Buildroot] [PATCH 0/3] core: add kconfigsymbols to packages (branch yem/check-target-packages) Yann E. MORIN
2015-12-29 23:10 ` [Buildroot] [PATCH 1/3] package/c-libraries: need linux-headers Yann E. MORIN
@ 2015-12-29 23:10 ` Yann E. MORIN
2015-12-30 9:10 ` Thomas Petazzoni
2015-12-29 23:10 ` [Buildroot] [PATCH 3/3] core/pkg-virtual: do not check they are neabled Yann E. MORIN
2 siblings, 1 reply; 7+ messages in thread
From: Yann E. MORIN @ 2015-12-29 23:10 UTC (permalink / raw)
To: buildroot
Select that package from musl, too, since it is a dependency.
Fixes:
http://autobuild.buildroot.org/results/15c/15c9a80fb2754ed1866b59d5e62d02691b57834e/
... and numerous similar issues ...
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Sergio Prado <sergio.prado@e-labworks.com>
Cc: Luca Ceresoli <luca@lucaceresoli.net>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
---
Conflicts:
package/musl/Config.in
---
package/musl/Config.in | 1 +
package/netbsd-queue/Config.in | 2 ++
2 files changed, 3 insertions(+)
create mode 100644 package/netbsd-queue/Config.in
diff --git a/package/musl/Config.in b/package/musl/Config.in
index 4f6cc51..f1a3150 100644
--- a/package/musl/Config.in
+++ b/package/musl/Config.in
@@ -3,3 +3,4 @@ config BR2_PACKAGE_MUSL
depends on BR2_TOOLCHAIN_USES_MUSL
default y
select BR2_PACKAGE_LINUX_HEADERS
+ select BR2_PACKAGE_NETBSD_QUEUE
diff --git a/package/netbsd-queue/Config.in b/package/netbsd-queue/Config.in
new file mode 100644
index 0000000..7837f4c
--- /dev/null
+++ b/package/netbsd-queue/Config.in
@@ -0,0 +1,2 @@
+config BR2_PACKAGE_NETBSD_QUEUE
+ bool
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH 3/3] core/pkg-virtual: do not check they are neabled
2015-12-29 23:10 [Buildroot] [PATCH 0/3] core: add kconfigsymbols to packages (branch yem/check-target-packages) Yann E. MORIN
2015-12-29 23:10 ` [Buildroot] [PATCH 1/3] package/c-libraries: need linux-headers Yann E. MORIN
2015-12-29 23:10 ` [Buildroot] [PATCH 2/3] package/netbsd-queue: add Kconfig symbol like for all target packages Yann E. MORIN
@ 2015-12-29 23:10 ` Yann E. MORIN
2015-12-30 9:12 ` Thomas Petazzoni
2 siblings, 1 reply; 7+ messages in thread
From: Yann E. MORIN @ 2015-12-29 23:10 UTC (permalink / raw)
To: buildroot
Virtual packages do not have a Kconfig symbol, so we must not check that
they are enabled.
Fixes:
http://autobuild.buildroot.org/results/287/28713478cc6edf8e5d5c3e830fee86a42f0afa8d/
... and numerous similar failures ...
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
---
package/pkg-generic.mk | 5 ++++-
package/pkg-virtual.mk | 2 ++
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/package/pkg-generic.mk b/package/pkg-generic.mk
index 2daf337..08f9703 100644
--- a/package/pkg-generic.mk
+++ b/package/pkg-generic.mk
@@ -186,7 +186,10 @@ $(BUILD_DIR)/%/.stamp_configured:
# building a package, even if not enabled in the configuration, we
# want to accept it.
ifeq ($(MAKECMDGOALS),)
- @if test "$($(PKG)_TYPE)" = "target" -a -z "$($($(PKG)_KCONFIG_VAR))" ; then \
+ @if test "$($(PKG)_TYPE)" = "target" \
+ -a ! "$($(PKG)_IS_VIRTUAL)" = "YES" \
+ -a -z "$($($(PKG)_KCONFIG_VAR))" ; \
+ then \
echo "ERROR: $($(PKG)_NAME) is in the dependency chain of a package that has" ; \
echo "added it to its _DEPENDENCIES variable (directly or indirectly)" ; \
echo "without selecting it from Config.in." ; \
diff --git a/package/pkg-virtual.mk b/package/pkg-virtual.mk
index 9c68b51..244c1d0 100644
--- a/package/pkg-virtual.mk
+++ b/package/pkg-virtual.mk
@@ -41,6 +41,8 @@ $$(error No implementation selected for virtual package $(1). Configuration erro
endif
endif
+$(2)_IS_VIRTUAL = YES
+
# A virtual package does not have any source associated
$(2)_SOURCE =
--
1.9.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH 1/3] package/c-libraries: need linux-headers
2015-12-29 23:10 ` [Buildroot] [PATCH 1/3] package/c-libraries: need linux-headers Yann E. MORIN
@ 2015-12-30 9:10 ` Thomas Petazzoni
0 siblings, 0 replies; 7+ messages in thread
From: Thomas Petazzoni @ 2015-12-30 9:10 UTC (permalink / raw)
To: buildroot
Dear Yann E. MORIN,
On Wed, 30 Dec 2015 00:10:38 +0100, Yann E. MORIN wrote:
> Now that we check that a target package in the _DEPENDENCIES of another
> package has to be enabled in config, all target packages must have a
> kconfig symbol.
>
> Add a Kconfig symbol for linux-headers, and select it from the packages
> that depends on it (C libraries).
>
> Also remove the now-misleading comments "for legal-info" from the C
> libraries.
>
> Fixes:
> http://autobuild.buildroot.org/results/2a9/2a9e5d27b34357819b44f573a834da1ba5079030/
> ... and numerous similar failures ...
>
> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
>
> ---
> Note: all target packages must have a kconfig symbol. Let's take care
> of the most problematic one for now; other patches will come later...
I've applied, even though I'm not super happy with the fact that we
already had a (useless?) BR2_PACKAGE_HOST_LINUX_HEADERS option, and we
now have both a Config.in.host and a Config.in file for what is really
a target package...
Ideally, we would move all the options to the Config.in file, and
rename them.. but that would cause so much Config.in.legacy trouble :-/
Thanks,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH 2/3] package/netbsd-queue: add Kconfig symbol like for all target packages
2015-12-29 23:10 ` [Buildroot] [PATCH 2/3] package/netbsd-queue: add Kconfig symbol like for all target packages Yann E. MORIN
@ 2015-12-30 9:10 ` Thomas Petazzoni
0 siblings, 0 replies; 7+ messages in thread
From: Thomas Petazzoni @ 2015-12-30 9:10 UTC (permalink / raw)
To: buildroot
Dear Yann E. MORIN,
On Wed, 30 Dec 2015 00:10:39 +0100, Yann E. MORIN wrote:
> Select that package from musl, too, since it is a dependency.
>
> Fixes:
> http://autobuild.buildroot.org/results/15c/15c9a80fb2754ed1866b59d5e62d02691b57834e/
> ... and numerous similar issues ...
>
> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> Cc: Sergio Prado <sergio.prado@e-labworks.com>
> Cc: Luca Ceresoli <luca@lucaceresoli.net>
> Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
> Cc: Peter Korsgaard <jacmet@uclibc.org>
>
> ---
> Conflicts:
> package/musl/Config.in
> ---
> package/musl/Config.in | 1 +
> package/netbsd-queue/Config.in | 2 ++
> 2 files changed, 3 insertions(+)
> create mode 100644 package/netbsd-queue/Config.in
I've applied, but I realized afterwards that you forgot the external
toolchain case, so I did a follow-up commit to fix this case as well.
Thanks!
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Buildroot] [PATCH 3/3] core/pkg-virtual: do not check they are neabled
2015-12-29 23:10 ` [Buildroot] [PATCH 3/3] core/pkg-virtual: do not check they are neabled Yann E. MORIN
@ 2015-12-30 9:12 ` Thomas Petazzoni
0 siblings, 0 replies; 7+ messages in thread
From: Thomas Petazzoni @ 2015-12-30 9:12 UTC (permalink / raw)
To: buildroot
Dear Yann E. MORIN,
On Wed, 30 Dec 2015 00:10:40 +0100, Yann E. MORIN wrote:
> ifeq ($(MAKECMDGOALS),)
> - @if test "$($(PKG)_TYPE)" = "target" -a -z "$($($(PKG)_KCONFIG_VAR))" ; then \
> + @if test "$($(PKG)_TYPE)" = "target" \
> + -a ! "$($(PKG)_IS_VIRTUAL)" = "YES" \
I changed this to:
-a "$($(PKG)_IS_VIRTUAL)" != "YES" \
which I believe is a bit more logical.
> diff --git a/package/pkg-virtual.mk b/package/pkg-virtual.mk
> index 9c68b51..244c1d0 100644
> --- a/package/pkg-virtual.mk
> +++ b/package/pkg-virtual.mk
> @@ -41,6 +41,8 @@ $$(error No implementation selected for virtual package $(1). Configuration erro
> endif
> endif
>
> +$(2)_IS_VIRTUAL = YES
I wasn't sure whether a new variable was needed. We could have used
$($(PKG)_VERSION) != "virtual", but that would have failed if one day
we have a normal package that really has a version named "virtual" for
some reason.
We can anyway change this later on if others have better suggestions.
Thanks,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2015-12-30 9:12 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-12-29 23:10 [Buildroot] [PATCH 0/3] core: add kconfigsymbols to packages (branch yem/check-target-packages) Yann E. MORIN
2015-12-29 23:10 ` [Buildroot] [PATCH 1/3] package/c-libraries: need linux-headers Yann E. MORIN
2015-12-30 9:10 ` Thomas Petazzoni
2015-12-29 23:10 ` [Buildroot] [PATCH 2/3] package/netbsd-queue: add Kconfig symbol like for all target packages Yann E. MORIN
2015-12-30 9:10 ` Thomas Petazzoni
2015-12-29 23:10 ` [Buildroot] [PATCH 3/3] core/pkg-virtual: do not check they are neabled Yann E. MORIN
2015-12-30 9:12 ` Thomas Petazzoni
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox