[igt-dev] [PATCH i-g-t v3 2/4] gitlab-ci: add libatomic to docker images

Guillaume Tucker guillaume.tucker at collabora.com
Wed Jun 19 08:09:06 UTC 2019


On 19/06/2019 07:50, Ser, Simon wrote:
> On Tue, 2019-06-18 at 13:27 +0100, Guillaume Tucker wrote:
>> Add libatomic to the Fedora docker image so it can link binaries that
>> use __atomic_* functions.  Also explicitly add libatomic1 to Debian
>> docker images as it is needed in particular on non-x86 architectures
>> for run-time linkage.
> 
> Per "[PATCH i-g-t v3 1/4] meson: add libatomic dependency", do we need
> libatomic for all of these images?

I suppose it's safer to include it, so if the linker test in
meson.build does happen to add the dependency it will actually
work.  Also as per an earlier comment:

  [PATCH i-g-t 2/4] gitlab-ci: add libatomic to Fedora docker image

  On 06/06/2019 08:26, Ser, Simon wrote:
  >> I wonder how does the libatomic gets installed implicitly in Debian.
  > It's a dependency of GCC. Probably a good idea to add it anyway?

It's true that we may optimise this a bit by checking for every
arch whether the test is expected to always pass or not and drop
the libatomic1 sub-arch package for those that link fine without
it.  I suspect only the mips version really needs it, the CI jobs
can help us confirm that.  Does that seem worth doing?

Guillaume

>> Signed-off-by: Guillaume Tucker <guillaume.tucker at collabora.com>
>> ---
>>
>> Notes:
>>     v2: add libatomic1 in Debian docker images
>>     v3: add libatomic1 for non-x86 arches in Debian docker images
>>
>>  Dockerfile.debian       | 1 +
>>  Dockerfile.debian-arm64 | 1 +
>>  Dockerfile.debian-armhf | 1 +
>>  Dockerfile.fedora       | 2 +-
>>  4 files changed, 4 insertions(+), 1 deletion(-)
>>
>> diff --git a/Dockerfile.debian b/Dockerfile.debian
>> index b9c3be3945e0..d23591850c4e 100644
>> --- a/Dockerfile.debian
>> +++ b/Dockerfile.debian
>> @@ -6,6 +6,7 @@ RUN apt-get install -y \
>>  			flex \
>>  			bison \
>>  			pkg-config \
>> +			libatomic1 \
>>  			libpciaccess-dev \
>>  			libkmod-dev \
>>  			libprocps-dev \
>> diff --git a/Dockerfile.debian-arm64 b/Dockerfile.debian-arm64
>> index 7b3a3c7ca803..c9fb28c804b8 100644
>> --- a/Dockerfile.debian-arm64
>> +++ b/Dockerfile.debian-arm64
>> @@ -14,6 +14,7 @@ RUN dpkg --add-architecture arm64
>>  RUN apt-get update
>>  RUN apt-get install -y \
>>  			gcc-aarch64-linux-gnu \
>> +			libatomic1:arm64 \
>>  			libpciaccess-dev:arm64 \
>>  			libkmod-dev:arm64 \
>>  			libprocps-dev:arm64 \
>> diff --git a/Dockerfile.debian-armhf b/Dockerfile.debian-armhf
>> index c67a1e2acf6a..3a133d849d68 100644
>> --- a/Dockerfile.debian-armhf
>> +++ b/Dockerfile.debian-armhf
>> @@ -14,6 +14,7 @@ RUN dpkg --add-architecture armhf
>>  RUN apt-get update
>>  RUN apt-get install -y \
>>  			gcc-arm-linux-gnueabihf \
>> +			libatomic1:armhf \
>>  			libpciaccess-dev:armhf \
>>  			libkmod-dev:armhf \
>>  			libprocps-dev:armhf \
>> diff --git a/Dockerfile.fedora b/Dockerfile.fedora
>> index 6686e587613d..c84b412b0723 100644
>> --- a/Dockerfile.fedora
>> +++ b/Dockerfile.fedora
>> @@ -1,7 +1,7 @@
>>  FROM fedora:30
>>  
>>  RUN dnf install -y \
>> -	gcc flex bison meson ninja-build xdotool \
>> +	gcc flex bison libatomic meson ninja-build xdotool \
>>  	'pkgconfig(libdrm)' \
>>  	'pkgconfig(pciaccess)' \
>>  	'pkgconfig(libkmod)' \



More information about the igt-dev mailing list