[Qemu-devel] [PATCH] docker/dockerfiles/debian-s390-cross: include clang

Alex Bennée posted 1 patch 7 years, 1 month ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20170306112848.659-1-alex.bennee@linaro.org
Test checkpatch passed
Test docker passed
tests/docker/dockerfiles/debian-s390x-cross.docker | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
[Qemu-devel] [PATCH] docker/dockerfiles/debian-s390-cross: include clang
Posted by Alex Bennée 7 years, 1 month ago
It's a silly little limitation on Shippable that is looks for clang
in the container even though we won't use it. The arm/aarch64 cross
builds inherit this from debian.docker but as we needed to use
debian-testing for this we add it here. We also collapse the update
step into one RUN line to remove and intermediate layer of the docker
build.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
 tests/docker/dockerfiles/debian-s390x-cross.docker | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
index bbb21ed088..3a687feda0 100644
--- a/tests/docker/dockerfiles/debian-s390x-cross.docker
+++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
@@ -13,8 +13,8 @@ RUN cat /etc/apt/sources.list | sed "s/deb/deb-src/" >> /etc/apt/sources.list
 RUN dpkg --add-architecture s390x
 
 # Grab the updated list of packages
-RUN apt update
-RUN apt dist-upgrade -yy
+RUN apt update && apt dist-upgrade -yy
+RUN apt install -yy build-essential clang
 RUN apt-get build-dep -yy -a s390x qemu || apt-get -f install
 RUN apt install -yy gcc-multilib-s390x-linux-gnu binutils-multiarch
 
-- 
2.11.0


Re: [Qemu-devel] [PATCH] docker/dockerfiles/debian-s390-cross: include clang
Posted by Fam Zheng 7 years, 1 month ago
On Mon, 03/06 11:28, Alex Bennée wrote:
> It's a silly little limitation on Shippable that is looks for clang
> in the container even though we won't use it. The arm/aarch64 cross
> builds inherit this from debian.docker but as we needed to use
> debian-testing for this we add it here. We also collapse the update
> step into one RUN line to remove and intermediate layer of the docker
> build.
> 
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
>  tests/docker/dockerfiles/debian-s390x-cross.docker | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
> index bbb21ed088..3a687feda0 100644
> --- a/tests/docker/dockerfiles/debian-s390x-cross.docker
> +++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
> @@ -13,8 +13,8 @@ RUN cat /etc/apt/sources.list | sed "s/deb/deb-src/" >> /etc/apt/sources.list
>  RUN dpkg --add-architecture s390x
>  
>  # Grab the updated list of packages
> -RUN apt update
> -RUN apt dist-upgrade -yy
> +RUN apt update && apt dist-upgrade -yy
> +RUN apt install -yy build-essential clang
>  RUN apt-get build-dep -yy -a s390x qemu || apt-get -f install
>  RUN apt install -yy gcc-multilib-s390x-linux-gnu binutils-multiarch
>  
> -- 
> 2.11.0
> 

Looks sane. Is this for 2.9?

Fam

Re: [Qemu-devel] [PATCH] docker/dockerfiles/debian-s390-cross: include clang
Posted by Philippe Mathieu-Daudé 7 years, 1 month ago
Hi Alex, Fam.

I tested this way but got an error:

qemu (docker_alex)$ make docker-test-clang@debian-s390x-cross
   BUILD   debian-s390x-cross
make[1]: Entering directory 'qemu'
   ARCHIVE qemu.tgz
   ARCHIVE dtc.tgz
   ARCHIVE pixman.tgz
   COPY    RUNNER
     RUN test-clang in qemu:debian-s390x-cross
Prerequisite 'clang' not present, skip
make[1]: Leaving directory 'qemu'

am I missing something? like a FEATURES/clang.tgz?

qemu (docker_alex)$ docker run qemu:debian-s390x-cross which clang
/usr/bin/clang

On 03/07/2017 07:37 AM, Fam Zheng wrote:
> On Mon, 03/06 11:28, Alex Bennée wrote:
>> It's a silly little limitation on Shippable that is looks for clang
>> in the container even though we won't use it. The arm/aarch64 cross
>> builds inherit this from debian.docker but as we needed to use
>> debian-testing for this we add it here. We also collapse the update
>> step into one RUN line to remove and intermediate layer of the docker
>> build.
>>
>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>> ---
>>  tests/docker/dockerfiles/debian-s390x-cross.docker | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
>> index bbb21ed088..3a687feda0 100644
>> --- a/tests/docker/dockerfiles/debian-s390x-cross.docker
>> +++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
>> @@ -13,8 +13,8 @@ RUN cat /etc/apt/sources.list | sed "s/deb/deb-src/" >> /etc/apt/sources.list
>>  RUN dpkg --add-architecture s390x
>>
>>  # Grab the updated list of packages
>> -RUN apt update
>> -RUN apt dist-upgrade -yy
>> +RUN apt update && apt dist-upgrade -yy

^ good!

>> +RUN apt install -yy build-essential clang
>>  RUN apt-get build-dep -yy -a s390x qemu || apt-get -f install
>>  RUN apt install -yy gcc-multilib-s390x-linux-gnu binutils-multiarch
>>
>> --
>> 2.11.0
>>
>
> Looks sane. Is this for 2.9?
>
> Fam
>

Re: [Qemu-devel] [PATCH] docker/dockerfiles/debian-s390-cross: include clang
Posted by Alex Bennée 7 years, 1 month ago
Philippe Mathieu-Daudé <f4bug@amsat.org> writes:

> Hi Alex, Fam.
>
> I tested this way but got an error:
>
> qemu (docker_alex)$ make docker-test-clang@debian-s390x-cross
>   BUILD   debian-s390x-cross
> make[1]: Entering directory 'qemu'
>   ARCHIVE qemu.tgz
>   ARCHIVE dtc.tgz
>   ARCHIVE pixman.tgz
>   COPY    RUNNER
>     RUN test-clang in qemu:debian-s390x-cross
> Prerequisite 'clang' not present, skip
> make[1]: Leaving directory 'qemu'
>
> am I missing something? like a FEATURES/clang.tgz?
>
> qemu (docker_alex)$ docker run qemu:debian-s390x-cross which clang
> /usr/bin/clang
>
> On 03/07/2017 07:37 AM, Fam Zheng wrote:
>> On Mon, 03/06 11:28, Alex Bennée wrote:
>>> It's a silly little limitation on Shippable that is looks for clang
>>> in the container even though we won't use it. The arm/aarch64 cross

The clang is only to keep shippable happy. It scans for compilers
despite the fact our actual build is using the cross-compiler. AFAIK
Debian don't package cross-built versions of clang. It would be nice if
they did by currently all our cross-build containers use GCC.

>>> builds inherit this from debian.docker but as we needed to use
>>> debian-testing for this we add it here. We also collapse the update
>>> step into one RUN line to remove and intermediate layer of the docker
>>> build.
>>>
>>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>>> ---
>>>  tests/docker/dockerfiles/debian-s390x-cross.docker | 4 ++--
>>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
>>> index bbb21ed088..3a687feda0 100644
>>> --- a/tests/docker/dockerfiles/debian-s390x-cross.docker
>>> +++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
>>> @@ -13,8 +13,8 @@ RUN cat /etc/apt/sources.list | sed "s/deb/deb-src/" >> /etc/apt/sources.list
>>>  RUN dpkg --add-architecture s390x
>>>
>>>  # Grab the updated list of packages
>>> -RUN apt update
>>> -RUN apt dist-upgrade -yy
>>> +RUN apt update && apt dist-upgrade -yy
>
> ^ good!
>
>>> +RUN apt install -yy build-essential clang
>>>  RUN apt-get build-dep -yy -a s390x qemu || apt-get -f install
>>>  RUN apt install -yy gcc-multilib-s390x-linux-gnu binutils-multiarch
>>>
>>> --
>>> 2.11.0
>>>
>>
>> Looks sane. Is this for 2.9?
>>
>> Fam
>>


--
Alex Bennée

Re: [Qemu-devel] [PATCH] docker/dockerfiles/debian-s390-cross: include clang
Posted by Alex Bennée 7 years, 1 month ago
Fam Zheng <famz@redhat.com> writes:

> On Mon, 03/06 11:28, Alex Bennée wrote:
>> It's a silly little limitation on Shippable that is looks for clang
>> in the container even though we won't use it. The arm/aarch64 cross
>> builds inherit this from debian.docker but as we needed to use
>> debian-testing for this we add it here. We also collapse the update
>> step into one RUN line to remove and intermediate layer of the docker
>> build.
>>
>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>> ---
>>  tests/docker/dockerfiles/debian-s390x-cross.docker | 4 ++--
>>  1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
>> index bbb21ed088..3a687feda0 100644
>> --- a/tests/docker/dockerfiles/debian-s390x-cross.docker
>> +++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
>> @@ -13,8 +13,8 @@ RUN cat /etc/apt/sources.list | sed "s/deb/deb-src/" >> /etc/apt/sources.list
>>  RUN dpkg --add-architecture s390x
>>
>>  # Grab the updated list of packages
>> -RUN apt update
>> -RUN apt dist-upgrade -yy
>> +RUN apt update && apt dist-upgrade -yy
>> +RUN apt install -yy build-essential clang
>>  RUN apt-get build-dep -yy -a s390x qemu || apt-get -f install
>>  RUN apt install -yy gcc-multilib-s390x-linux-gnu binutils-multiarch
>>
>> --
>> 2.11.0
>>
>
> Looks sane. Is this for 2.9?

Yes please. The s390x cross build on shippable is currently broken
without it although we can use the container locally.

--
Alex Bennée

Re: [Qemu-devel] [PATCH] docker/dockerfiles/debian-s390-cross: include clang
Posted by Fam Zheng 7 years, 1 month ago
On Tue, 03/07 13:41, Alex Bennée wrote:
> 
> Fam Zheng <famz@redhat.com> writes:
> 
> > On Mon, 03/06 11:28, Alex Bennée wrote:
> >> It's a silly little limitation on Shippable that is looks for clang
> >> in the container even though we won't use it. The arm/aarch64 cross
> >> builds inherit this from debian.docker but as we needed to use
> >> debian-testing for this we add it here. We also collapse the update
> >> step into one RUN line to remove and intermediate layer of the docker
> >> build.
> >>
> >> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> >> ---
> >>  tests/docker/dockerfiles/debian-s390x-cross.docker | 4 ++--
> >>  1 file changed, 2 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/tests/docker/dockerfiles/debian-s390x-cross.docker b/tests/docker/dockerfiles/debian-s390x-cross.docker
> >> index bbb21ed088..3a687feda0 100644
> >> --- a/tests/docker/dockerfiles/debian-s390x-cross.docker
> >> +++ b/tests/docker/dockerfiles/debian-s390x-cross.docker
> >> @@ -13,8 +13,8 @@ RUN cat /etc/apt/sources.list | sed "s/deb/deb-src/" >> /etc/apt/sources.list
> >>  RUN dpkg --add-architecture s390x
> >>
> >>  # Grab the updated list of packages
> >> -RUN apt update
> >> -RUN apt dist-upgrade -yy
> >> +RUN apt update && apt dist-upgrade -yy
> >> +RUN apt install -yy build-essential clang
> >>  RUN apt-get build-dep -yy -a s390x qemu || apt-get -f install
> >>  RUN apt install -yy gcc-multilib-s390x-linux-gnu binutils-multiarch
> >>
> >> --
> >> 2.11.0
> >>
> >
> > Looks sane. Is this for 2.9?
> 
> Yes please. The s390x cross build on shippable is currently broken
> without it although we can use the container locally.

OK, I'll send a pull request soon.

Fam