The package rpms/folly.git has added or updated architecture specific content in its
spec file (ExclusiveArch/ExcludeArch or %ifarch/%ifnarch) in commit(s):
https://src.fedoraproject.org/cgit/rpms/folly.git/commit/?id=87e9e0f4cab3....
Change:
+%ifarch armv7hl
Thanks.
Full change:
============
commit 87e9e0f4cab376a8fb19ff9cfda58a7c787e1430
Author: Michel Alexandre Salim <salimma(a)fedoraproject.org>
Date: Fri Mar 4 16:36:41 2022 -0800
Fix build on armv7hl; disable ppc64le build on F36+ for now
Signed-off-by: Michel Alexandre Salim <salimma(a)fedoraproject.org>
diff --git a/folly-disable_exception_tracer_armv7hl.patch
b/folly-disable_exception_tracer_armv7hl.patch
new file mode 100644
index 0000000..39aeb75
--- /dev/null
+++ b/folly-disable_exception_tracer_armv7hl.patch
@@ -0,0 +1,11 @@
+diff '--color=auto' -ruN folly-2022.02.28.00/folly/CMakeLists.txt
folly-2022.02.28.00-disable_exception_tracer_armv7hl/folly/CMakeLists.txt
+--- folly-2022.02.28.00/folly/CMakeLists.txt 2022-02-26 12:09:52.000000000 -0800
++++ folly-2022.02.28.00-disable_exception_tracer_armv7hl/folly/CMakeLists.txt 2022-03-04
16:33:33.494760564 -0800
+@@ -27,7 +27,6 @@
+ ARCHIVE DESTINATION ${LIB_INSTALL_DIR}
+ )
+
+-add_subdirectory(experimental/exception_tracer)
+ add_subdirectory(logging/example)
+
+ if (PYTHON_EXTENSIONS)
diff --git a/folly-disable_logging_example_ppc64le.patch
b/folly-disable_logging_example_ppc64le.patch
deleted file mode 100644
index ec22708..0000000
--- a/folly-disable_logging_example_ppc64le.patch
+++ /dev/null
@@ -1,11 +0,0 @@
-diff '--color=auto' -ruN folly-2022.02.28.00/folly/CMakeLists.txt
folly-2022.02.28.00-disable_logging_example_ppc64le/folly/CMakeLists.txt
---- folly-2022.02.28.00/folly/CMakeLists.txt 2022-02-26 12:09:52.000000000 -0800
-+++ folly-2022.02.28.00-disable_logging_example_ppc64le/folly/CMakeLists.txt 2022-03-04
11:54:25.505610228 -0800
-@@ -28,7 +28,6 @@
- )
-
- add_subdirectory(experimental/exception_tracer)
--add_subdirectory(logging/example)
-
- if (PYTHON_EXTENSIONS)
- # Create tree of symbolic links in structure required for successful
diff --git a/folly.spec b/folly.spec
index 6ee1d91..512fdf2 100644
--- a/folly.spec
+++ b/folly.spec
@@ -47,11 +47,29 @@ Patch6: %{name}-skip_eliasfanocoding_test_non_x64.patch
Patch7: %{name}-fix_bits_test_32bit.patch
Patch8: %{name}-fix_small_locks_test.patch
Patch9: %{name}-skip_discriminatedptr_test_32bit.patch
-Patch10: %{name}-disable_logging_example_ppc64le.patch
+#
/builddir/build/BUILD/folly-2022.02.28.00/folly/experimental/exception_tracer/ExceptionTracer.cpp:131:10:
error: no matching function for call to 'isAbiCppException'
+# return isAbiCppException(tag{}, exc->unwindHeader.exception_class);
+# ^~~~~~~~~~~~~~~~~
+#
/builddir/build/BUILD/folly-2022.02.28.00/folly/experimental/exception_tracer/ExceptionTracer.cpp:117:25:
note: candidate function not viable: no known conversion from 'const uint64_t'
(aka 'const unsigned long long') to 'const char [8]' for 2nd argument
+# FOLLY_MAYBE_UNUSED bool isAbiCppException(ArmAbiTag, const char (&klazz)[8]) {
+# ^
+#
/builddir/build/BUILD/folly-2022.02.28.00/folly/experimental/exception_tracer/ExceptionTracer.cpp:122:25:
note: candidate function not viable: no known conversion from 'tag' (aka
'folly::exception_tracer::(anonymous namespace)::ArmAbiTag') to
'folly::exception_tracer::(anonymous namespace)::AnyAbiTag' for 1st argument
+# FOLLY_MAYBE_UNUSED bool isAbiCppException(AnyAbiTag, const uint64_t& klazz) {
+# ^
+#
/builddir/build/BUILD/folly-2022.02.28.00/folly/experimental/exception_tracer/ExceptionTracer.cpp:129:6:
note: candidate function not viable: requires single argument 'exc', but 2
arguments were provided
+# bool isAbiCppException(const __cxa_exception* exc) {
+# ^
+Patch11: %{name}-disable_exception_tracer_armv7hl.patch
# Folly is known not to work on big-endian CPUs
#
https://bugzilla.redhat.com/show_bug.cgi?id=1892151
ExcludeArch: s390x
+%if 0%{?fedora} > 36
+# fmt code breaks:
https://bugzilla.redhat.com/show_bug.cgi?id=2061022
+# /usr/bin/ld: ../../../libfolly.so.2022.02.28.00: undefined reference to `int
fmt::v8::detail::format_float<__float128>(__float128, int,
fmt::v8::detail::float_specs, fmt::v8::detail::buffer<char>&)'
+# /usr/bin/ld: ../../../libfolly.so.2022.02.28.00: undefined reference to `int
fmt::v8::detail::snprintf_float<__float128>(__float128, int,
fmt::v8::detail::float_specs, fmt::v8::detail::buffer<char>&)'
+ExcludeArch: ppc64le
+%endif
BuildRequires: cmake
%if %{with toolchain_clang}
@@ -199,6 +217,10 @@ developing applications that use python3-%{name}.
%ifarch ppc64le
%patch10 -p1
%endif
+%ifarch armv7hl
+%patch11 -p1
+rm -rf folly/experimental/exception_tracer
+%endif
%if %{with python}
# this file gets cached starting in 841d5087eda926eac1cb17c4683fd48b247afe50