Blame SPECS/lldb.spec

46ddc8
#%%global rc_ver 4
46ddc8
46ddc8
Name:		lldb
46ddc8
Version:	8.0.0
46ddc8
Release:	1%{?rc_ver:.rc%{rc_ver}}%{?dist}
46ddc8
Summary:	Next generation high-performance debugger
46ddc8
46ddc8
License:	NCSA
46ddc8
URL:		http://lldb.llvm.org/
46ddc8
Source0:	http://%{?rc_ver:pre}releases.llvm.org/%{version}/%{?rc_ver:rc%{rc_ver}}/%{name}-%{version}%{?rc_ver:rc%{rc_ver}}.src.tar.xz
46ddc8
46ddc8
Patch1:		python3.patch
46ddc8
46ddc8
BuildRequires:	cmake
46ddc8
BuildRequires:	llvm-devel = %{version}
46ddc8
BuildRequires:	clang-devel = %{version}
46ddc8
BuildRequires:	ncurses-devel
46ddc8
BuildRequires:	swig
46ddc8
BuildRequires:	llvm-static = %{version}
46ddc8
BuildRequires:	libffi-devel
46ddc8
BuildRequires:	zlib-devel
46ddc8
BuildRequires:	libxml2-devel
46ddc8
BuildRequires:	libedit-devel
46ddc8
BuildRequires:	python3-lit
46ddc8
BuildRequires:  multilib-rpm-config
46ddc8
46ddc8
Requires:	python3-lldb
46ddc8
46ddc8
%description
46ddc8
LLDB is a next generation, high-performance debugger. It is built as a set
46ddc8
of reusable components which highly leverage existing libraries in the
46ddc8
larger LLVM Project, such as the Clang expression parser and LLVM
46ddc8
disassembler.
46ddc8
46ddc8
%package devel
46ddc8
Summary:	Development header files for LLDB
46ddc8
Requires:	%{name}%{?_isa} = %{version}-%{release}
46ddc8
46ddc8
%description devel
46ddc8
The package contains header files for the LLDB debugger.
46ddc8
46ddc8
%package -n python3-lldb
46ddc8
%{?python_provide:%python_provide python3-lldb}
46ddc8
Summary:	Python module for LLDB
46ddc8
BuildRequires:	python3-devel
46ddc8
Requires:	python3-six
46ddc8
46ddc8
%description -n python3-lldb
46ddc8
The package contains the LLDB Python module.
46ddc8
46ddc8
%prep
46ddc8
%setup -q -n %{name}-%{version}%{?rc_ver:rc%{rc_ver}}.src
46ddc8
46ddc8
%patch1 -p1 -b .python
46ddc8
46ddc8
# HACK so that lldb can find its custom readline.so, because we move it
46ddc8
# after install.
46ddc8
sed -i -e "s~import sys~import sys\nsys.path.insert\(1, '%{python3_sitearch}/lldb'\)~g" source/Interpreter/embedded_interpreter.py
46ddc8
46ddc8
%build
46ddc8
46ddc8
mkdir -p _build
46ddc8
cd _build
46ddc8
46ddc8
# Python version detection is broken
46ddc8
LDFLAGS="%{__global_ldflags} -lpthread -ldl"
46ddc8
46ddc8
CFLAGS="%{optflags} -Wno-error=format-security"
46ddc8
CXXFLAGS="%{optflags} -Wno-error=format-security"
46ddc8
46ddc8
%cmake .. \
46ddc8
	-DCMAKE_BUILD_TYPE=RelWithDebInfo \
46ddc8
	-DLLVM_LINK_LLVM_DYLIB:BOOL=ON \
46ddc8
	-DLLVM_CONFIG:FILEPATH=/usr/bin/llvm-config-%{__isa_bits} \
46ddc8
	\
46ddc8
	-DLLDB_DISABLE_CURSES:BOOL=OFF \
46ddc8
	-DLLDB_DISABLE_LIBEDIT:BOOL=OFF \
46ddc8
	-DLLDB_DISABLE_PYTHON:BOOL=OFF \
46ddc8
%if 0%{?__isa_bits} == 64
46ddc8
	-DLLVM_LIBDIR_SUFFIX=64 \
46ddc8
%else
46ddc8
	-DLLVM_LIBDIR_SUFFIX= \
46ddc8
%endif
46ddc8
	\
46ddc8
	-DPYTHON_EXECUTABLE:STRING=%{__python3} \
46ddc8
	-DPYTHON_VERSION_MAJOR:STRING=$(%{__python3} -c "import sys; print(sys.version_info.major)") \
46ddc8
	-DPYTHON_VERSION_MINOR:STRING=$(%{__python3} -c "import sys; print(sys.version_info.minor)") \
46ddc8
	-DLLVM_EXTERNAL_LIT=%{_bindir}/lit \
46ddc8
	-DLLVM_LIT_ARGS="-sv \
46ddc8
	--path %{_libdir}/llvm" \
46ddc8
46ddc8
make %{?_smp_mflags}
46ddc8
46ddc8
%install
46ddc8
cd _build
46ddc8
make install DESTDIR=%{buildroot}
46ddc8
46ddc8
%multilib_fix_c_header --file %{_includedir}/lldb/Host/Config.h
46ddc8
46ddc8
# remove static libraries
46ddc8
rm -fv %{buildroot}%{_libdir}/*.a
46ddc8
46ddc8
# python: fix binary libraries location
46ddc8
liblldb=$(basename $(readlink -e %{buildroot}%{_libdir}/liblldb.so))
46ddc8
ln -vsf "../../../${liblldb}" %{buildroot}%{python3_sitearch}/lldb/_lldb.so
46ddc8
mv -v %{buildroot}%{python3_sitearch}/readline.so %{buildroot}%{python3_sitearch}/lldb/readline.so
46ddc8
%py_byte_compile %{__python3} %{buildroot}%{python3_sitearch}/lldb
46ddc8
46ddc8
# remove bundled six.py
46ddc8
rm -f %{buildroot}%{python3_sitearch}/six.*
46ddc8
46ddc8
%ldconfig_scriptlets
46ddc8
46ddc8
%files
46ddc8
%{_bindir}/lldb*
46ddc8
%{_libdir}/liblldb.so.*
46ddc8
%{_libdir}/liblldbIntelFeatures.so.*
46ddc8
46ddc8
%files devel
46ddc8
%{_includedir}/lldb
46ddc8
%{_libdir}/*.so
46ddc8
46ddc8
%files -n python3-lldb
46ddc8
%{python3_sitearch}/lldb
46ddc8
46ddc8
%changelog
46ddc8
* Tue Apr 16 2019 sguelton@redhat.com - 8.0.0-1
46ddc8
- 8.0.0 Release
46ddc8
46ddc8
* Mon Dec 17 2018 Tom Stellard <tstellar@redhat.com> - 7.0.1-2
46ddc8
- Fix multilib conflict
46ddc8
46ddc8
* Fri Dec 14 2018 Tom Stellard <tstellar@redhat.com> - 7.0.1-1
46ddc8
- 7.0.1 Release
46ddc8
46ddc8
* Mon Dec 10 2018 Tom Stellard <tstellar@redhat.com> - 7.0.1-0.1.rc3
46ddc8
- 7.0.1-rc3 Release
46ddc8
46ddc8
* Thu Dec 06 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-7
46ddc8
- Re-enable python module for real
46ddc8
46ddc8
* Wed Oct 03 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-6
46ddc8
- Re-enable python module and fix build with python3
46ddc8
46ddc8
* Wed Oct 03 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-5
46ddc8
- Disable python module
46ddc8
46ddc8
* Mon Oct 01 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-4
46ddc8
- Drop scl macros
46ddc8
46ddc8
* Tue Aug 28 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-3
46ddc8
- Re-enable python module
46ddc8
46ddc8
* Tue Aug 07 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-2
46ddc8
- Install ld.so.conf file in the root filesystem
46ddc8
46ddc8
* Wed Jul 11 2018 Tom Stellard <tstellar@redhat.com> - 6.0.1-1
46ddc8
- 6.0.1 Release
46ddc8
46ddc8
* Thu Jan 25 2018 Tom Stellard <tstellar@redhat.com> - 5.0.1-3
46ddc8
- Drop explicit dependencies for llvm-libs and clang-libs
46ddc8
46ddc8
* Tue Jan 16 2018 Tom Stellard <tstellar@redhat.com> - 5.0.1-2
46ddc8
- Rebuid for i686
46ddc8
46ddc8
* Thu Jan 11 2018 Tom Stellard <tstellar@redhat.com> - 5.0.1-1
46ddc8
- 5.0.1 Release
46ddc8
46ddc8
* Wed Aug 16 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-4
46ddc8
-  Fix crash when loading Fedora debuginfo
46ddc8
   Resloves: #1479529
46ddc8
46ddc8
* Mon Jul 31 2017 Jan Kratochvil <jan.kratochvil@redhat.com> - 4.0.1-3
46ddc8
- Backport lldb r303907
46ddc8
  Resolves: #1356140
46ddc8
46ddc8
* Thu Jun 22 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-2
46ddc8
- Fix requires for python-lldb
46ddc8
46ddc8
* Wed Jun 21 2017 Tom Stellard <tstellar@redhat.com> - 4.0.1-1
46ddc8
- Build for llvm-toolset-7 rename
46ddc8
46ddc8
* Wed Jun 07 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-3
46ddc8
- Build for llvm-toolset-7 rename
46ddc8
46ddc8
* Thu May 18 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-2
46ddc8
- Fix Requires
46ddc8
46ddc8
* Fri Mar 24 2017 Tom Stellard <tstellar@redhat.com> - 4.0.0-1
46ddc8
- lldb 4.0.0
46ddc8
46ddc8
* Tue Mar 21 2017 Tom Stellard <tstellar@redhat.com> - 3.9.1-4
46ddc8
- Add explicit Requires for llvm-libs and clang-libs
46ddc8
46ddc8
* Fri Mar 17 2017 Tom Stellard <tstellar@redhat.org> - 3.9.1-3
46ddc8
- Adjust python sys.path so lldb can find readline.so
46ddc8
46ddc8
* Tue Mar 14 2017 Tom Stellard <tstellar@redhat.com> - 3.9.1-2
46ddc8
- Fix build with gcc 7
46ddc8
46ddc8
* Thu Mar 02 2017 Dave Airlie 
46ddc8
- lldb 3.9.1
46ddc8
46ddc8
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.9.0-4
46ddc8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
46ddc8
46ddc8
* Mon Nov 14 2016 Nathaniel McCallum <npmccallum@redhat.com> - 3.9.0-3
46ddc8
- Disable libedit support until upstream fixes it (#1356140)
46ddc8
46ddc8
* Wed Nov  2 2016 Peter Robinson <pbrobinson@fedoraproject.org> 3.9.0-2
46ddc8
- Set upstream supported architectures in an ExclusiveArch
46ddc8
46ddc8
* Wed Oct 26 2016 Dave Airlie <airlied@redhat.com> - 3.9.0-1
46ddc8
- lldb 3.9.0
46ddc8
- fixup some issues with MIUtilParse by removing it
46ddc8
- build with -fno-rtti
46ddc8
46ddc8
* Tue Jul 19 2016 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.8.0-2
46ddc8
- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages
46ddc8
46ddc8
* Thu Mar 10 2016 Dave Airlie <airlied@redhat.com> 3.8.0-1
46ddc8
- lldb 3.8.0
46ddc8
46ddc8
* Thu Mar 03 2016 Dave Airlie <airlied@redhat.com> 3.8.0-0.3
46ddc8
- lldb 3.8.0 rc3
46ddc8
46ddc8
* Wed Feb 24 2016 Dave Airlie <airlied@redhat.com> - 3.8.0-0.2
46ddc8
- dynamically link to llvm
46ddc8
46ddc8
* Thu Feb 18 2016 Dave Airlie <airlied@redhat.com> - 3.8.0-0.1
46ddc8
- lldb 3.8.0 rc2
46ddc8
46ddc8
* Sun Feb 14 2016 Dave Airlie <airlied@redhat.com> 3.7.1-3
46ddc8
- rebuild lldb against latest llvm
46ddc8
46ddc8
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.7.1-2
46ddc8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
46ddc8
46ddc8
* Tue Oct 06 2015 Jan Vcelak <jvcelak@fedoraproject.org> 3.7.0-100
46ddc8
- initial version using cmake build system