diff mbox

[v2] linux: Fix URL for release candidate versions

Message ID 20170726021352.31148-1-luaraneda@gmail.com
State Changes Requested
Headers show

Commit Message

Luis Araneda July 26, 2017, 2:13 a.m. UTC
Starting with 4.12-rc1, tarballs are generated by cgit
directly from Linus's tree.
Also, set LINUX_SOURCE only on non-rc kernels,
and use <PKG>_SOURCE otherwise.

This method also applies to older release candidates.

Signed-off-by: Luis Araneda <luaraneda@gmail.com>

---
Changes v1 -> v2:
  - Set LINUX_SOURCE only on non-rc kernels (suggested by Arnout)

 linux/linux.mk | 8 +++-----
 1 file changed, 3 insertions(+), 5 deletions(-)

Comments

Thomas Petazzoni Aug. 1, 2017, 9:44 p.m. UTC | #1
Hello,

On Tue, 25 Jul 2017 22:13:52 -0400, Luis Araneda wrote:
> Starting with 4.12-rc1, tarballs are generated by cgit
> directly from Linus's tree.
> Also, set LINUX_SOURCE only on non-rc kernels,
> and use <PKG>_SOURCE otherwise.
> 
> This method also applies to older release candidates.
> 
> Signed-off-by: Luis Araneda <luaraneda@gmail.com>
> 
> ---
> Changes v1 -> v2:
>   - Set LINUX_SOURCE only on non-rc kernels (suggested by Arnout)
> 
>  linux/linux.mk | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
> 
> diff --git a/linux/linux.mk b/linux/linux.mk
> index 032d64fc2..f02734102 100644
> --- a/linux/linux.mk
> +++ b/linux/linux.mk
> @@ -16,7 +16,9 @@ define LINUX_HELP_CMDS
>  endef
>  
>  # Compute LINUX_SOURCE and LINUX_SITE from the configuration
> -ifeq ($(BR2_LINUX_KERNEL_CUSTOM_TARBALL),y)
> +ifneq ($(findstring -rc,$(LINUX_VERSION)),)

I think this condition should go *inside* the
($(BR2_LINUX_KERNEL_CUSTOM_TARBALL),y) condition. Indeed with your
current situation, if by any chance I have a Git tag such as
this-is-a-rc-kernel, then it will match your condition, and ignore the
Git repository address.

So I really think we want to test the -rc case inside the
($(BR2_LINUX_KERNEL_CUSTOM_TARBALL),y) condition, such as:

ifeq ($(BR2_LINUX_KERNEL_CUSTOM_TARBALL),y)
ifneq ($(findstring -rc,$(LINUX_VERSION)),)
LINUX_SITE = https://git.kernel.org/torvalds/t
else
...
endif
endif # tarball

Also, please use "=" to assign variables, not ":=".

Best regards,

Thomas
Luis Araneda Aug. 2, 2017, 4:18 a.m. UTC | #2
Hi,


You're right, I tested it with the following configuration:
BR2_LINUX_KERNEL_CUSTOM_GIT=y
BR2_LINUX_KERNEL_CUSTOM_REPO_URL="https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git"
BR2_LINUX_KERNEL_CUSTOM_REPO_VERSION="4.13-rc3"

It started downloading the tarball instead of cloning the
repository.

But the the initial idea was to fix the support for the
following configuration:
BR2_LINUX_KERNEL_CUSTOM_VERSION=y
BR2_LINUX_KERNEL_CUSTOM_VERSION_VALUE="4.13.rc3"

Which is working fine with rc-kernels before 4.12-rc1.

But, doesn't work when putting the condition inside the
custom tarball as you suggested.

The solution I've found that works on all the cases I've tested
is putting the condition after the
($(BR2_LINUX_KERNEL_LATEST_CIP_VERSION),y) condition.
like this:
...
else ifeq ($(BR2_LINUX_KERNEL_LATEST_CIP_VERSION),y)
LINUX_SITE = git://git.kernel.org/pub/scm/linux/kernel/git/bwh/linux-cip.git
+else ifneq ($(findstring -rc,$(LINUX_VERSION)),)
+LINUX_SITE = https://git.kernel.org/torvalds/t
else
...

If you like my new solution I can send a v3


Cheers,

Luis Araneda.

On Tue, Aug 1, 2017 at 5:44 PM, Thomas Petazzoni
<thomas.petazzoni@free-electrons.com> wrote:
> Hello,
>
> On Tue, 25 Jul 2017 22:13:52 -0400, Luis Araneda wrote:
>> Starting with 4.12-rc1, tarballs are generated by cgit
>> directly from Linus's tree.
>> Also, set LINUX_SOURCE only on non-rc kernels,
>> and use <PKG>_SOURCE otherwise.
>>
>> This method also applies to older release candidates.
>>
>> Signed-off-by: Luis Araneda <luaraneda@gmail.com>
>>
>> ---
>> Changes v1 -> v2:
>>   - Set LINUX_SOURCE only on non-rc kernels (suggested by Arnout)
>>
>>  linux/linux.mk | 8 +++-----
>>  1 file changed, 3 insertions(+), 5 deletions(-)
>>
>> diff --git a/linux/linux.mk b/linux/linux.mk
>> index 032d64fc2..f02734102 100644
>> --- a/linux/linux.mk
>> +++ b/linux/linux.mk
>> @@ -16,7 +16,9 @@ define LINUX_HELP_CMDS
>>  endef
>>
>>  # Compute LINUX_SOURCE and LINUX_SITE from the configuration
>> -ifeq ($(BR2_LINUX_KERNEL_CUSTOM_TARBALL),y)
>> +ifneq ($(findstring -rc,$(LINUX_VERSION)),)
>
> I think this condition should go *inside* the
> ($(BR2_LINUX_KERNEL_CUSTOM_TARBALL),y) condition. Indeed with your
> current situation, if by any chance I have a Git tag such as
> this-is-a-rc-kernel, then it will match your condition, and ignore the
> Git repository address.
>
> So I really think we want to test the -rc case inside the
> ($(BR2_LINUX_KERNEL_CUSTOM_TARBALL),y) condition, such as:
>
> ifeq ($(BR2_LINUX_KERNEL_CUSTOM_TARBALL),y)
> ifneq ($(findstring -rc,$(LINUX_VERSION)),)
> LINUX_SITE = https://git.kernel.org/torvalds/t
> else
> ...
> endif
> endif # tarball
>
> Also, please use "=" to assign variables, not ":=".
>
> Best regards,
>
> Thomas
> --
> Thomas Petazzoni, CTO, Free Electrons
> Embedded Linux and Kernel engineering
> http://free-electrons.com
diff mbox

Patch

diff --git a/linux/linux.mk b/linux/linux.mk
index 032d64fc2..f02734102 100644
--- a/linux/linux.mk
+++ b/linux/linux.mk
@@ -16,7 +16,9 @@  define LINUX_HELP_CMDS
 endef
 
 # Compute LINUX_SOURCE and LINUX_SITE from the configuration
-ifeq ($(BR2_LINUX_KERNEL_CUSTOM_TARBALL),y)
+ifneq ($(findstring -rc,$(LINUX_VERSION)),)
+LINUX_SITE := https://git.kernel.org/torvalds/t
+else ifeq ($(BR2_LINUX_KERNEL_CUSTOM_TARBALL),y)
 LINUX_TARBALL = $(call qstrip,$(BR2_LINUX_KERNEL_CUSTOM_TARBALL_LOCATION))
 LINUX_SITE = $(patsubst %/,%,$(dir $(LINUX_TARBALL)))
 LINUX_SOURCE = $(notdir $(LINUX_TARBALL))
@@ -43,10 +45,6 @@  LINUX_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/v3.x
 else ifeq ($(findstring x4.,x$(LINUX_VERSION)),x4.)
 LINUX_SITE = $(BR2_KERNEL_MIRROR)/linux/kernel/v4.x
 endif
-# release candidates are in testing/ subdir
-ifneq ($(findstring -rc,$(LINUX_VERSION)),)
-LINUX_SITE := $(LINUX_SITE)/testing
-endif # -rc
 endif
 
 ifeq ($(BR2_LINUX_KERNEL)$(BR2_LINUX_KERNEL_LATEST_VERSION),y)