From 7222536a904280be1fdd559db1bac107d2624799 Mon Sep 17 00:00:00 2001 From: serge-sans-paille Date: Mar 21 2020 09:10:27 +0000 Subject: Initial version. --- diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f6b7452 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +/hans-gpg-key.asc +/polly-10.0.0rc5.src.tar.xz.sig +/polly-10.0.0rc5.src.tar.xz diff --git a/polly-subproject-extension.patch b/polly-subproject-extension.patch new file mode 100644 index 0000000..0aa77d4 --- /dev/null +++ b/polly-subproject-extension.patch @@ -0,0 +1,11 @@ +diff -ru polly-10.0.0rc4.src.orig/lib/CMakeLists.txt polly-10.0.0rc4.src/lib/CMakeLists.txt +--- polly-10.0.0rc4.src.orig/lib/CMakeLists.txt 2020-03-16 21:18:29.768913840 +0000 ++++ polly-10.0.0rc4.src/lib/CMakeLists.txt 2020-03-16 21:18:38.569999300 +0000 +@@ -25,7 +25,6 @@ + # the sources them to be recompiled for each of them. + add_llvm_pass_plugin(Polly + NO_MODULE +- SUBPROJECT Polly + Analysis/DependenceInfo.cpp + Analysis/PolyhedralInfo.cpp + Analysis/ScopDetection.cpp diff --git a/polly.spec b/polly.spec new file mode 100644 index 0000000..92f5680 --- /dev/null +++ b/polly.spec @@ -0,0 +1,101 @@ +%global rc_ver 5 +%global baserelease 0.1 +%global polly_srcdir polly-%{version}%{?rc_ver:rc%{rc_ver}}.src + +Name: polly +Version: 10.0.0 +Release: %{baserelease}%{?rc_ver:.rc%{rc_ver}}%{?dist} +Summary: LLVM Framework for High-Level Loop and Data-Locality Optimizations + +License: NCSA +URL: http://polly.llvm.org +Source0: http://%{?rc_ver:pre}releases.llvm.org/%{version}/%{?rc_ver:rc%{rc_ver}}/%{polly_srcdir}.tar.xz +Source1: https://%{?rc_ver:pre}releases.llvm.org/%{version}/%{?rc_ver:rc%{rc_ver}}/%{polly_srcdir}.tar.xz.sig +Source2: https://prereleases.llvm.org/%{version}/hans-gpg-key.asc + +Patch0: polly-subproject-extension.patch + +BuildRequires: cmake +BuildRequires: llvm-devel = %{version} +BuildRequires: llvm-test = %{version} +BuildRequires: clang-devel = %{version} +BuildRequires: python3-lit +BuildRequires: python3-sphinx + +%description +Polly is a high-level loop and data-locality optimizer and optimization +infrastructure for LLVM. It uses an abstract mathematical representation based +on integer polyhedron to analyze and optimize the memory access pattern of a +program. + +%package devel +Summary: Polly header files +Requires: %{name} = %{version}-%{release} + +%description devel +Polly header files. + +%package doc +Summary: Documentation for Polly +BuildArch: noarch +Requires: %{name} = %{version}-%{release} + +%description doc +Documentation for the Polly optimizer. + +%prep +%autosetup -n polly-%{version}%{?rc_ver:rc%{rc_ver}}.src -p1 + +%build +mkdir -p _build +cd _build + +%cmake .. \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DLLVM_LINK_LLVM_DYLIB:BOOL=ON \ + -DLLVM_EXTERNAL_LIT=%{_bindir}/lit \ + -DCMAKE_PREFIX_PATH=%{_libdir}/cmake/llvm/ \ +\ + -DLLVM_ENABLE_SPHINX:BOOL=ON \ + -DSPHINX_WARNINGS_AS_ERRORS=OFF \ + -DSPHINX_EXECUTABLE=%{_bindir}/sphinx-build-3 \ +\ +%if 0%{?__isa_bits} == 64 + -DLLVM_LIBDIR_SUFFIX=64 +%else + -DLLVM_LIBDIR_SUFFIX= +%endif + + + +%make_build +%{__make} docs-polly-html + + +%install +%make_install -C _build +install -d %{buildroot}%{_pkgdocdir}/html +cp -r _build/docs/html/* %{buildroot}%{_pkgdocdir}/html/ + +%check +%{__make} check-polly -C _build + + +%files +%{_libdir}/LLVMPolly.so +%{_libdir}/libPolly.so.* +%{_libdir}/libPollyISL.so +%{_libdir}/libPollyPPCG.so + +%files devel +%{_libdir}/libPolly.so +%{_includedir}/polly +%{_libdir}/cmake/polly + +%files doc +%doc %{_pkgdocdir}/html + +%changelog +* Sat Mar 21 2020 sguelton@redhat.com - 10.0.0-0.1.rc5 +- Initial version. + diff --git a/sources b/sources new file mode 100644 index 0000000..51d230d --- /dev/null +++ b/sources @@ -0,0 +1,3 @@ +SHA512 (hans-gpg-key.asc) = dc481fe1fe8ffcf5f7853b346739e4c9f7f2447e6e2752447babb520240d769559e767d732b7943dfed4f971d17cccefd7a00cb4e0a9d39c5215859226998519 +SHA512 (polly-10.0.0rc5.src.tar.xz.sig) = 29b1198517c32ba278f727e23680f0fb873d754663000cd60b1c464277c3e89065392d3a2058a198a517f2c94ba67037432bde77f77be21c3c5a4acb65b943c1 +SHA512 (polly-10.0.0rc5.src.tar.xz) = b8e20eebf22277c0c955174a43dc83de35113485ed13c7dc99dfcdfc02d80f90b6eecec73e4ad57a3462d1551a6c6a197669135590f6f4a36699d8a690ec30e4