]> git.pld-linux.org Git - packages/highway.git/commitdiff
- updated to 0.16.0 auto/th/highway-0.16.0-1
authorJakub Bogusz <qboosh@pld-linux.org>
Sun, 10 Apr 2022 19:37:03 +0000 (21:37 +0200)
committerJakub Bogusz <qboosh@pld-linux.org>
Sun, 10 Apr 2022 19:37:03 +0000 (21:37 +0200)
- updated rdtscp patch

highway-rdtscp.patch
highway.spec

index 3b21f4b75cbe2d1e2925fd9d586f64eac3d3f695..ddb9cabb370de71918d414f27b3e39bdd9f809a0 100644 (file)
@@ -1,53 +1,9 @@
-From 4a57d62e1d87d8c80bbea34fa0e2d27bc8f6b885 Mon Sep 17 00:00:00 2001
-From: Jan Wassenberg <janwas@google.com>
-Date: Wed, 1 Sep 2021 02:49:11 -0700
-Subject: [PATCH] skip nanobenchmarks if rdtscp is not supported. Refs
- https://github.com/libjxl/libjxl/issues/408, thanks @error256
-
-PiperOrigin-RevId: 394187316
----
- hwy/nanobenchmark.cc | 15 +++++++++++++++
- 1 file changed, 15 insertions(+)
-
-diff --git a/hwy/nanobenchmark.cc b/hwy/nanobenchmark.cc
-index 8e00cca..91c5713 100644
---- a/hwy/nanobenchmark.cc
-+++ b/hwy/nanobenchmark.cc
-@@ -353,6 +353,12 @@ void Cpuid(const uint32_t level, const uint32_t count,
- #endif
+--- highway-0.16.0/hwy/nanobenchmark.cc.orig   2022-04-09 18:30:28.550190500 +0200
++++ highway-0.16.0/hwy/nanobenchmark.cc        2022-04-09 18:31:11.596623964 +0200
+@@ -439,6 +439,12 @@ HWY_DLLEXPORT double Now() {
  }
  
-+bool HasRDTSCP() {
-+  uint32_t abcd[4];
-+  Cpuid(0x80000001U, 0, abcd);         // Extended feature flags
-+  return (abcd[3] & (1u << 27)) != 0;  // RDTSCP
-+}
-+
- std::string BrandString() {
-   char brand_string[49];
-   std::array<uint32_t, 4> abcd;
-@@ -647,6 +653,15 @@ int Unpredictable1() { return timer::Start() != ~0ULL; }
- size_t Measure(const Func func, const uint8_t* arg, const FuncInput* inputs,
-                const size_t num_inputs, Result* results, const Params& p) {
-   NANOBENCHMARK_CHECK(num_inputs != 0);
-+
-+#if HWY_ARCH_X86
-+  if (!platform::HasRDTSCP()) {
-+    fprintf(stderr, "CPU '%s' does not support RDTSCP, skipping benchmark.\n",
-+            platform::BrandString().c_str());
-+    return 0;
-+  }
-+#endif
-+
-   const InputVec& unique = UniqueInputs(inputs, num_inputs);
-   const size_t num_skip = NumSkip(func, arg, unique, p);  // never 0
---- highway-0.14.2/hwy/nanobenchmark.cc.orig   2021-10-06 06:25:11.981599545 +0200
-+++ highway-0.14.2/hwy/nanobenchmark.cc        2021-10-06 21:31:31.524075329 +0200
-@@ -431,6 +431,12 @@ double Now() {
- }
- uint64_t TimerResolution() {
+ HWY_DLLEXPORT uint64_t TimerResolution() {
 +#if HWY_ARCH_X86
 +  /* TimerResolution() is used to initialize static variable, used in Measure() function */
 +  if (!platform::HasRDTSCP())
index dd0ee5c03f036f4dac61052ada6a41d1f7c71a1b..ead09d00d1864be7f664e3229f8786e346a443ed 100644 (file)
@@ -5,14 +5,14 @@
 Summary:       Efficient and performance-portable SIMD
 Summary(pl.UTF-8):     Wydajne i przenośne operacje SIMD
 Name:          highway
-Version:       0.14.2
-Release:       2
+Version:       0.16.0
+Release:       1
 License:       Apache v2.0
 Group:         Libraries
 #Source0Download: https://github.com/google/highway/releases
 Source0:       https://github.com/google/highway/archive/%{version}/%{name}-%{version}.tar.gz
-# Source0-md5: 4821b1064a35baa24ea36994c0d58c41
-# https://github.com/google/highway/commit/4a57d62e1d87d8c80bbea34fa0e2d27bc8f6b885.patch
+# Source0-md5: 2d95ad96b3fda6cf7d918e801e89516e
+# related to https://github.com/google/highway/commit/4a57d62e1d87d8c80bbea34fa0e2d27bc8f6b885.patch
 Patch0:                %{name}-rdtscp.patch
 URL:           https://github.com/google/highway
 BuildRequires: cmake >= 3.10
@@ -22,9 +22,6 @@ BuildRequires:        rpm-build >= 4.6
 BuildRequires: rpmbuild(macros) >= 1.605
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-# only static libraries included
-%define                _enable_debug_packages  0
-
 %description
 Highway is a C++ library for SIMD (Single Instruction, Multiple Data),
 i.e. applying the same operation to multiple 'lanes' using a single
@@ -36,15 +33,42 @@ Multiple Data), czyli wykonywania tej samej operacji na wielu "pasach"
 przy użyciu pojedynczej instrukcji procesora.
 
 %package devel
-Summary:       Development files for Highway library
-Summary(pl.UTF-8):     Pliki programistyczne biblioteki Highway
+Summary:       Header files for Highway library
+Summary(pl.UTF-8):     Pliki nagłówkowe biblioteki Highway
 Group:         Development/Libraries
+Requires:      %{name} = %{version}-%{release}
 
 %description devel
-Development files for Highway library.
+Header files for Highway library.
 
 %description devel -l pl.UTF-8
-Pliki programistyczne biblioteki Highway.
+Pliki nagłówkowe biblioteki Highway.
+
+%package test
+Summary:       Highway test helper library
+Summary(pl.UTF-8):     Biblioteka pomocnicza testów z użyciem biblioteki Highway
+Group:         Libraries
+Requires:      %{name} = %{version}-%{release}
+
+%description test
+Highway test helper library.
+
+%description test -l pl.UTF-8
+Biblioteka pomocnicza testów z użyciem biblioteki Highway.
+
+%package test-devel
+Summary:       Header files for Highway test library
+Summary(pl.UTF-8):     Pliki nagłówkowe biblioteki Highway test
+Group:         Development/Libraries
+Requires:      %{name}-devel = %{version}-%{release}
+Requires:      %{name}-test = %{version}-%{release}
+Requires:      gtest-devel
+
+%description test-devel
+Header files for Highway test library.
+
+%description test-devel -l pl.UTF-8
+Pliki nagłówkowe biblioteki Highway test.
 
 %package apidocs
 Summary:       API documentation for Highway library
@@ -81,14 +105,40 @@ rm -rf $RPM_BUILD_ROOT
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%files devel
+%post  -p /sbin/ldconfig
+%postun        -p /sbin/ldconfig
+
+%post  test -p /sbin/ldconfig
+%postun        test -p /sbin/ldconfig
+
+%files
 %defattr(644,root,root,755)
 %doc README.md
-%{_libdir}/libhwy.a
-%{_libdir}/libhwy_contrib.a
-%{_includedir}/hwy
+%attr(755,root,root) %{_libdir}/libhwy.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libhwy.so.0
+%attr(755,root,root) %{_libdir}/libhwy_contrib.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libhwy_contrib.so.0
+
+%files devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libhwy.so
+%attr(755,root,root) %{_libdir}/libhwy_contrib.so
+%dir %{_includedir}/hwy
+%{_includedir}/hwy/contrib
+%{_includedir}/hwy/ops
+%{_includedir}/hwy/*.h
 %{_pkgconfigdir}/libhwy.pc
 %{_pkgconfigdir}/libhwy-contrib.pc
+
+%files test
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libhwy_test.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libhwy_test.so.0
+
+%files test-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libhwy_test.so
+%{_includedir}/hwy/tests
 %{_pkgconfigdir}/libhwy-test.pc
 
 %if %{with apidocs}
This page took 0.307331 seconds and 4 git commands to generate.