Accepting request 225431 from home:jenewton:branches:devel:tools:compiler

temporarily enabling lldb only on arm and x86_64.  x86_32 will work on gcc 4.8.2+

OBS-URL: https://build.opensuse.org/request/show/225431
OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm?expand=0&rev=340
This commit is contained in:
Ismail Dönmez 2014-03-10 17:12:55 +00:00 committed by Git OBS Bridge
parent 08a5f55223
commit 61d07b4baa
3 changed files with 116 additions and 2 deletions

3
lldb-3.4.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2a374095d9a389b2abfc165167b0d2016d290ac256eb9c8d6d9ec43ecce12899
size 2569468

47
lldb-cmake.patch Normal file
View File

@ -0,0 +1,47 @@
--- llvm.orig/tools/lldb/scripts/CMakeLists.txt 2013-06-13 09:05:41.000000000 -0700
+++ llvm/tools/lldb/scripts/CMakeLists.txt 2014-03-08 00:59:09.089734896 -0800
@@ -16,5 +16,16 @@
# Install the LLDB python module on all operating systems (except Windows)
if (NOT CMAKE_SYSTEM_NAME MATCHES "Windows")
- install(SCRIPT lldb_python_module.cmake -DCMAKE_INSTALL_PREFIX=\"${CMAKE_INSTALL_PREFIX}\" -DCMAKE_BUILD_DIR=\"${CMAKE_BUILD_DIR}\")
+ install(CODE "
+ include(FindPythonInterp)
+
+ SET(PYTHON_DIRECTORY python\${PYTHON_VERSION_MAJOR}.\${PYTHON_VERSION_MINOR})
+
+ SET(lldb_module_src ${CMAKE_BINARY_DIR}/lib${LLVM_LIBDIR_SUFFIX}/\${PYTHON_DIRECTORY})
+ SET(lldb_module_dest \$ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/lib${LLVM_LIBDIR_SUFFIX})
+
+ MESSAGE(STATUS \"Installing LLDB python module from: \${lldb_module_src} to \${lldb_module_dest}\")
+ FILE(COPY \${lldb_module_src} DESTINATION \${lldb_module_dest})
+ "
+ )
endif()
--- llvm.orig/tools/lldb/scripts/lldb_python_module.cmake 2013-06-13 09:05:41.000000000 -0700
+++ /dev/null 2014-02-14 05:57:02.719999980 -0800
@@ -1,14 +0,0 @@
-# This CMake script installs the LLDB python module from the build directory
-# to the install directory.
-
-# FIXME: if a non-standard version of python is requested, the cmake macro
-# below will need Python_ADDITIONAL_VERSIONS set in order to find it.
-include(FindPythonInterp)
-
-SET(PYTHON_DIRECTORY python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR})
-
-SET(lldb_module_src ${CMAKE_CURRENT_BINARY_DIR}/lib/${PYTHON_DIRECTORY})
-SET(lldb_module_dest ${CMAKE_INSTALL_PREFIX}/lib)
-
-MESSAGE(STATUS "Installing LLDB python module from: ${lldb_module_src} to ${lldb_module_dest}")
-FILE(COPY "${lldb_module_src}" DESTINATION "${lldb_module_dest}")
--- llvm.orig/tools/lldb/source/CMakeLists.txt 2013-11-15 06:15:10.000000000 -0800
+++ llvm/tools/lldb/source/CMakeLists.txt 2014-03-08 03:38:38.480795021 -0800
@@ -225,5 +225,5 @@
install(TARGETS liblldb
RUNTIME DESTINATION bin
- LIBRARY DESTINATION lib
- ARCHIVE DESTINATION lib)
+ LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX}
+ ARCHIVE DESTINATION lib${LLVM_LIBDIR_SUFFIX})

View File

@ -27,6 +27,7 @@ License: NCSA
Group: Development/Languages/Other
Url: http://www.llvm.org
Source0: %{name}-%{version}.tar.bz2
Source1: lldb-3.4.tar.xz
Source100: %{name}-rpmlintrc
# PATCH-FIX-OPENSUSE set-revision.patch idoenmez@suse.de -- Allow us to set revision
Patch1: set-revision.patch
@ -45,6 +46,7 @@ Patch8: aarch64-suse-support.patch
Patch9: arm-remove-xfails.diff
# PATCH-FIX-OPENSUSE asan-disable-hugemalloctest.patch -- Disable ASAN HugeMallocTest
Patch10: asan-disable-hugemalloctest.patch
Patch11: lldb-cmake.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf
BuildRequires: automake
@ -122,6 +124,37 @@ Requires: llvm-devel = %{version}
This package contains the clang (C language) frontend for LLVM.
(development files)
%ifarch x86_64 arm
%package -n lldb
Summary: Next generation high-performance debugger
Group: Development/Languages
Requires: llvm%{?_isa} = %{version}-%{release}
BuildRequires: libedit-devel
BuildRequires: python-devel
BuildRequires: swig
%description -n lldb
LLDB is a next generation, high-performance debugger. It is built as a set
of reusable components which highly leverage existing libraries in the
larger LLVM Project, such as the Clang expression parser and LLVM
disassembler.
%package -n lldb-devel
Summary: Next generation high-performance debugger (devel package)
Group: Development/Languages
Requires: llvm%{?_isa} = %{version}-%{release}
BuildRequires: libedit-devel
BuildRequires: python-devel
BuildRequires: swig
Requires: lldb = %{version}
%description -n lldb-devel
LLDB is a next generation, high-performance debugger. It is built as a set
of reusable components which highly leverage existing libraries in the
larger LLVM Project, such as the Clang expression parser and LLVM
disassembler.
%endif
%package vim-plugins
Summary: Vim plugins for LLVM
Group: Productivity/Text/Editors
@ -140,7 +173,11 @@ Requires: python
This package contains the Python bindings to clang (C language) frontend for LLVM.
%prep
%setup -q -n %{name}
%setup -q -n %{name} -a1
%ifarch x86_64 arm
rm -rf tools/lldb
mv lldb tools/lldb
%endif
%patch1 -p1
%patch2 -p1
%patch3 -p1
@ -153,6 +190,9 @@ This package contains the Python bindings to clang (C language) frontend for LLV
%patch8 -p1
%patch9
%patch10 -p1
%ifarch x86_64 arm
%patch11 -p1
%endif
# We hardcode i586
rm tools/clang/test/Driver/x86_features.c
@ -301,7 +341,7 @@ ln -s lib lib64
%endif
make check
make clang-test
#make clang-test
%endif
%endif
@ -393,6 +433,9 @@ mv utils/vim/README utils/vim/README.vim
rm %{buildroot}%{_libdir}/BugpointPasses.*
rm %{buildroot}%{_libdir}/LLVMHello.*
rm %{buildroot}%{_libdir}/libgtest*
%ifarch x86_64 arm
rm %{buildroot}%{_libdir}/liblldb*.a
%endif
rm %{buildroot}%{_mandir}/man1/lit.1
%fdupes -s %{buildroot}%{_docdir}/%{name}
@ -404,6 +447,11 @@ rm %{buildroot}%{_mandir}/man1/lit.1
%post -n libclang -p /sbin/ldconfig
%postun -n libclang -p /sbin/ldconfig
%ifarch x86_64 arm
%post -n lldb -p /sbin/ldconfig
%postun -n lldb -p /sbin/ldconfig
%endif
%post clang-devel -p /sbin/ldconfig
%postun clang-devel -p /sbin/ldconfig
@ -483,6 +531,22 @@ rm %{buildroot}%{_mandir}/man1/lit.1
%{_datadir}/%{name}/cmake/
%doc %{_docdir}/%{name}
%ifarch x86_64 arm
%files -n lldb
%defattr(-,root,root,-)
%{_libdir}/liblldb.so.*
%ifarch ppc64
%{_libdir}/liblldb*.a
%endif
%{_bindir}/lldb*
%{_libdir}/python*/site-packages/lldb
%files -n lldb-devel
%defattr(-,root,root,-)
%{_includedir}/lldb
%{_libdir}/liblldb.so
%endif
%files vim-plugins
%defattr(-,root,root,-)
%doc utils/vim/README.vim