6d68e9
%global lldb_version 15.0.7
35589e
#global rc_ver 2
20ce8a
%global lldb_srcdir %{name}-%{lldb_version}%{?rc_ver:rc%{rc_ver}}.src
056a81
6d68e9
%ifarch ppc64le
6d68e9
# Too many threads on some systems causes OOM errors.
6d68e9
%global _smp_mflags -j8
6d68e9
%endif
6d68e9
056a81
Name:		lldb
20ce8a
Version:	%{lldb_version}%{?rc_ver:~rc%{rc_ver}}
2b673e
Release:	1%{?dist}
056a81
Summary:	Next generation high-performance debugger
056a81
056a81
License:	NCSA
056a81
URL:		http://lldb.llvm.org/
20ce8a
Source0:	https://github.com/llvm/llvm-project/releases/download/llvmorg-%{lldb_version}%{?rc_ver:-rc%{rc_ver}}/%{lldb_srcdir}.tar.xz
20ce8a
Source1:	https://github.com/llvm/llvm-project/releases/download/llvmorg-%{lldb_version}%{?rc_ver:-rc%{rc_ver}}/%{lldb_srcdir}.tar.xz.sig
6d68e9
Source2:	release-keys.asc
056a81
81723f
BuildRequires:	gcc
81723f
BuildRequires:	gcc-c++
056a81
BuildRequires:	cmake
81723f
BuildRequires:	ninja-build
f228a4
BuildRequires:	llvm-devel = %{version}
98e1e9
BuildRequires:	llvm-test = %{version}
f228a4
BuildRequires:	clang-devel = %{version}
f228a4
BuildRequires:	ncurses-devel
f228a4
BuildRequires:	swig
f228a4
BuildRequires:	llvm-static = %{version}
f228a4
BuildRequires:	libffi-devel
f228a4
BuildRequires:	zlib-devel
f228a4
BuildRequires:	libxml2-devel
f228a4
BuildRequires:	libedit-devel
f228a4
BuildRequires:	python3-lit
81723f
BuildRequires:	multilib-rpm-config
056a81
f228a4
Requires:	python3-lldb
056a81
35589e
# There is a problem with the debug info generated by the
35589e
# GCC version we ship in RHEL 8. It somehow makes it very
35589e
# hard for lldb to inspect std::vector types.
35589e
# Disable the pretty-printer for now, since otherwise
35589e
# such vectors look empty to the developer even though
35589e
# they aren't.
35589e
# See https://bugzilla.redhat.com/show_bug.cgi?id=2082508
35589e
Patch001:	disable-std-vector-prettyprinter.patch
35589e
35589e
# For origin certification
35589e
BuildRequires:	gnupg2
2b673e
056a81
%description
056a81
LLDB is a next generation, high-performance debugger. It is built as a set
056a81
of reusable components which highly leverage existing libraries in the
056a81
larger LLVM Project, such as the Clang expression parser and LLVM
056a81
disassembler.
056a81
056a81
%package devel
056a81
Summary:	Development header files for LLDB
056a81
Requires:	%{name}%{?_isa} = %{version}-%{release}
056a81
056a81
%description devel
056a81
The package contains header files for the LLDB debugger.
056a81
056a81
%package -n python3-lldb
f228a4
%{?python_provide:%python_provide python3-lldb}
056a81
Summary:	Python module for LLDB
056a81
BuildRequires:	python3-devel
2b673e
BuildRequires:	python3-setuptools
056a81
Requires:	python3-six
81723f
Requires:	%{name}%{?_isa} = %{version}-%{release}
056a81
056a81
%description -n python3-lldb
056a81
The package contains the LLDB Python module.
056a81
056a81
%prep
35589e
%{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}'
f7465c
%autosetup -n %{lldb_srcdir} -p2
056a81
056a81
%build
056a81
2b673e
mkdir -p %{_vpath_builddir}
2b673e
cd %{_vpath_builddir}
056a81
056a81
CFLAGS="%{optflags} -Wno-error=format-security"
056a81
CXXFLAGS="%{optflags} -Wno-error=format-security"
056a81
81723f
%cmake .. -GNinja \
056a81
	-DCMAKE_BUILD_TYPE=RelWithDebInfo \
81723f
	-DCMAKE_SKIP_RPATH:BOOL=ON \
056a81
	-DLLVM_LINK_LLVM_DYLIB:BOOL=ON \
f228a4
	-DLLVM_CONFIG:FILEPATH=/usr/bin/llvm-config-%{__isa_bits} \
056a81
	\
056a81
	-DLLDB_DISABLE_CURSES:BOOL=OFF \
056a81
	-DLLDB_DISABLE_LIBEDIT:BOOL=OFF \
056a81
	-DLLDB_DISABLE_PYTHON:BOOL=OFF \
056a81
%if 0%{?__isa_bits} == 64
f228a4
	-DLLVM_LIBDIR_SUFFIX=64 \
056a81
%else
f228a4
	-DLLVM_LIBDIR_SUFFIX= \
056a81
%endif
056a81
	\
f228a4
	-DPYTHON_EXECUTABLE:STRING=%{__python3} \
f228a4
	-DPYTHON_VERSION_MAJOR:STRING=$(%{__python3} -c "import sys; print(sys.version_info.major)") \
f228a4
	-DPYTHON_VERSION_MINOR:STRING=$(%{__python3} -c "import sys; print(sys.version_info.minor)") \
f228a4
	-DLLVM_EXTERNAL_LIT=%{_bindir}/lit \
f7465c
	-DCLANG_LINK_CLANG_DYLIB=ON \
f228a4
	-DLLVM_LIT_ARGS="-sv \
f228a4
	--path %{_libdir}/llvm" \
056a81
2b673e
%cmake_build
056a81
056a81
%install
2b673e
cd %{_vpath_builddir}
2b673e
%cmake_install
056a81
056a81
%multilib_fix_c_header --file %{_includedir}/lldb/Host/Config.h
056a81
056a81
# remove static libraries
056a81
rm -fv %{buildroot}%{_libdir}/*.a
056a81
056a81
# python: fix binary libraries location
056a81
liblldb=$(basename $(readlink -e %{buildroot}%{_libdir}/liblldb.so))
056a81
ln -vsf "../../../${liblldb}" %{buildroot}%{python3_sitearch}/lldb/_lldb.so
f228a4
%py_byte_compile %{__python3} %{buildroot}%{python3_sitearch}/lldb
056a81
056a81
# remove bundled six.py
056a81
rm -f %{buildroot}%{python3_sitearch}/six.*
056a81
f228a4
%ldconfig_scriptlets
056a81
81723f
%check
81723f
81723f
056a81
%files
81723f
%license LICENSE.TXT
056a81
%{_bindir}/lldb*
056a81
%{_libdir}/liblldb.so.*
056a81
%{_libdir}/liblldbIntelFeatures.so.*
056a81
056a81
%files devel
056a81
%{_includedir}/lldb
056a81
%{_libdir}/*.so
056a81
056a81
%files -n python3-lldb
056a81
%{python3_sitearch}/lldb
056a81
056a81
%changelog
6d68e9
* Thu Jan 19 2023 Tom Stellard <tstellar@redhat.com> - 15.0.7-1
6d68e9
- Update to LLVM 15.0.7
6d68e9
6d68e9
* Tue Sep 06 2022 Nikita Popov <npopov@redhat.com> - 15.0.0-1
6d68e9
- Update to LLVM 15.0.0
6d68e9
35589e
* Tue Jun 28 2022 Tom Stellard <tstellar@redhat.com> - 14.0.6-1
35589e
- 14.0.6 Release
35589e
35589e
* Wed Jun 08 2022 Timm Bäder <tbaeder@redhat.com> - 14.0.0-2
35589e
- Disable libstdc++ std::vector prettyprinter
35589e
35589e
* Thu Apr 07 2022 Timm Bäder <tbaeder@redhat.com> - 14.0.0-1
35589e
- Update to 14.0.0
35589e
20ce8a
* Thu Feb 03 2022 Tom Stellard <tstellar@redhat.com> - 13.0.1-1
20ce8a
- 13.0.1 Release
20ce8a
20ce8a
* Fri Oct 15 2021 Tom Stellard <tstellar@redhat.com> - 13.0.0-1
20ce8a
- 13.0.0 Release
20ce8a
2b673e
* Fri Jul 16 2021 sguelton@redhat.com - 12.0.1-1
2b673e
- 12.0.1
2b673e
2b673e
* Thu May 6 2021 sguelton@redhat.com - 12.0.0-1
2b673e
- 12.0.0
f50040
81723f
* Thu Oct 29 2020 sguelton@redhat.com - 11.0.0-1
81723f
- 11.0.0 final
81723f
81723f
* Fri Sep 18 2020 sguelton@redhat.com - 11.0.0-0.1.rc2
81723f
- 11.0.0-rc2 Release
81723f
f7465c
* Fri Jul 24 2020 sguelton@redhat.com - 10.0.1-1
f7465c
- 10.0.1
f7465c
f7465c
* Mon Jun 15 2020 sguelton@redhat.com - 10.0.0-2
f7465c
- Fix multilib integration, see rhbz#1841073
f7465c
f7465c
* Thu Apr 9 2020 sguelton@redhat.com - 10.0.0-1
f7465c
- 10.0.0 final
f7465c
98e1e9
* Sat Dec 21 2019 Tom Stellard <tstellar@redhat.com> - 9.0.1-1
98e1e9
- 9.0.1 Release
98e1e9
98e1e9
* Fri Oct 04 2019 Tom Stellard <tstellar@redhat.com> - 9.0.0-2
98e1e9
- Disable readline module to work-around segafult
98e1e9
98e1e9
* Fri Sep 27 2019 Tom Stellard <tstellar@redhat.com> - 9.0.0-1
98e1e9
- 9.0.0 Release
98e1e9
f228a4
* Thu Aug 1 2019 sguelton@redhat.com - 8.0.1-1
f228a4
- 8.0.1 release
f228a4
f228a4
* Thu Jun 13 2019 sguelton@redhat.com - 8.0.1-0.1.rc2
f228a4
- 8.0.1rc2 Release
f228a4
f228a4
* Tue Apr 16 2019 sguelton@redhat.com - 8.0.0-1
f228a4
- 8.0.0 Release
f228a4
056a81
* Mon Dec 17 2018 Tom Stellard <tstellar@redhat.com> - 7.0.1-2
056a81
- Fix multilib conflict
056a81
056a81
* Fri Dec 14 2018 Tom Stellard <tstellar@redhat.com> - 7.0.1-1
056a81
- 7.0.1 Release
056a81
056a81
* Mon Dec 10 2018 Tom Stellard <tstellar@redhat.com> - 7.0.1-0.1.rc3
056a81
- 7.0.1-rc3 Release
056a81
056a81
* Thu Dec 06 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-7
056a81
- Re-enable python module for real
056a81
056a81
* Wed Oct 03 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-6
056a81
- Re-enable python module and fix build with python3
056a81
056a81
* Wed Oct 03 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-5
056a81
- Disable python module
056a81
056a81
* Mon Oct 01 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-4
056a81
- Drop scl macros
056a81
056a81
* Tue Aug 28 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-3
056a81
- Re-enable python module
056a81
056a81
* Tue Aug 07 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-2
056a81
- Install ld.so.conf file in the root filesystem
056a81
056a81
* Wed Jul 11 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-1
056a81
- 6.0.1 Release
056a81
056a81
* Thu Jan 25 2018 Tom Stellard <tstellar@redhat.com> - 5.0.1-3
056a81
- Drop explicit dependencies for llvm-libs and clang-libs
056a81
056a81
* Tue Jan 16 2018 Tom Stellard <tstellar@redhat.com> - 5.0.1-2
056a81
- Rebuid for i686
056a81
056a81
* Thu Jan 11 2018 Tom Stellard <tstellar@redhat.com> - 5.0.1-1
056a81
- 5.0.1 Release
056a81
056a81
* Wed Aug 16 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-4
056a81
-  Fix crash when loading Fedora debuginfo
056a81
   Resloves: #1479529
056a81
056a81
* Mon Jul 31 2017 Jan Kratochvil <jan.kratochvil@redhat.com> - 4.0.1-3
056a81
- Backport lldb r303907
056a81
  Resolves: #1356140
056a81
056a81
* Thu Jun 22 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-2
056a81
- Fix requires for python-lldb
056a81
056a81
* Wed Jun 21 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-1
056a81
- Build for llvm-toolset-7 rename
056a81
056a81
* Wed Jun 07 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-3
056a81
- Build for llvm-toolset-7 rename
056a81
056a81
* Thu May 18 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-2
056a81
- Fix Requires
056a81
056a81
* Fri Mar 24 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-1
056a81
- lldb 4.0.0
056a81
056a81
* Tue Mar 21 2017 Tom Stellard <tstellar@redhat.com> - 3.9.1-4
056a81
- Add explicit Requires for llvm-libs and clang-libs
056a81
056a81
* Fri Mar 17 2017 Tom Stellard <tstellar@redhat.org> - 3.9.1-3
056a81
- Adjust python sys.path so lldb can find readline.so
056a81
056a81
* Tue Mar 14 2017 Tom Stellard <tstellar@redhat.com> - 3.9.1-2
056a81
- Fix build with gcc 7
056a81
056a81
* Thu Mar 02 2017 Dave Airlie 
056a81
- lldb 3.9.1
056a81
056a81
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.9.0-4
056a81
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
056a81
056a81
* Mon Nov 14 2016 Nathaniel McCallum <npmccallum@redhat.com> - 3.9.0-3
056a81
- Disable libedit support until upstream fixes it (#1356140)
056a81
056a81
* Wed Nov  2 2016 Peter Robinson <pbrobinson@fedoraproject.org> 3.9.0-2
056a81
- Set upstream supported architectures in an ExclusiveArch
056a81
056a81
* Wed Oct 26 2016 Dave Airlie <airlied@redhat.com> - 3.9.0-1
056a81
- lldb 3.9.0
056a81
- fixup some issues with MIUtilParse by removing it
056a81
- build with -fno-rtti
056a81
056a81
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.8.0-2
056a81
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
056a81
056a81
* Thu Mar 10 2016 Dave Airlie <airlied@redhat.com> 3.8.0-1
056a81
- lldb 3.8.0
056a81
056a81
* Thu Mar 03 2016 Dave Airlie <airlied@redhat.com> 3.8.0-0.3
056a81
- lldb 3.8.0 rc3
056a81
056a81
* Wed Feb 24 2016 Dave Airlie <airlied@redhat.com> - 3.8.0-0.2
056a81
- dynamically link to llvm
056a81
056a81
* Thu Feb 18 2016 Dave Airlie <airlied@redhat.com> - 3.8.0-0.1
056a81
- lldb 3.8.0 rc2
056a81
056a81
* Sun Feb 14 2016 Dave Airlie <airlied@redhat.com> 3.7.1-3
056a81
- rebuild lldb against latest llvm
056a81
056a81
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.7.1-2
056a81
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
056a81
056a81
* Tue Oct 06 2015 Jan Vcelak <jvcelak@fedoraproject.org> 3.7.0-100
056a81
- initial version using cmake build system