Accepting request 843269 from home:aaronpuchert:llvm-next

- Update to version 11.0.0.
  * For details, see the release notes:
    - https://releases.llvm.org/11.0.0/docs/ReleaseNotes.html
    - https://releases.llvm.org/11.0.0/tools/clang/docs/ReleaseNotes.html
    - https://releases.llvm.org/11.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html
    - https://releases.llvm.org/11.0.0/projects/libcxx/docs/ReleaseNotes.html
    - https://releases.llvm.org/11.0.0/tools/lld/docs/ReleaseNotes.html
- Let the metapackages obsolete older versions. (boo#1175983)
- Introduce additional metapackages llvm-opt-viewer, llvm-polly and
  llvm-polly-devel so that we can obsolete through them as well.

OBS-URL: https://build.opensuse.org/request/show/843269
OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm?expand=0&rev=539
This commit is contained in:
Aaron Puchert 2020-10-25 12:01:52 +00:00 committed by Git OBS Bridge
parent 09a1b2209e
commit 4703633065
2 changed files with 95 additions and 2 deletions

View File

@ -1,3 +1,17 @@
-------------------------------------------------------------------
Mon Oct 19 21:57:00 UTC 2020 - Aaron Puchert <aaronpuchert@alice-dsl.net>
- Update to version 11.0.0.
* For details, see the release notes:
- https://releases.llvm.org/11.0.0/docs/ReleaseNotes.html
- https://releases.llvm.org/11.0.0/tools/clang/docs/ReleaseNotes.html
- https://releases.llvm.org/11.0.0/tools/clang/tools/extra/docs/ReleaseNotes.html
- https://releases.llvm.org/11.0.0/projects/libcxx/docs/ReleaseNotes.html
- https://releases.llvm.org/11.0.0/tools/lld/docs/ReleaseNotes.html
- Let the metapackages obsolete older versions. (boo#1175983)
- Introduce additional metapackages llvm-opt-viewer, llvm-polly and
llvm-polly-devel so that we can obsolete through them as well.
------------------------------------------------------------------- -------------------------------------------------------------------
Wed Jul 22 21:54:01 UTC 2020 - Aaron Puchert <aaronpuchert@alice-dsl.net> Wed Jul 22 21:54:01 UTC 2020 - Aaron Puchert <aaronpuchert@alice-dsl.net>

View File

@ -16,7 +16,7 @@
# #
%define _sonum 10 %define _sonum 11
%ifarch x86_64 %ifarch x86_64
%define has_lldb 1 %define has_lldb 1
# python3-lldb%{_sonum} is only built with these distributions (see llvm%{_sonum} package) # python3-lldb%{_sonum} is only built with these distributions (see llvm%{_sonum} package)
@ -24,8 +24,17 @@
%define has_lldb_python 1 %define has_lldb_python 1
%endif %endif
%endif %endif
# obsolete_llvm_versioned() prefix postfix
# Obsolete packages <prefix>X or <prefix>X-<postfix> with X being a set of older versions.
%define obsolete_llvm_versioned() \
Obsoletes: %{1}10%{?2:-%{2}} \
Obsoletes: %{1}7%{?2:-%{2}} \
Obsoletes: %{1}8%{?2:-%{2}} \
Obsoletes: %{1}9%{?2:-%{2}}
Name: llvm Name: llvm
Version: 10.0.1 Version: 11.0.0
Release: 0 Release: 0
Summary: Low Level Virtual Machine Summary: Low Level Virtual Machine
License: Apache-2.0 WITH LLVM-exception OR NCSA License: Apache-2.0 WITH LLVM-exception OR NCSA
@ -37,9 +46,12 @@ Source101: baselibs.conf
# Avoid multiple providers error # Avoid multiple providers error
BuildRequires: clang%{_sonum} = %{version} BuildRequires: clang%{_sonum} = %{version}
BuildRequires: clang%{_sonum}-devel = %{version} BuildRequires: clang%{_sonum}-devel = %{version}
BuildRequires: clang%{_sonum}-doc = %{version}
BuildRequires: lld%{_sonum} = %{version}
BuildRequires: llvm%{_sonum} = %{version} BuildRequires: llvm%{_sonum} = %{version}
BuildRequires: llvm%{_sonum}-LTO-devel = %{version} BuildRequires: llvm%{_sonum}-LTO-devel = %{version}
BuildRequires: llvm%{_sonum}-devel = %{version} BuildRequires: llvm%{_sonum}-devel = %{version}
BuildRequires: llvm%{_sonum}-doc = %{version}
BuildRequires: llvm%{_sonum}-gold = %{version} BuildRequires: llvm%{_sonum}-gold = %{version}
BuildRequires: llvm%{_sonum}-vim-plugins = %{version} BuildRequires: llvm%{_sonum}-vim-plugins = %{version}
Requires: llvm%{_sonum} = %{version} Requires: llvm%{_sonum} = %{version}
@ -71,6 +83,7 @@ Summary: Header Files for LLVM
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
Requires: llvm%{_sonum}-devel = %{version} Requires: llvm%{_sonum}-devel = %{version}
Requires: llvm-gold Requires: llvm-gold
%obsolete_llvm_versioned llvm devel
%description devel %description devel
This package contains library and header files needed to develop This package contains library and header files needed to develop
@ -85,6 +98,7 @@ Summary: Documentation for LLVM
Group: Documentation/HTML Group: Documentation/HTML
Requires: %{name} = %{version} Requires: %{name} = %{version}
Requires: llvm%{_sonum}-doc = %{version} Requires: llvm%{_sonum}-doc = %{version}
%obsolete_llvm_versioned llvm doc
%description doc %description doc
This package contains documentation for the LLVM infrastructure. This package contains documentation for the LLVM infrastructure.
@ -118,6 +132,7 @@ Provides: llvm-clang-devel = %{version}
Obsoletes: llvm-clang-devel < %{version} Obsoletes: llvm-clang-devel < %{version}
Provides: clang-devel-static = %{version} Provides: clang-devel-static = %{version}
Obsoletes: clang-devel-static < %{version} Obsoletes: clang-devel-static < %{version}
%obsolete_llvm_versioned clang devel
%description -n clang-devel %description -n clang-devel
This package contains the clang (C language) frontend for LLVM. This package contains the clang (C language) frontend for LLVM.
@ -132,6 +147,7 @@ Summary: Documentation for Clang
Group: Documentation/HTML Group: Documentation/HTML
Requires: clang = %{version} Requires: clang = %{version}
Requires: clang%{_sonum}-doc = %{version} Requires: clang%{_sonum}-doc = %{version}
%obsolete_llvm_versioned clang doc
%description -n clang-doc %description -n clang-doc
This package contains documentation for the Clang compiler. This package contains documentation for the Clang compiler.
@ -144,6 +160,7 @@ don't require a specific Clang version should depend on this.
Summary: Link-time optimizer for LLVM (devel package) Summary: Link-time optimizer for LLVM (devel package)
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
Requires: llvm%{_sonum}-LTO-devel = %{version} Requires: llvm%{_sonum}-LTO-devel = %{version}
%obsolete_llvm_versioned llvm LTO-devel
%description LTO-devel %description LTO-devel
This package contains the link-time optimizer for LLVM. This package contains the link-time optimizer for LLVM.
@ -157,6 +174,7 @@ don't require a specific LLVM version should depend on this.
Summary: Gold linker plugin for LLVM Summary: Gold linker plugin for LLVM
Group: Development/Tools/Building Group: Development/Tools/Building
Requires: llvm%{_sonum}-gold = %{version} Requires: llvm%{_sonum}-gold = %{version}
%obsolete_llvm_versioned llvm gold
%description gold %description gold
This package contains the Gold linker plugin for LLVM. This package contains the Gold linker plugin for LLVM.
@ -170,6 +188,7 @@ Summary: Vim plugins for LLVM
Group: Productivity/Text/Editors Group: Productivity/Text/Editors
Requires: llvm%{_sonum}-vim-plugins = %{version} Requires: llvm%{_sonum}-vim-plugins = %{version}
Supplements: packageand(llvm:vim) Supplements: packageand(llvm:vim)
%obsolete_llvm_versioned llvm vim-plugins
BuildArch: noarch BuildArch: noarch
%description vim-plugins %description vim-plugins
@ -179,6 +198,22 @@ This package is a dummy package that depends on the version of
llvm-vim-plugins that openSUSE currently supports. Packages that llvm-vim-plugins that openSUSE currently supports. Packages that
don't require a specific LLVM version should depend on this. don't require a specific LLVM version should depend on this.
%package opt-viewer
Summary: Tools for visualising the LLVM optimization records
Group: Development/Languages/Other
Requires: llvm%{_sonum}-opt-viewer = %{version}
%obsolete_llvm_versioned llvm opt-viewer
BuildArch: noarch
%description opt-viewer
Set of tools for visualising the LLVM optimization records generated
with -fsave-optimization-record. Used for compiler-assisted performance
analysis.
This package is a dummy package that depends on the version of
llvm-opt-viewer that openSUSE currently supports. Packages that
don't require a specific LLVM version should depend on this.
%package -n lldb %package -n lldb
Summary: Software debugger built using LLVM libraries Summary: Software debugger built using LLVM libraries
Group: Development/Tools/Debuggers Group: Development/Tools/Debuggers
@ -200,6 +235,7 @@ don't require a specific LLDB version should depend on this.
Summary: Development files for LLDB Summary: Development files for LLDB
Group: Development/Libraries/C and C++ Group: Development/Libraries/C and C++
Requires: lldb%{_sonum}-devel = %{version} Requires: lldb%{_sonum}-devel = %{version}
%obsolete_llvm_versioned lldb devel
%description -n lldb-devel %description -n lldb-devel
This package contains the development files for LLDB. This package contains the development files for LLDB.
@ -212,6 +248,7 @@ don't require a specific LLDB version should depend on this.
Summary: Python bindings for liblldb Summary: Python bindings for liblldb
Group: Development/Libraries/Python Group: Development/Libraries/Python
Requires: python3-lldb%{_sonum} = %{version} Requires: python3-lldb%{_sonum} = %{version}
%obsolete_llvm_versioned python3-lldb
%description -n python3-lldb %description -n python3-lldb
This package contains the Python bindings to clang (C language) frontend for LLVM. This package contains the Python bindings to clang (C language) frontend for LLVM.
@ -231,6 +268,39 @@ LLD is a linker from the LLVM project. That is a drop-in replacement for
system linkers and runs much faster than them. It also provides features that system linkers and runs much faster than them. It also provides features that
are useful for toolchain developers. are useful for toolchain developers.
%package polly
Summary: LLVM Framework for High-Level Loop and Data-Locality Optimizations
Group: Development/Languages/Other
URL: https://polly.llvm.org/
Requires: llvm%{_sonum}-polly = %{version}
%obsolete_llvm_versioned llvm polly
%description polly
Polly is a high-level loop and data-locality optimizer and optimization
infrastructure for LLVM. It uses an abstract mathematical representation based
on integer polyhedra to analyze and optimize the memory access pattern of a
program. Polly can currently perform classical loop transformations, especially
tiling and loop fusion to improve data-locality. It can also exploit OpenMP
level parallelism and expose SIMDization opportunities.
This package is a dummy package that depends on the version of
llvm-polly that openSUSE currently supports. Packages that
don't require a specific LLVM version should depend on this.
%package polly-devel
Summary: Development files for Polly
Group: Development/Libraries/C and C++
Requires: llvm%{_sonum}-polly-devel = %{version}
Requires: llvm-polly = %{version}
%obsolete_llvm_versioned llvm polly-devel
%description polly-devel
This package contains the development files for Polly.
This package is a dummy package that depends on the version of
llvm-polly-devel that openSUSE currently supports. Packages that
don't require a specific LLVM version should depend on this.
%prep %prep
# Not needed # Not needed
@ -261,6 +331,9 @@ echo "This is a dummy package to provide a dependency on the system compiler." >
%files vim-plugins %files vim-plugins
%doc README %doc README
%files opt-viewer
%doc README
%if 0%{?has_lldb} %if 0%{?has_lldb}
%files -n lldb %files -n lldb
%doc README %doc README
@ -279,4 +352,10 @@ echo "This is a dummy package to provide a dependency on the system compiler." >
%files -n lld %files -n lld
%doc README %doc README
%files polly
%doc README
%files polly-devel
%doc README
%changelog %changelog