All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH 0/2] Preparation for per-package host/target
@ 2018-11-08 13:04 Andreas Naumann
  2018-11-08 13:04 ` [Buildroot] [PATCH 1/2] fs: Add common rootfs dependencies to PACKAGES Andreas Naumann
                   ` (2 more replies)
  0 siblings, 3 replies; 14+ messages in thread
From: Andreas Naumann @ 2018-11-08 13:04 UTC (permalink / raw)
  To: buildroot

Hi Thomas, all,

maybe my post from last week was too involved so here's a more focused version.

I have played with your per-package patches and found them very interesting
because the possible parallelization speeds up the build considerably.

For a start, here are two patches I needed in order to solve some build failures.
I'd be happy for feedback as well as some idea how further development on this
feature is planned.


best regards,
Andreas


Andreas Naumann (2):
  fs: Add common rootfs dependencies to PACKAGES
  linux: Make dtc install step more reliable

 fs/common.mk   | 1 +
 linux/linux.mk | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

-- 
2.19.1

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 1/2] fs: Add common rootfs dependencies to PACKAGES
  2018-11-08 13:04 [Buildroot] [PATCH 0/2] Preparation for per-package host/target Andreas Naumann
@ 2018-11-08 13:04 ` Andreas Naumann
  2018-11-09 22:11   ` Arnout Vandecappelle
  2018-11-13 14:51   ` Thomas Petazzoni
  2018-11-08 13:04 ` [Buildroot] [PATCH 2/2] linux: Make dtc install step more reliable Andreas Naumann
  2018-11-08 13:23 ` [Buildroot] [PATCH 0/2] Preparation for per-package host/target Thomas Petazzoni
  2 siblings, 2 replies; 14+ messages in thread
From: Andreas Naumann @ 2018-11-08 13:04 UTC (permalink / raw)
  To: buildroot

Up to now only the filesystem-specific dependencies are explicitely
added to PACKAGES. The common dependencies, e.g. host-fakeroot, were
built indirectly via the rootfs-common/rootfs-tar dependency.

However, when switching to per-package host/target, we need to assemble
the global host from the per-package folders. In order to do this by
looping through PACKAGES, we need to directly add the common rootfs
dependencies.
That way then the filesystem recipes may continue to use these tools
from the global host directory.

Signed-off-by: Andreas Naumann <anaumann@ultratronik.de>
---
 fs/common.mk | 1 +
 1 file changed, 1 insertion(+)

diff --git a/fs/common.mk b/fs/common.mk
index 2a5a202a89..a4a178c88a 100644
--- a/fs/common.mk
+++ b/fs/common.mk
@@ -65,6 +65,7 @@ ROOTFS_COMMON_DEPENDENCIES = \
 	host-fakeroot host-makedevs \
 	$(BR2_TAR_HOST_DEPENDENCY) \
 	$(if $(PACKAGES_USERS)$(ROOTFS_USERS_TABLES),host-mkpasswd)
+PACKAGES += $(ROOTFS_COMMON_DEPENDENCIES)
 
 $(ROOTFS_COMMON_TAR): ROOTFS=COMMON
 $(ROOTFS_COMMON_TAR): FAKEROOT_SCRIPT=$(FS_DIR)/fakeroot.fs
-- 
2.19.1

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 2/2] linux: Make dtc install step more reliable
  2018-11-08 13:04 [Buildroot] [PATCH 0/2] Preparation for per-package host/target Andreas Naumann
  2018-11-08 13:04 ` [Buildroot] [PATCH 1/2] fs: Add common rootfs dependencies to PACKAGES Andreas Naumann
@ 2018-11-08 13:04 ` Andreas Naumann
  2018-11-09 22:14   ` Arnout Vandecappelle
  2018-11-08 13:23 ` [Buildroot] [PATCH 0/2] Preparation for per-package host/target Thomas Petazzoni
  2 siblings, 1 reply; 14+ messages in thread
From: Andreas Naumann @ 2018-11-08 13:04 UTC (permalink / raw)
  To: buildroot

Checking for the existence of the dtc binary built by the
non-dependent dtc package may cause instable behaviour when giving more
freedom on the order of how the packages are built (parallelization).

In addidion, when moving to per-package host/target method, the check
would always trigger in the isolated host, leading to linux-dtc always
being installed as dtc.
This in turn may lead to undesired overwriting of the real host-dtc binary
when finally assembling the global host dir.

Signed-off-by: Andreas Naumann <anaumann@ultratronik.de>
---
 linux/linux.mk | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/linux/linux.mk b/linux/linux.mk
index f2bca17328..f87de02290 100644
--- a/linux/linux.mk
+++ b/linux/linux.mk
@@ -465,7 +465,7 @@ define LINUX_INSTALL_HOST_TOOLS
 	# Installing dtc (device tree compiler) as host tool, if selected
 	if grep -q "CONFIG_DTC=y" $(@D)/.config; then \
 		$(INSTALL) -D -m 0755 $(@D)/scripts/dtc/dtc $(HOST_DIR)/bin/linux-dtc ; \
-		if [ ! -e $(HOST_DIR)/bin/dtc ]; then \
+		if [ "$(BR2_PACKAGE_HOST_DTC)" != "y" ]; then \
 			ln -sf linux-dtc $(HOST_DIR)/bin/dtc ; \
 		fi \
 	fi
-- 
2.19.1

^ permalink raw reply related	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 0/2] Preparation for per-package host/target
  2018-11-08 13:04 [Buildroot] [PATCH 0/2] Preparation for per-package host/target Andreas Naumann
  2018-11-08 13:04 ` [Buildroot] [PATCH 1/2] fs: Add common rootfs dependencies to PACKAGES Andreas Naumann
  2018-11-08 13:04 ` [Buildroot] [PATCH 2/2] linux: Make dtc install step more reliable Andreas Naumann
@ 2018-11-08 13:23 ` Thomas Petazzoni
  2 siblings, 0 replies; 14+ messages in thread
From: Thomas Petazzoni @ 2018-11-08 13:23 UTC (permalink / raw)
  To: buildroot

Hello,

On Thu,  8 Nov 2018 14:04:15 +0100, Andreas Naumann wrote:

> maybe my post from last week was too involved so here's a more focused version.

I did see your patches, and I'm happy to see that people are interested
in the per-package host/target. I have resumed work on this topic
recently, and I hope to submit a new patch series in the next few weeks.

Best regards,

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 1/2] fs: Add common rootfs dependencies to PACKAGES
  2018-11-08 13:04 ` [Buildroot] [PATCH 1/2] fs: Add common rootfs dependencies to PACKAGES Andreas Naumann
@ 2018-11-09 22:11   ` Arnout Vandecappelle
  2018-11-12 12:53     ` Andreas Naumann
  2018-11-13 14:51   ` Thomas Petazzoni
  1 sibling, 1 reply; 14+ messages in thread
From: Arnout Vandecappelle @ 2018-11-09 22:11 UTC (permalink / raw)
  To: buildroot



On 08/11/2018 14:04, Andreas Naumann wrote:
> Up to now only the filesystem-specific dependencies are explicitely
> added to PACKAGES. The common dependencies, e.g. host-fakeroot, were
> built indirectly via the rootfs-common/rootfs-tar dependency.
> 
> However, when switching to per-package host/target, we need to assemble
> the global host from the per-package folders. In order to do this by
> looping through PACKAGES, we need to directly add the common rootfs
> dependencies.
> That way then the filesystem recipes may continue to use these tools
> from the global host directory.
> 
> Signed-off-by: Andreas Naumann <anaumann@ultratronik.de>
> ---
>  fs/common.mk | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/fs/common.mk b/fs/common.mk
> index 2a5a202a89..a4a178c88a 100644
> --- a/fs/common.mk
> +++ b/fs/common.mk
> @@ -65,6 +65,7 @@ ROOTFS_COMMON_DEPENDENCIES = \
>  	host-fakeroot host-makedevs \
>  	$(BR2_TAR_HOST_DEPENDENCY) \
>  	$(if $(PACKAGES_USERS)$(ROOTFS_USERS_TABLES),host-mkpasswd)
> +PACKAGES += $(ROOTFS_COMMON_DEPENDENCIES)

 I don't really like this, for the simple reason that it will enable the
dependencies even if they are not needed because we're not building any rootfs.

 It's a small thing though, and working around it is a lot more complicated (you
could e.g. select a new Config.in symbol that is selected by all the rootfses).
And when we ever get the Config.in.host for all host packages, it's solved
already. So

Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>

 Regards,
 Arnout

>  
>  $(ROOTFS_COMMON_TAR): ROOTFS=COMMON
>  $(ROOTFS_COMMON_TAR): FAKEROOT_SCRIPT=$(FS_DIR)/fakeroot.fs
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 2/2] linux: Make dtc install step more reliable
  2018-11-08 13:04 ` [Buildroot] [PATCH 2/2] linux: Make dtc install step more reliable Andreas Naumann
@ 2018-11-09 22:14   ` Arnout Vandecappelle
  2018-11-12 12:55     ` Andreas Naumann
  0 siblings, 1 reply; 14+ messages in thread
From: Arnout Vandecappelle @ 2018-11-09 22:14 UTC (permalink / raw)
  To: buildroot



On 08/11/2018 14:04, Andreas Naumann wrote:
> Checking for the existence of the dtc binary built by the
> non-dependent dtc package may cause instable behaviour when giving more
> freedom on the order of how the packages are built (parallelization).
> 
> In addidion, when moving to per-package host/target method, the check
> would always trigger in the isolated host, leading to linux-dtc always
> being installed as dtc.
> This in turn may lead to undesired overwriting of the real host-dtc binary
> when finally assembling the global host dir.
> 
> Signed-off-by: Andreas Naumann <anaumann@ultratronik.de>
> ---
>  linux/linux.mk | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/linux/linux.mk b/linux/linux.mk
> index f2bca17328..f87de02290 100644
> --- a/linux/linux.mk
> +++ b/linux/linux.mk
> @@ -465,7 +465,7 @@ define LINUX_INSTALL_HOST_TOOLS
>  	# Installing dtc (device tree compiler) as host tool, if selected
>  	if grep -q "CONFIG_DTC=y" $(@D)/.config; then \
>  		$(INSTALL) -D -m 0755 $(@D)/scripts/dtc/dtc $(HOST_DIR)/bin/linux-dtc ; \
> -		if [ ! -e $(HOST_DIR)/bin/dtc ]; then \
> +		if [ "$(BR2_PACKAGE_HOST_DTC)" != "y" ]; then \
>  			ln -sf linux-dtc $(HOST_DIR)/bin/dtc ; \
>  		fi \

 Since now it's purely steered by a make variable, you can change it into

 		$(if $(BR2_PACKAGE_HOST_DTC),ln -sf linux-dtc $(HOST_DIR)/bin/dtc;) \


(note that the semicolon is still needed because it's in the CONFIG_DTC condition).

 Regards,
 Arnout


>  	fi
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 1/2] fs: Add common rootfs dependencies to PACKAGES
  2018-11-09 22:11   ` Arnout Vandecappelle
@ 2018-11-12 12:53     ` Andreas Naumann
  2018-11-12 16:46       ` Yann E. MORIN
  0 siblings, 1 reply; 14+ messages in thread
From: Andreas Naumann @ 2018-11-12 12:53 UTC (permalink / raw)
  To: buildroot

Hi Arnout,

Am 09.11.18 um 23:11 schrieb Arnout Vandecappelle:
> 
> 
> On 08/11/2018 14:04, Andreas Naumann wrote:
...
>> +PACKAGES += $(ROOTFS_COMMON_DEPENDENCIES)
> 
>   I don't really like this, for the simple reason that it will enable the
> dependencies even if they are not needed because we're not building any rootfs.

good point, I dont like that either. I'd propose to change/move the 
patch into something like
   PACKAGES += $$(filter-out $$(PACKAGES),$$(ROOTFS_COMMON_DEPENDENCIES))
inside the rootfs-conditional clause at the bottom of fs/common.mk. 
Actually I'm not sure the filter-out stuff is really needed since 
duplicate targets may accumulate in PACKAGES anyway.

best regards,
Andreas

> 
>   It's a small thing though, and working around it is a lot more complicated (you
> could e.g. select a new Config.in symbol that is selected by all the rootfses).
> And when we ever get the Config.in.host for all host packages, it's solved
> already. So
> 
> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
> 
>   Regards,
>   Arnout
> 
>>   
>>   $(ROOTFS_COMMON_TAR): ROOTFS=COMMON
>>   $(ROOTFS_COMMON_TAR): FAKEROOT_SCRIPT=$(FS_DIR)/fakeroot.fs
>>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 2/2] linux: Make dtc install step more reliable
  2018-11-09 22:14   ` Arnout Vandecappelle
@ 2018-11-12 12:55     ` Andreas Naumann
  2018-11-12 13:59       ` Arnout Vandecappelle
  0 siblings, 1 reply; 14+ messages in thread
From: Andreas Naumann @ 2018-11-12 12:55 UTC (permalink / raw)
  To: buildroot

Hi,

Am 09.11.18 um 23:14 schrieb Arnout Vandecappelle:
> 
> 
> On 08/11/2018 14:04, Andreas Naumann wrote:
...
>> -		if [ ! -e $(HOST_DIR)/bin/dtc ]; then \
>> +		if [ "$(BR2_PACKAGE_HOST_DTC)" != "y" ]; then \
>>   			ln -sf linux-dtc $(HOST_DIR)/bin/dtc ; \
>>   		fi \
> 
>   Since now it's purely steered by a make variable, you can change it into
> 
>   		$(if $(BR2_PACKAGE_HOST_DTC),ln -sf linux-dtc $(HOST_DIR)/bin/dtc;) \

Thanks. I'll resend v2.


best regards,
Andi

> 
> 
> (note that the semicolon is still needed because it's in the CONFIG_DTC condition).
> 
>   Regards,
>   Arnout
> 
> 
>>   	fi
>>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 2/2] linux: Make dtc install step more reliable
  2018-11-12 12:55     ` Andreas Naumann
@ 2018-11-12 13:59       ` Arnout Vandecappelle
  0 siblings, 0 replies; 14+ messages in thread
From: Arnout Vandecappelle @ 2018-11-12 13:59 UTC (permalink / raw)
  To: buildroot



On 12/11/2018 13:55, Andreas Naumann wrote:
> Hi,
> 
> Am 09.11.18 um 23:14 schrieb Arnout Vandecappelle:
>>
>>
>> On 08/11/2018 14:04, Andreas Naumann wrote:
> ...
>>> -??????? if [ ! -e $(HOST_DIR)/bin/dtc ]; then \
>>> +??????? if [ "$(BR2_PACKAGE_HOST_DTC)" != "y" ]; then \
>>> ????????????? ln -sf linux-dtc $(HOST_DIR)/bin/dtc ; \
>>> ????????? fi \
>>
>> ? Since now it's purely steered by a make variable, you can change it into
>>
>> ????????? $(if $(BR2_PACKAGE_HOST_DTC),ln -sf linux-dtc $(HOST_DIR)/bin/dtc;) \
> 
> Thanks. I'll resend v2.

 Please test as well. I have a good track record of proposing broken code :-)

 Regards,
 Arnout

[snip]

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 1/2] fs: Add common rootfs dependencies to PACKAGES
  2018-11-12 12:53     ` Andreas Naumann
@ 2018-11-12 16:46       ` Yann E. MORIN
  2018-11-12 17:32         ` Arnout Vandecappelle
  0 siblings, 1 reply; 14+ messages in thread
From: Yann E. MORIN @ 2018-11-12 16:46 UTC (permalink / raw)
  To: buildroot

Andreas, All,

On 2018-11-12 13:53 +0100, Andreas Naumann spake thusly:
> Am 09.11.18 um 23:11 schrieb Arnout Vandecappelle:
> >On 08/11/2018 14:04, Andreas Naumann wrote:
> ...
> >>+PACKAGES += $(ROOTFS_COMMON_DEPENDENCIES)
> >
> >  I don't really like this, for the simple reason that it will enable the
> >dependencies even if they are not needed because we're not building any rootfs.
> 
> good point, I dont like that either. I'd propose to change/move the patch
> into something like
>   PACKAGES += $$(filter-out $$(PACKAGES),$$(ROOTFS_COMMON_DEPENDENCIES))
> inside the rootfs-conditional clause at the bottom of fs/common.mk. Actually
> I'm not sure the filter-out stuff is really needed since duplicate targets
> may accumulate in PACKAGES anyway.

Yes, that would be OK to moce them to the per-filesystem macro, but we
already have:

    ROOTFS_$(2)_DEPENDENCIES += rootfs-common

So maybe just do:

    ROOTFS_$(2)_DEPENDENCIES += \
        rootfs-common \
        $$(ROOTFS_COMMON_DEPENDENCIES)

Regards,
Yann E. MORIN.

> >
> >  It's a small thing though, and working around it is a lot more complicated (you
> >could e.g. select a new Config.in symbol that is selected by all the rootfses).
> >And when we ever get the Config.in.host for all host packages, it's solved
> >already. So
> >
> >Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
> >
> >  Regards,
> >  Arnout
> >
> >>  $(ROOTFS_COMMON_TAR): ROOTFS=COMMON
> >>  $(ROOTFS_COMMON_TAR): FAKEROOT_SCRIPT=$(FS_DIR)/fakeroot.fs
> >>
> >_______________________________________________
> >buildroot mailing list
> >buildroot at busybox.net
> >http://lists.busybox.net/mailman/listinfo/buildroot
> >
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  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] 14+ messages in thread

* [Buildroot] [PATCH 1/2] fs: Add common rootfs dependencies to PACKAGES
  2018-11-12 16:46       ` Yann E. MORIN
@ 2018-11-12 17:32         ` Arnout Vandecappelle
  2018-11-12 17:44           ` Yann E. MORIN
  0 siblings, 1 reply; 14+ messages in thread
From: Arnout Vandecappelle @ 2018-11-12 17:32 UTC (permalink / raw)
  To: buildroot



On 12/11/2018 17:46, Yann E. MORIN wrote:
> Andreas, All,
> 
> On 2018-11-12 13:53 +0100, Andreas Naumann spake thusly:
>> Am 09.11.18 um 23:11 schrieb Arnout Vandecappelle:
>>> On 08/11/2018 14:04, Andreas Naumann wrote:
>> ...
>>>> +PACKAGES += $(ROOTFS_COMMON_DEPENDENCIES)
>>>
>>>  I don't really like this, for the simple reason that it will enable the
>>> dependencies even if they are not needed because we're not building any rootfs.
>>
>> good point, I dont like that either. I'd propose to change/move the patch
>> into something like
>>   PACKAGES += $$(filter-out $$(PACKAGES),$$(ROOTFS_COMMON_DEPENDENCIES))
>> inside the rootfs-conditional clause at the bottom of fs/common.mk. Actually
>> I'm not sure the filter-out stuff is really needed since duplicate targets
>> may accumulate in PACKAGES anyway.
> 
> Yes, that would be OK to moce them to the per-filesystem macro, but we
> already have:
> 
>     ROOTFS_$(2)_DEPENDENCIES += rootfs-common
> 
> So maybe just do:
> 
>     ROOTFS_$(2)_DEPENDENCIES += \
>         rootfs-common \
>         $$(ROOTFS_COMMON_DEPENDENCIES)

 It's about adding to PACKAGES, not _DEPENDENCIES.

 Regards,
 Arnout

> 
> Regards,
> Yann E. MORIN.
> 
>>>
>>>  It's a small thing though, and working around it is a lot more complicated (you
>>> could e.g. select a new Config.in symbol that is selected by all the rootfses).
>>> And when we ever get the Config.in.host for all host packages, it's solved
>>> already. So
>>>
>>> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
>>>
>>>  Regards,
>>>  Arnout
>>>
>>>>  $(ROOTFS_COMMON_TAR): ROOTFS=COMMON
>>>>  $(ROOTFS_COMMON_TAR): FAKEROOT_SCRIPT=$(FS_DIR)/fakeroot.fs
>>>>
>>> _______________________________________________
>>> buildroot mailing list
>>> buildroot at busybox.net
>>> http://lists.busybox.net/mailman/listinfo/buildroot
>>>
>> _______________________________________________
>> buildroot mailing list
>> buildroot at busybox.net
>> http://lists.busybox.net/mailman/listinfo/buildroot
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 1/2] fs: Add common rootfs dependencies to PACKAGES
  2018-11-12 17:32         ` Arnout Vandecappelle
@ 2018-11-12 17:44           ` Yann E. MORIN
  0 siblings, 0 replies; 14+ messages in thread
From: Yann E. MORIN @ 2018-11-12 17:44 UTC (permalink / raw)
  To: buildroot

Arnout, All,

On 2018-11-12 18:32 +0100, Arnout Vandecappelle spake thusly:
> On 12/11/2018 17:46, Yann E. MORIN wrote:
> > Andreas, All,
> > 
> > On 2018-11-12 13:53 +0100, Andreas Naumann spake thusly:
> >> Am 09.11.18 um 23:11 schrieb Arnout Vandecappelle:
> >>> On 08/11/2018 14:04, Andreas Naumann wrote:
> >> ...
> >>>> +PACKAGES += $(ROOTFS_COMMON_DEPENDENCIES)
> >>>
> >>>  I don't really like this, for the simple reason that it will enable the
> >>> dependencies even if they are not needed because we're not building any rootfs.
> >>
> >> good point, I dont like that either. I'd propose to change/move the patch
> >> into something like
> >>   PACKAGES += $$(filter-out $$(PACKAGES),$$(ROOTFS_COMMON_DEPENDENCIES))
> >> inside the rootfs-conditional clause at the bottom of fs/common.mk. Actually
> >> I'm not sure the filter-out stuff is really needed since duplicate targets
> >> may accumulate in PACKAGES anyway.
> > 
> > Yes, that would be OK to moce them to the per-filesystem macro, but we
> > already have:
> > 
> >     ROOTFS_$(2)_DEPENDENCIES += rootfs-common
> > 
> > So maybe just do:
> > 
> >     ROOTFS_$(2)_DEPENDENCIES += \
> >         rootfs-common \
> >         $$(ROOTFS_COMMON_DEPENDENCIES)
> 
>  It's about adding to PACKAGES, not _DEPENDENCIES.

Yeah, but _DEPENDENCIES are added to PACKAGES.

And I think with the series I just posted [0]. there is no reason to
have dependencies in the common step anymore, since there are now only
calls to 'cat' and 'printf' in there. So it makes sense to make those
dependencies, dependencies of each individual filesystem now.

Regards,
Yann E. MORIN.

> > 
> > Regards,
> > Yann E. MORIN.
> > 
> >>>
> >>>  It's a small thing though, and working around it is a lot more complicated (you
> >>> could e.g. select a new Config.in symbol that is selected by all the rootfses).
> >>> And when we ever get the Config.in.host for all host packages, it's solved
> >>> already. So
> >>>
> >>> Reviewed-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
> >>>
> >>>  Regards,
> >>>  Arnout
> >>>
> >>>>  $(ROOTFS_COMMON_TAR): ROOTFS=COMMON
> >>>>  $(ROOTFS_COMMON_TAR): FAKEROOT_SCRIPT=$(FS_DIR)/fakeroot.fs
> >>>>
> >>> _______________________________________________
> >>> buildroot mailing list
> >>> buildroot at busybox.net
> >>> http://lists.busybox.net/mailman/listinfo/buildroot
> >>>
> >> _______________________________________________
> >> buildroot mailing list
> >> buildroot at busybox.net
> >> http://lists.busybox.net/mailman/listinfo/buildroot
> > 

-- 
.-----------------.--------------------.------------------.--------------------.
|  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] 14+ messages in thread

* [Buildroot] [PATCH 1/2] fs: Add common rootfs dependencies to PACKAGES
  2018-11-08 13:04 ` [Buildroot] [PATCH 1/2] fs: Add common rootfs dependencies to PACKAGES Andreas Naumann
  2018-11-09 22:11   ` Arnout Vandecappelle
@ 2018-11-13 14:51   ` Thomas Petazzoni
  2018-11-13 15:30     ` Andreas Naumann
  1 sibling, 1 reply; 14+ messages in thread
From: Thomas Petazzoni @ 2018-11-13 14:51 UTC (permalink / raw)
  To: buildroot

Hello Andres,

On Thu,  8 Nov 2018 14:04:16 +0100, Andreas Naumann wrote:

> diff --git a/fs/common.mk b/fs/common.mk
> index 2a5a202a89..a4a178c88a 100644
> --- a/fs/common.mk
> +++ b/fs/common.mk
> @@ -65,6 +65,7 @@ ROOTFS_COMMON_DEPENDENCIES = \
>  	host-fakeroot host-makedevs \
>  	$(BR2_TAR_HOST_DEPENDENCY) \
>  	$(if $(PACKAGES_USERS)$(ROOTFS_USERS_TABLES),host-mkpasswd)
> +PACKAGES += $(ROOTFS_COMMON_DEPENDENCIES)

Thanks a lot for testing the PPSH stuff and providing some bug fixes!

I've integrated into my patch series the following change:

@@ -171,7 +172,7 @@ rootfs-$(1): $$(BINARIES_DIR)/rootfs.$(1)
 
 ifeq ($$(BR2_TARGET_ROOTFS_$(2)),y)
 TARGETS_ROOTFS += rootfs-$(1)
-PACKAGES += $$(filter-out rootfs-%,$$(ROOTFS_$(2)_DEPENDENCIES))
+PACKAGES += $$(filter-out rootfs-%,$$(ROOTFS_$(2)_DEPENDENCIES)) $(ROOTFS_COMMON_DEPENDENCIES)
 endif
 
 # Check for legacy POST_TARGETS rules

which addresses this problem, while adding the dependencies only when a
filesystem image is selected. Having duplicates in PACKAGES is not a
problem.

I hope to send a v4 of my series soon.

Thanks!

Thomas
-- 
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

^ permalink raw reply	[flat|nested] 14+ messages in thread

* [Buildroot] [PATCH 1/2] fs: Add common rootfs dependencies to PACKAGES
  2018-11-13 14:51   ` Thomas Petazzoni
@ 2018-11-13 15:30     ` Andreas Naumann
  0 siblings, 0 replies; 14+ messages in thread
From: Andreas Naumann @ 2018-11-13 15:30 UTC (permalink / raw)
  To: buildroot

Hi,

Am 13.11.18 um 15:51 schrieb Thomas Petazzoni:
> Hello Andres,
> 
> On Thu,  8 Nov 2018 14:04:16 +0100, Andreas Naumann wrote:
> 
>> diff --git a/fs/common.mk b/fs/common.mk
>> index 2a5a202a89..a4a178c88a 100644
>> --- a/fs/common.mk
>> +++ b/fs/common.mk
>> @@ -65,6 +65,7 @@ ROOTFS_COMMON_DEPENDENCIES = \
>>   	host-fakeroot host-makedevs \
>>   	$(BR2_TAR_HOST_DEPENDENCY) \
>>   	$(if $(PACKAGES_USERS)$(ROOTFS_USERS_TABLES),host-mkpasswd)
>> +PACKAGES += $(ROOTFS_COMMON_DEPENDENCIES)
> 
> Thanks a lot for testing the PPSH stuff and providing some bug fixes!
> 
> I've integrated into my patch series the following change:
> 
> @@ -171,7 +172,7 @@ rootfs-$(1): $$(BINARIES_DIR)/rootfs.$(1)
>   
>   ifeq ($$(BR2_TARGET_ROOTFS_$(2)),y)
>   TARGETS_ROOTFS += rootfs-$(1)
> -PACKAGES += $$(filter-out rootfs-%,$$(ROOTFS_$(2)_DEPENDENCIES))
> +PACKAGES += $$(filter-out rootfs-%,$$(ROOTFS_$(2)_DEPENDENCIES)) $(ROOTFS_COMMON_DEPENDENCIES)
>   endif
>   
>   # Check for legacy POST_TARGETS rules
> 
> which addresses this problem, while adding the dependencies only when a
> filesystem image is selected. Having duplicates in PACKAGES is not a
> problem.

ok, I was going to follow Yann's suggestion but the confusion from 
seemingly adding to DEPENDENCIES instead of PACKAGES makes me favour 
your solution. Thus I wont post another v2 for this one.

> 
> I hope to send a v4 of my series soon.

Am curious.

regards,
Andreas

> 
> Thanks!
> 
> Thomas
> 

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2018-11-13 15:30 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-08 13:04 [Buildroot] [PATCH 0/2] Preparation for per-package host/target Andreas Naumann
2018-11-08 13:04 ` [Buildroot] [PATCH 1/2] fs: Add common rootfs dependencies to PACKAGES Andreas Naumann
2018-11-09 22:11   ` Arnout Vandecappelle
2018-11-12 12:53     ` Andreas Naumann
2018-11-12 16:46       ` Yann E. MORIN
2018-11-12 17:32         ` Arnout Vandecappelle
2018-11-12 17:44           ` Yann E. MORIN
2018-11-13 14:51   ` Thomas Petazzoni
2018-11-13 15:30     ` Andreas Naumann
2018-11-08 13:04 ` [Buildroot] [PATCH 2/2] linux: Make dtc install step more reliable Andreas Naumann
2018-11-09 22:14   ` Arnout Vandecappelle
2018-11-12 12:55     ` Andreas Naumann
2018-11-12 13:59       ` Arnout Vandecappelle
2018-11-08 13:23 ` [Buildroot] [PATCH 0/2] Preparation for per-package host/target Thomas Petazzoni

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.