The package rpms/simde.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/simde.git/commit/?id=ec13d0084437...
https://src.fedoraproject.org/cgit/rpms/simde.git/commit/?id=f64dd0d6a491....
Change:
+%ifarch aarch64
+%ifnarch s390x
Thanks.
Full change:
============
commit f64dd0d6a4914353bebc1353af20eb4b249cc04d
Author: Jun Aruga <jaruga(a)redhat.com>
Date: Sun Apr 19 20:48:42 2020 +0200
Skip s390x clang flags tests.
diff --git a/simde.spec b/simde.spec
index 18627a9..c7ab26a 100644
--- a/simde.spec
+++ b/simde.spec
@@ -133,6 +133,10 @@ CC=clang CXX=clang++ cmake ..
popd
# with flags
+# Skip s390x clang flags tests.
+# s390x make Segmentation fault with clang-8.0.0, -O2 and some flags.
+#
https://github.com/nemequ/simde/issues/206
+%ifnarch s390x
echo "=== 2.2. tests on clang with flags ==="
# Some flags and specs are not available with clang.
#
https://lists.fedoraproject.org/archives/list/packaging@lists.fedoraproje...
@@ -154,6 +158,7 @@ CC=clang CXX=clang++ cmake \
./run-tests
%endif
popd
+%endif
%files devel
%license COPYING
@@ -161,5 +166,6 @@ popd
%{_includedir}/%{name}
%changelog
-* Fri Apr 10 2020 Jun Aruga <jaruga(a)redhat.com> - 0.0.0-1.git29b9110
+* Sun Apr 19 2020 Jun Aruga <jaruga(a)redhat.com> - 0.0.0-1.git29b9110
- Initial package
+- Skip s390x clang flags tests.
commit ec13d0084437dfcb95456340c9913cae324cc6c7
Author: Jun Aruga <jaruga(a)redhat.com>
Date: Mon Apr 13 18:08:03 2020 +0200
Initial import (rhbz#1823001).
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..0ddbb0a
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,2 @@
+/29b911059dd06bc1e4c30d8922871a4b239279e3.tar.gz
+/da8f73412998e4f1adf1100dc187533a51af77fd.tar.gz
diff --git a/README.md b/README.md
deleted file mode 100644
index ad7a221..0000000
--- a/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-# simde
-
-The simde package
\ No newline at end of file
diff --git a/simde.spec b/simde.spec
new file mode 100644
index 0000000..18627a9
--- /dev/null
+++ b/simde.spec
@@ -0,0 +1,165 @@
+%global commit_simde 29b911059dd06bc1e4c30d8922871a4b239279e3
+%global short_commit_simde %(c=%{commit_simde}; echo ${c:0:7})
+%global commit_munit da8f73412998e4f1adf1100dc187533a51af77fd
+%global hedley_version 12
+# Disable debuginfo package for the header only package.
+%global debug_package %{nil}
+
+Name: simde
+# Use a minimum version as there has not been a version release yet.
+# The upstream mentioned "I think I'll start with a 0.5 or something".
+#
https://github.com/nemequ/simde/issues/50
+Version: 0.0.0
+# Align the release format with the packages setting Source0 by commit hash
+# such as podman.spec and moby-engine.spec.
+Release: 1.git%{short_commit_simde}%{?dist}
+Summary: SIMD Everywhere
+# find simde/ -type f | xargs licensecheck
+# simde: MIT
+# simde/check.h: CC0
+# simde/debug-trap.h: CC0
+# simde/hedley.h: CC0
+# simde/simde-arch.h: CC0
+License: MIT and CC0
+URL:
https://github.com/nemequ/simde
+Source0:
https://github.com/nemequ/%{name}/archive/%{commit_simde}.tar.gz
+# munit used in the unit test.
+Source1:
https://github.com/nemequ/munit/archive/%{commit_munit}.tar.gz
+# gcc and clang are used in the unit tests.
+BuildRequires: clang
+BuildRequires: cmake
+BuildRequires: gcc
+BuildRequires: gcc-c++
+# Do not set noarch for header only package.
+# See
https://docs.fedoraproject.org/en-US/packaging-guidelines/#_packaging_hea...
+
+# simde/hedley.h
+#
https://github.com/nemequ/hedley
+Provides: bundled(hedley) = %{hedley_version}
+
+%description
+%{summary}
+The SIMDe header-only library provides fast, portable implementations of SIMD
+intrinsics on hardware which doesn't natively support them, such as calling
+SSE functions on ARM. There is no performance penalty if the hardware supports
+the native implementation (e.g., SSE/AVX runs at full speed on x86,
+NEON on ARM, etc.).
+
+%package devel
+Summary: Header files for SIMDe development
+Provides: %{name}-static = %{version}-%{release}
+
+%description devel
+The simde-devel package contains the header files needed
+to develop programs that use the SIMDe.
+
+%prep
+%autosetup -n %{name}-%{commit_simde}
+
+%build
+# The %%build section is not used.
+
+%install
+mkdir -p %{buildroot}%{_includedir}
+cp -a simde %{buildroot}%{_includedir}
+
+%check
+# Check if all the shipped file is a valid header file.
+for file in $(find simde/ -type f); do
+ if ! [[ "${file}" =~ \.h$ ]]; then
+ echo "${file} is not a header file."
+ false
+ elif [ -x "${file}" ]; then
+ echo "${file} has executable bit."
+ false
+ fi
+done
+
+# Check hedley version correctness.
+test "$(grep '^#define HEDLEY_VERSION ' simde/hedley.h | cut -d ' '
-f3)" = \
+ '%{hedley_version}'
+
+# Set munit.
+rm -rf test/munit
+tar xzvf %{SOURCE1}
+mv munit-%{commit_munit} test/munit
+
+# Run the unit tests.
+# gcc
+echo "== 1. tests on gcc =="
+gcc --version
+g++ --version
+
+# without flags
+echo "=== 1.1. tests on gcc without flags ==="
+mkdir test/build-gcc
+pushd test/build-gcc
+CC=gcc CXX=g++ cmake ..
+%make_build
+./run-tests
+popd
+
+# with flags
+echo "=== 1.2. tests on gcc with flags ==="
+mkdir test/build-gcc-with-flags
+pushd test/build-gcc-with-flags
+CC=gcc CXX=g++ cmake \
+ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
+ -DCMAKE_C_FLAGS="%{build_cflags}" \
+ -DCMAKE_CXX_FLAGS="%{build_cxxflags}" \
+ ..
+%make_build
+# armv7hl tests fail with gcc 10.0.1 with -O2 and some flags
+#
https://github.com/nemequ/simde/issues/156
+%ifarch %{arm}
+./run-tests | true
+%else
+./run-tests
+%endif
+popd
+
+# clang
+echo "== 2. tests on clang =="
+clang --version
+clang++ --version
+
+# without flags
+echo "=== 2.1. tests on clang without flags ==="
+mkdir test/build-clang
+pushd test/build-clang
+CC=clang CXX=clang++ cmake ..
+%make_build
+./run-tests
+popd
+
+# with flags
+echo "=== 2.2. tests on clang with flags ==="
+# Some flags and specs are not available with clang.
+#
https://lists.fedoraproject.org/archives/list/packaging@lists.fedoraproje...
+optflags_clang=$(echo "%{optflags}" | \
+ sed -e 's| -fstack-clash-protection||' -e 's| -specs=[^ ]*||g')
+mkdir test/build-clang-with-flags
+pushd test/build-clang-with-flags
+CC=clang CXX=clang++ cmake \
+ -DCMAKE_VERBOSE_MAKEFILE:BOOL=ON \
+ -DCMAKE_C_FLAGS="${optflags_clang}" \
+ -DCMAKE_CXX_FLAGS="${optflags_clang}" \
+ ..
+%make_build
+# aarch64 tests fail with clang-10.0.0 with -O2 and some flags
+#
https://github.com/nemequ/simde/issues/167
+%ifarch aarch64
+./run-tests | true
+%else
+./run-tests
+%endif
+popd
+
+%files devel
+%license COPYING
+%doc README.md
+%{_includedir}/%{name}
+
+%changelog
+* Fri Apr 10 2020 Jun Aruga <jaruga(a)redhat.com> - 0.0.0-1.git29b9110
+- Initial package
diff --git a/sources b/sources
new file mode 100644
index 0000000..cb3fa04
--- /dev/null
+++ b/sources
@@ -0,0 +1,2 @@
+SHA512 (29b911059dd06bc1e4c30d8922871a4b239279e3.tar.gz) =
b6a8ffa0f7e6b7ed8d203ef42faa8a74dbcf328c0b2f4b4d95537771f97ed20014e814313e4c3ad58eedbc139c16f68bdc7fb8b5114020fe7eb5d6968a027b21
+SHA512 (da8f73412998e4f1adf1100dc187533a51af77fd.tar.gz) =
cd08c1291a73487f15fdba7bf8675fea9177f0ec9766900f65efb5f00c662532a16499447e9087d304de34ff9138f47d04ebf18713f5aa8aacede22c5e23b98b