[Buildroot] [PATCH 1/1] spidev_test: Select version based on toolchain
Joeri Barbarien
joeri.barbarien at gmail.com
Wed Apr 19 07:38:41 UTC 2017
Hello Arnout,
Thanks for the feedback. I will check if v4.10 spidev_test builds with
v3.15 headers. If it does, I will rework the patch as you suggest and
resubmit.
K.r.
Joeri
2017-04-18 20:03 GMT+02:00 Arnout Vandecappelle <arnout at mind.be>:
> Hi Joeri,
>
> Good idea, but I have a few remarks below. Care to fix up and resubmit?
>
> On 18-04-17 17:09, Joeri Barbarien wrote:
> > From: Joeri Barbarien <joeri.barbarien at nokia.com>
> >
> > spidev_test has further evolved after kernel version 3.15, which
> > is the most recent version that could be built in this package.
> > This change allows to build the version of spidev_test corresponding
> > to the toolchain's kernel header version. In this way, when building with
> > a newer toolchain, we are able to benefit from the added functionality
> > offered by newer versions of the tool.
> >
> > Signed-off-by: Joeri Barbarien <joeri.barbarien at nokia.com>
> > ---
> > package/spidev_test/spidev_test.hash | 3 +++
> > package/spidev_test/spidev_test.mk | 27 ++++++++++++++++++++++++++-
> > 2 files changed, 29 insertions(+), 1 deletion(-)
> >
> > diff --git a/package/spidev_test/spidev_test.hash
> b/package/spidev_test/spidev_test.hash
> > index 6871288..ab91a93 100644
> > --- a/package/spidev_test/spidev_test.hash
> > +++ b/package/spidev_test/spidev_test.hash
> > @@ -1,3 +1,6 @@
> > # Locally calculated
> > sha256 80471c330d8c0bf5ba6479c434a54a54bdd2dc59a703b9c76c2541ec04cfb8c3
> spidev_test.c?id=v3.0
> > sha256 57fa6c534e0b7b4d234075e18bc89e2f3c9fc4ecc27e80f349a8057708e0de46
> spidev_test.c?id=v3.15
> > +sha256 7af6f126248a479985a7e67238ed477c1dc20fab1453fab2f4a7e0db79d219c2
> spidev_test.c?id=v4.1
> > +sha256 94ec2ef4c7977f82aed43952ec6f5dfe472d879590ada8707bf841c24af8cc68
> spidev_test.c?id=v4.5
> > +sha256 b5918394f79f6ff3ceed20de063a6f7c49e20aee0d7bd91ec73c9e1ce9e4269a
> spidev_test.c?id=v4.9
> > diff --git a/package/spidev_test/spidev_test.mk b/package/spidev_test/
> spidev_test.mk
> > index 50e7a30..33bca74 100644
> > --- a/package/spidev_test/spidev_test.mk
> > +++ b/package/spidev_test/spidev_test.mk
> > @@ -7,12 +7,37 @@
> > # v3.15+ requires SPI_TX_QUAD/SPI_RX_QUAD to build
> > # Normally kernel headers can't be newer than kernel so switch based on
> that.
> > # If you need quad-pumped spi support you need to upgrade your
> toolchain.
> > +
> > +
> > +# Build the version corresponding to the toolchain kernel headers
> version.
> > +# Note that the contents of spidev_test.c does not change between the
> > +# versions referenced below.
> > +ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9),y)
> > +SPIDEV_TEST_VERSION = v4.9
>
> Is it possible to build e.g. spidev_test from v4.9 with kernel headers
> v3.15?
> If yes, then there is no need to have these intermediate versions, you can
> just do
>
> ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15),y)
> SPIDEV_TEST_VERSION = v4.10
> else
> SPIDEV_TEST_VERSION = v3.0
> endif
>
> We just want the latest version. In fact, for headers < 3.15 we could
> have used
> v3.14 instead of v3.0, but there are no changes between those two versions.
>
>
> > +else
> > +ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5),y)
>
> If you do need to keep multiple versions, put the else ifeq on one line.
> That
> way you need only one endif at the end.
>
> Regards,
> Arnout
>
> > +SPIDEV_TEST_VERSION = v4.5
> > +else
> > +ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1),y)
> > +SPIDEV_TEST_VERSION = v4.1
> > +else
> > ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15),y)
> > SPIDEV_TEST_VERSION = v3.15
> > else
> > SPIDEV_TEST_VERSION = v3.0
> > endif
> > -SPIDEV_TEST_SITE = http://git.kernel.org/cgit/
> linux/kernel/git/torvalds/linux.git/plain/Documentation/spi
> > +endif
> > +endif
> > +endif
> > +
> > +# Location of spidev_test.c changes from v4.5 onwards.
> > +ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5),y)
> > +SPIDEV_TEST_PATH=tools/spi
> > +else
> > +SPIDEV_TEST_PATH=Documentation/spi
> > +endif
> > +
> > +SPIDEV_TEST_SITE = http://git.kernel.org/cgit/
> linux/kernel/git/torvalds/linux.git/plain/$(SPIDEV_TEST_PATH)
> > SPIDEV_TEST_SOURCE = spidev_test.c?id=$(SPIDEV_TEST_VERSION)
> > SPIDEV_TEST_LICENSE = GPL-2.0
> >
> >
>
> --
> Arnout Vandecappelle arnout at mind be
> Senior Embedded Software Architect +32-16-286500
> Essensium/Mind http://www.mind.be
> G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
>
2017-04-18 20:03 GMT+02:00 Arnout Vandecappelle <arnout at mind.be>:
> Hi Joeri,
>
> Good idea, but I have a few remarks below. Care to fix up and resubmit?
>
> On 18-04-17 17:09, Joeri Barbarien wrote:
> > From: Joeri Barbarien <joeri.barbarien at nokia.com>
> >
> > spidev_test has further evolved after kernel version 3.15, which
> > is the most recent version that could be built in this package.
> > This change allows to build the version of spidev_test corresponding
> > to the toolchain's kernel header version. In this way, when building with
> > a newer toolchain, we are able to benefit from the added functionality
> > offered by newer versions of the tool.
> >
> > Signed-off-by: Joeri Barbarien <joeri.barbarien at nokia.com>
> > ---
> > package/spidev_test/spidev_test.hash | 3 +++
> > package/spidev_test/spidev_test.mk | 27 ++++++++++++++++++++++++++-
> > 2 files changed, 29 insertions(+), 1 deletion(-)
> >
> > diff --git a/package/spidev_test/spidev_test.hash
> b/package/spidev_test/spidev_test.hash
> > index 6871288..ab91a93 100644
> > --- a/package/spidev_test/spidev_test.hash
> > +++ b/package/spidev_test/spidev_test.hash
> > @@ -1,3 +1,6 @@
> > # Locally calculated
> > sha256 80471c330d8c0bf5ba6479c434a54a54bdd2dc59a703b9c76c2541ec04cfb8c3
> spidev_test.c?id=v3.0
> > sha256 57fa6c534e0b7b4d234075e18bc89e2f3c9fc4ecc27e80f349a8057708e0de46
> spidev_test.c?id=v3.15
> > +sha256 7af6f126248a479985a7e67238ed477c1dc20fab1453fab2f4a7e0db79d219c2
> spidev_test.c?id=v4.1
> > +sha256 94ec2ef4c7977f82aed43952ec6f5dfe472d879590ada8707bf841c24af8cc68
> spidev_test.c?id=v4.5
> > +sha256 b5918394f79f6ff3ceed20de063a6f7c49e20aee0d7bd91ec73c9e1ce9e4269a
> spidev_test.c?id=v4.9
> > diff --git a/package/spidev_test/spidev_test.mk b/package/spidev_test/
> spidev_test.mk
> > index 50e7a30..33bca74 100644
> > --- a/package/spidev_test/spidev_test.mk
> > +++ b/package/spidev_test/spidev_test.mk
> > @@ -7,12 +7,37 @@
> > # v3.15+ requires SPI_TX_QUAD/SPI_RX_QUAD to build
> > # Normally kernel headers can't be newer than kernel so switch based on
> that.
> > # If you need quad-pumped spi support you need to upgrade your
> toolchain.
> > +
> > +
> > +# Build the version corresponding to the toolchain kernel headers
> version.
> > +# Note that the contents of spidev_test.c does not change between the
> > +# versions referenced below.
> > +ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_9),y)
> > +SPIDEV_TEST_VERSION = v4.9
>
> Is it possible to build e.g. spidev_test from v4.9 with kernel headers
> v3.15?
> If yes, then there is no need to have these intermediate versions, you can
> just do
>
> ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15),y)
> SPIDEV_TEST_VERSION = v4.10
> else
> SPIDEV_TEST_VERSION = v3.0
> endif
>
> We just want the latest version. In fact, for headers < 3.15 we could
> have used
> v3.14 instead of v3.0, but there are no changes between those two versions.
>
>
> > +else
> > +ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5),y)
>
> If you do need to keep multiple versions, put the else ifeq on one line.
> That
> way you need only one endif at the end.
>
> Regards,
> Arnout
>
> > +SPIDEV_TEST_VERSION = v4.5
> > +else
> > +ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1),y)
> > +SPIDEV_TEST_VERSION = v4.1
> > +else
> > ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15),y)
> > SPIDEV_TEST_VERSION = v3.15
> > else
> > SPIDEV_TEST_VERSION = v3.0
> > endif
> > -SPIDEV_TEST_SITE = http://git.kernel.org/cgit/
> linux/kernel/git/torvalds/linux.git/plain/Documentation/spi
> > +endif
> > +endif
> > +endif
> > +
> > +# Location of spidev_test.c changes from v4.5 onwards.
> > +ifeq ($(BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_5),y)
> > +SPIDEV_TEST_PATH=tools/spi
> > +else
> > +SPIDEV_TEST_PATH=Documentation/spi
> > +endif
> > +
> > +SPIDEV_TEST_SITE = http://git.kernel.org/cgit/
> linux/kernel/git/torvalds/linux.git/plain/$(SPIDEV_TEST_PATH)
> > SPIDEV_TEST_SOURCE = spidev_test.c?id=$(SPIDEV_TEST_VERSION)
> > SPIDEV_TEST_LICENSE = GPL-2.0
> >
> >
>
> --
> Arnout Vandecappelle arnout at mind be
> Senior Embedded Software Architect +32-16-286500
> Essensium/Mind http://www.mind.be
> G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven
> LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
> GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.buildroot.org/pipermail/buildroot/attachments/20170419/9dfef5e1/attachment-0001.html>
More information about the buildroot
mailing list