Message ID | 20190618122746.61310-3-guillaume.tucker@collabora.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Use C11 atomics | expand |
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? > > Signed-off-by: Guillaume Tucker <guillaume.tucker@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)' \
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@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)' \
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)' \
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. Signed-off-by: Guillaume Tucker <guillaume.tucker@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(-)