* [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 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 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 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
* [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 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 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 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
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 a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox