Message ID | 20220104210727.3634208-1-fontaine.fabrice@gmail.com |
---|---|
State | Accepted |
Headers | show |
Series | [1/1] package/qpdf: needs atomic | expand |
On Tue, 4 Jan 2022 22:07:27 +0100 Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote: > qpdf needs atomic since bump to version 10.5.0 in commit > b5352c2177011ca389cbb7c68e78447549cbdaaa and > https://github.com/qpdf/qpdf/commit/c5c1a028cdd3cf345046c46963fb0fdacfb2c33c: > > /home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/m68k-buildroot-uclinux-uclibc/bin/ld.real: /home/buildroot/autobuild/instance-2/output-1/build/qpdf-10.5.0/libqpdf/build/.libs/libqpdf.a(QPDF.o): in function `QPDF::QPDF()': > QPDF.cc:(.text+0x48de): undefined reference to `__atomic_fetch_add_8' > > Fixes: > - http://autobuild.buildroot.org/results/7e18689670dcbe491c35f0597e5c3c787936263f > > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > --- > package/cups-filters/Config.in | 2 ++ > package/qpdf/Config.in | 2 ++ > 2 files changed, 4 insertions(+) Applied to master, thanks. However, could you do a test build on sparcv8 ? Indeed normally when something needs atomic, it also needs to link with libatomic when available, as some architectures (such as sparcv8) have all atomic built-ins implemented in libatomic. Thanks! Thomas
Le ven. 7 janv. 2022 à 22:08, Thomas Petazzoni <thomas.petazzoni@bootlin.com> a écrit : > > On Tue, 4 Jan 2022 22:07:27 +0100 > Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote: > > > qpdf needs atomic since bump to version 10.5.0 in commit > > b5352c2177011ca389cbb7c68e78447549cbdaaa and > > https://github.com/qpdf/qpdf/commit/c5c1a028cdd3cf345046c46963fb0fdacfb2c33c: > > > > /home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/m68k-buildroot-uclinux-uclibc/bin/ld.real: /home/buildroot/autobuild/instance-2/output-1/build/qpdf-10.5.0/libqpdf/build/.libs/libqpdf.a(QPDF.o): in function `QPDF::QPDF()': > > QPDF.cc:(.text+0x48de): undefined reference to `__atomic_fetch_add_8' > > > > Fixes: > > - http://autobuild.buildroot.org/results/7e18689670dcbe491c35f0597e5c3c787936263f > > > > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > > --- > > package/cups-filters/Config.in | 2 ++ > > package/qpdf/Config.in | 2 ++ > > 2 files changed, 4 insertions(+) > > Applied to master, thanks. However, could you do a test build on > sparcv8 ? Indeed normally when something needs atomic, it also needs to > link with libatomic when available, as some architectures (such as > sparcv8) have all atomic built-ins implemented in libatomic. qpdf handles linking with atomic since version 10.0.2 and https://github.com/qpdf/qpdf/commit/66198f447f45a87718b6457756976baa8defb2fd > > Thanks! > > Thomas > -- > Thomas Petazzoni, CTO, Bootlin > Embedded Linux and Kernel engineering > https://bootlin.com Best Regards, Fabrice
On Fri, 7 Jan 2022 22:16:26 +0100 Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote: > qpdf handles linking with atomic since version 10.0.2 and > https://github.com/qpdf/qpdf/commit/66198f447f45a87718b6457756976baa8defb2fd Excellent, thanks for confirming! Thomas
diff --git a/package/cups-filters/Config.in b/package/cups-filters/Config.in index 32381e6c1f..ded99a4774 100644 --- a/package/cups-filters/Config.in +++ b/package/cups-filters/Config.in @@ -8,6 +8,7 @@ config BR2_PACKAGE_CUPS_FILTERS depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 depends on BR2_PACKAGE_CUPS depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # qpdf + depends on BR2_TOOLCHAIN_HAS_ATOMIC # qpdf select BR2_PACKAGE_JPEG select BR2_PACKAGE_FONTCONFIG select BR2_PACKAGE_FREETYPE @@ -33,6 +34,7 @@ config BR2_PACKAGE_CUPS_FILTERS comment "cups-filters needs a toolchain w/ wchar, C++, threads and dynamic library, gcc >= 5" depends on BR2_USE_MMU + depends on BR2_TOOLCHAIN_HAS_ATOMIC depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ !BR2_USE_WCHAR || BR2_STATIC_LIBS || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_5 diff --git a/package/qpdf/Config.in b/package/qpdf/Config.in index 047c4c8a75..accf2b5f34 100644 --- a/package/qpdf/Config.in +++ b/package/qpdf/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_QPDF bool "qpdf" depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_GCC_AT_LEAST_5 # C++14 + depends on BR2_TOOLCHAIN_HAS_ATOMIC select BR2_PACKAGE_ZLIB select BR2_PACKAGE_JPEG select BR2_PACKAGE_LIBOPENSSL_ENABLE_RC4 if BR2_PACKAGE_LIBOPENSSL @@ -16,5 +17,6 @@ config BR2_PACKAGE_QPDF http://qpdf.sourceforge.net/ comment "qpdf needs a toolchain w/ C++, gcc >= 5" + depends on BR2_TOOLCHAIN_HAS_ATOMIC depends on !BR2_INSTALL_LIBSTDCPP || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_5
qpdf needs atomic since bump to version 10.5.0 in commit b5352c2177011ca389cbb7c68e78447549cbdaaa and https://github.com/qpdf/qpdf/commit/c5c1a028cdd3cf345046c46963fb0fdacfb2c33c: /home/buildroot/autobuild/instance-2/output-1/host/opt/ext-toolchain/m68k-buildroot-uclinux-uclibc/bin/ld.real: /home/buildroot/autobuild/instance-2/output-1/build/qpdf-10.5.0/libqpdf/build/.libs/libqpdf.a(QPDF.o): in function `QPDF::QPDF()': QPDF.cc:(.text+0x48de): undefined reference to `__atomic_fetch_add_8' Fixes: - http://autobuild.buildroot.org/results/7e18689670dcbe491c35f0597e5c3c787936263f Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> --- package/cups-filters/Config.in | 2 ++ package/qpdf/Config.in | 2 ++ 2 files changed, 4 insertions(+)