Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1527949 > unrolled thread
| Started by | Michal Marek <mmarek@suse.com> |
|---|---|
| First post | 2016-11-22 22:40 +0100 |
| Last post | 2016-11-25 15:30 +0100 |
| Articles | 3 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
[PATCH 3/6] arc: Use full path in KBUILD_IMAGE definition Michal Marek <mmarek@suse.com> - 2016-11-22 22:40 +0100
Re: [PATCH 3/6] arc: Use full path in KBUILD_IMAGE definition Alexey Brodkin <Alexey.Brodkin@synopsys.com> - 2016-11-23 20:50 +0100
Re: [PATCH 3/6] arc: Use full path in KBUILD_IMAGE definition Michal Marek <mmarek@suse.com> - 2016-11-25 15:30 +0100
| From | Michal Marek <mmarek@suse.com> |
|---|---|
| Date | 2016-11-22 22:40 +0100 |
| Subject | [PATCH 3/6] arc: Use full path in KBUILD_IMAGE definition |
| Message-ID | <sGqXg-4ft-9@gated-at.bofh.it> |
The KBUILD_IMAGE variable is used by the rpm and deb-pkg targets, which expect it to point to the image file in the build directory. The builddeb script has a workaround for architectures which only provide the basename, but let's provide a clean interface for packaging tools. Cc: Vineet Gupta <vgupta@synopsys.com> Cc: linux-snps-arc@lists.infradead.org Signed-off-by: Michal Marek <mmarek@suse.com> --- arch/arc/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/arch/arc/Makefile b/arch/arc/Makefile index 19cce226d1a8..44ef35d33956 100644 --- a/arch/arc/Makefile +++ b/arch/arc/Makefile @@ -123,9 +123,9 @@ libs-y += arch/arc/lib/ $(LIBGCC) boot := arch/arc/boot #default target for make without any arguments. -KBUILD_IMAGE := bootpImage +KBUILD_IMAGE := $(boot)/bootpImage -all: $(KBUILD_IMAGE) +all: bootpImage bootpImage: vmlinux boot_targets += uImage uImage.bin uImage.gz -- 2.10.0
[toc] | [next] | [standalone]
| From | Alexey Brodkin <Alexey.Brodkin@synopsys.com> |
|---|---|
| Date | 2016-11-23 20:50 +0100 |
| Message-ID | <sGLIm-E0-41@gated-at.bofh.it> |
| In reply to | #1527949 |
Hi Michal, On Tue, 2016-11-22 at 22:34 +0100, Michal Marek wrote: > The KBUILD_IMAGE variable is used by the rpm and deb-pkg targets, which > expect it to point to the image file in the build directory. The > builddeb script has a workaround for architectures which only provide > the basename, but let's provide a clean interface for packaging tools. > > Cc: Vineet Gupta <vgupta@synopsys.com> > Cc: linux-snps-arc@lists.infradead.org > Signed-off-by: Michal Marek <mmarek@suse.com> > --- > arch/arc/Makefile | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/arch/arc/Makefile b/arch/arc/Makefile > index 19cce226d1a8..44ef35d33956 100644 > --- a/arch/arc/Makefile > +++ b/arch/arc/Makefile > @@ -123,9 +123,9 @@ libs-y += arch/arc/lib/ $(LIBGCC) > boot := arch/arc/boot > > #default target for make without any arguments. > -KBUILD_IMAGE := bootpImage > +KBUILD_IMAGE := $(boot)/bootpImage > > -all: $(KBUILD_IMAGE) > +all: bootpImage > bootpImage: vmlinux > > boot_targets += uImage uImage.bin uImage.gz I tried to find any examples on how that KBUILD_IMAGE thingy is used but to no avail. It looks like for ARC "bootpImage" makes not much sense and if you really want to get something useful in .deb/.rpm most probably something like below may work much better: ------------------------>8-------------------------- KBUILD_IMAGE := $(boot)/uImage ------------------------>8-------------------------- And I don't know context of KBUILD_IMAGE usage but in case of ARC our default target is "vmlinux" so I'm not sure then if KBUILD_IMAGE may point to non-default target. For example in "arch/avr32/Makefile" I see more complicated construction: ------------------------>8-------------------------- KBUILD_IMAGE := $(boot)/uImage vmlinux.elf: KBUILD_IMAGE := $(boot)/vmlinux.elf vmlinux.cso: KBUILD_IMAGE := $(boot)/vmlinux.cso uImage.srec: KBUILD_IMAGE := $(boot)/uImage.srec uImage: KBUILD_IMAGE := $(boot)/uImage ------------------------>8-------------------------- and may imagine that we need something similar for ARC obviously with default being "$(boot)/vmlinux". -Alexey
[toc] | [prev] | [next] | [standalone]
| From | Michal Marek <mmarek@suse.com> |
|---|---|
| Date | 2016-11-25 15:30 +0100 |
| Message-ID | <sHpFM-1In-35@gated-at.bofh.it> |
| In reply to | #1528728 |
Dne 23.11.2016 v 20:40 Alexey Brodkin napsal(a):
>> diff --git a/arch/arc/Makefile b/arch/arc/Makefile
>> index 19cce226d1a8..44ef35d33956 100644
>> --- a/arch/arc/Makefile
>> +++ b/arch/arc/Makefile
>> @@ -123,9 +123,9 @@ libs-y += arch/arc/lib/ $(LIBGCC)
>> boot := arch/arc/boot
>>
>> #default target for make without any arguments.
>> -KBUILD_IMAGE := bootpImage
>> +KBUILD_IMAGE := $(boot)/bootpImage
>>
>> -all: $(KBUILD_IMAGE)
>> +all: bootpImage
>> bootpImage: vmlinux
>>
>> boot_targets += uImage uImage.bin uImage.gz
>
> I tried to find any examples on how that KBUILD_IMAGE thingy is used
> but to no avail.
Ho Alexey,
see scripts/pacakge/{builddeb,buildtar,mkspec}. mkspec calls make
image_name, which in turn outputs $KBUILD_IMAGE.
> It looks like for ARC "bootpImage" makes not much
> sense and if you really want to get something useful in .deb/.rpm
> most probably something like below may work much better:
> ------------------------>8--------------------------
> KBUILD_IMAGE := $(boot)/uImage
> ------------------------>8--------------------------
>
> And I don't know context of KBUILD_IMAGE usage but in
> case of ARC our default target is "vmlinux" so I'm not sure then if
> KBUILD_IMAGE may point to non-default target.
Right, this will not work for make rpm-pkg, since it calls make with no
explicit target and expects the file pointed to by KBUILD_IMAGE to exist
afterward. This will work if you also change the 'all' target to depend
on uImage.
> For example in "arch/avr32/Makefile" I see more complicated construction:
> ------------------------>8--------------------------
> KBUILD_IMAGE := $(boot)/uImage
> vmlinux.elf: KBUILD_IMAGE := $(boot)/vmlinux.elf
> vmlinux.cso: KBUILD_IMAGE := $(boot)/vmlinux.cso
> uImage.srec: KBUILD_IMAGE := $(boot)/uImage.srec
> uImage: KBUILD_IMAGE := $(boot)/uImage
> ------------------------>8--------------------------
Right, but the packaging targets will only build and package uImage. The
other redefinitions are there only for the avr32 install rule:
install: vmlinux
$(Q)$(MAKE) $(build)=$(boot) BOOTIMAGE=$(KBUILD_IMAGE) $@
> and may imagine that we need something similar for ARC obviously with
> default being "$(boot)/vmlinux".
What some other architectures do is that the image format is selected
via Kconfig and not on the make command line. E.g. arm and sh do this.
Michal
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web