Accepting request 368685 from home:namtrac:branches:devel:tools:compiler
- Update to llvm 3.8.0 * See http://llvm.org/releases/3.8.0/docs/ReleaseNotes.html and http://llvm.org/releases/3.8.0/tools/clang/docs/ReleaseNotes.html - Fold lldb build into llvm and disable python support - Drop clang-disable-ada-extension.patch, libcxxabi-exceptions.patch and cmake-host-triple.patch - Add revert-cmake-soname.patch to fix soname handling OBS-URL: https://build.opensuse.org/request/show/368685 OBS-URL: https://build.opensuse.org/package/show/devel:tools:compiler/llvm?expand=0&rev=430
This commit is contained in:
parent
e8b1875bae
commit
f49d2e187c
@ -1,7 +1,7 @@
|
||||
Index: cfe-3.7.0.src/lib/Driver/ToolChains.cpp
|
||||
Index: cfe-3.8.0.src/lib/Driver/ToolChains.cpp
|
||||
===================================================================
|
||||
--- cfe-3.7.0.src.orig/lib/Driver/ToolChains.cpp
|
||||
+++ cfe-3.7.0.src/lib/Driver/ToolChains.cpp
|
||||
--- cfe-3.8.0.src/lib/Driver/ToolChains.cpp
|
||||
+++ cfe-3.8.0.src/lib/Driver/ToolChains.cpp
|
||||
@@ -1266,16 +1266,18 @@ bool Generic_GCC::GCCInstallationDetecto
|
||||
static const char *const AArch64LibDirs[] = {"/lib64", "/lib"};
|
||||
static const char *const AArch64Triples[] = {
|
||||
|
@ -1,21 +1,21 @@
|
||||
Index: cfe-3.7.0.src/lib/Driver/ToolChains.cpp
|
||||
Index: cfe-3.8.0.src/lib/Driver/ToolChains.cpp
|
||||
===================================================================
|
||||
--- cfe-3.7.0.src/lib/Driver/ToolChains.cpp
|
||||
+++ cfe-3.7.0.src/lib/Driver/ToolChains.cpp
|
||||
@@ -2794,6 +2794,7 @@ static bool IsUbuntu(enum Distro Distro)
|
||||
--- cfe-3.8.0.src/lib/Driver/ToolChains.cpp
|
||||
+++ cfe-3.8.0.src/lib/Driver/ToolChains.cpp
|
||||
@@ -3080,6 +3080,7 @@ static bool IsUbuntu(enum Distro Distro)
|
||||
}
|
||||
|
||||
static Distro DetectDistro(llvm::Triple::ArchType Arch) {
|
||||
+ return OpenSUSE; /*
|
||||
static Distro DetectDistro(const Driver &D, llvm::Triple::ArchType Arch) {
|
||||
+#if 0
|
||||
llvm::ErrorOr<std::unique_ptr<llvm::MemoryBuffer>> File =
|
||||
llvm::MemoryBuffer::getFile("/etc/lsb-release");
|
||||
if (File) {
|
||||
@@ -2861,7 +2862,7 @@ static Distro DetectDistro(llvm::Triple:
|
||||
if (llvm::sys::fs::exists("/etc/arch-release"))
|
||||
@@ -3155,6 +3156,8 @@ static Distro DetectDistro(const Driver
|
||||
return ArchLinux;
|
||||
|
||||
- return UnknownDistro;
|
||||
+ return UnknownDistro;*/
|
||||
return UnknownDistro;
|
||||
+#endif
|
||||
+ return OpenSUSE;
|
||||
}
|
||||
|
||||
/// \brief Get our best guess at the multiarch triple for a target.
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4ed740c5a91df1c90a4118c5154851d6a475f39a91346bdf268c1c29c13aa1cc
|
||||
size 9147204
|
3
cfe-3.8.0.src.tar.xz
Normal file
3
cfe-3.8.0.src.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:04149236de03cf05232d68eb7cb9c50f03062e339b68f4f8a03b650a11536cf9
|
||||
size 9627228
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ae5d2629874032eebc51fc4c169a2b684c3d653a3bb39b86e98297d42496f9e9
|
||||
size 642056
|
3
cfe-docs-3.8.0.src.tar.xz
Normal file
3
cfe-docs-3.8.0.src.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:9097443437dc7394e1b5bf09ebdd1a740734f2974d408a8ff136bcfcfd81b4b5
|
||||
size 661952
|
@ -1,13 +0,0 @@
|
||||
Index: cfe-3.7.0.src/lib/Driver/Types.cpp
|
||||
===================================================================
|
||||
--- cfe-3.7.0.src/lib/Driver/Types.cpp
|
||||
+++ cfe-3.7.0.src/lib/Driver/Types.cpp
|
||||
@@ -158,8 +158,6 @@ types::ID types::lookupTypeForExtension(
|
||||
.Case("hh", TY_CXXHeader)
|
||||
.Case("ll", TY_LLVM_IR)
|
||||
.Case("hpp", TY_CXXHeader)
|
||||
- .Case("ads", TY_Ada)
|
||||
- .Case("adb", TY_Ada)
|
||||
.Case("ast", TY_AST)
|
||||
.Case("c++", TY_CXX)
|
||||
.Case("C++", TY_CXX)
|
@ -1,7 +1,7 @@
|
||||
Index: cfe-3.7.0.src/lib/Driver/Driver.cpp
|
||||
Index: cfe-3.8.0.src/lib/Driver/Driver.cpp
|
||||
===================================================================
|
||||
--- cfe-3.7.0.src/lib/Driver/Driver.cpp
|
||||
+++ cfe-3.7.0.src/lib/Driver/Driver.cpp
|
||||
--- cfe-3.8.0.src/lib/Driver/Driver.cpp
|
||||
+++ cfe-3.8.0.src/lib/Driver/Driver.cpp
|
||||
@@ -64,7 +64,7 @@ Driver::Driver(StringRef ClangExecutable
|
||||
|
||||
// Compute the path to the resource directory.
|
||||
|
3
clang-tools-extra-3.8.0.src.tar.xz
Normal file
3
clang-tools-extra-3.8.0.src.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:afbda810106a6e64444bc164b921be928af46829117c95b996f2678ce4cb1ec4
|
||||
size 334072
|
@ -1,33 +0,0 @@
|
||||
Index: llvm-3.3/cmake/modules/GetHostTriple.cmake
|
||||
===================================================================
|
||||
--- llvm-3.3.orig/cmake/modules/GetHostTriple.cmake
|
||||
+++ llvm-3.3/cmake/modules/GetHostTriple.cmake
|
||||
@@ -15,15 +15,19 @@ function( get_host_triple var )
|
||||
set( value "i686-pc-mingw32" )
|
||||
endif()
|
||||
else( MSVC )
|
||||
- set(config_guess ${LLVM_MAIN_SRC_DIR}/autoconf/config.guess)
|
||||
- execute_process(COMMAND sh ${config_guess}
|
||||
- RESULT_VARIABLE TT_RV
|
||||
- OUTPUT_VARIABLE TT_OUT
|
||||
- OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
- if( NOT TT_RV EQUAL 0 )
|
||||
- message(FATAL_ERROR "Failed to execute ${config_guess}")
|
||||
- endif( NOT TT_RV EQUAL 0 )
|
||||
- set( value ${TT_OUT} )
|
||||
+ if( NOT LLVM_HOST_TRIPLE )
|
||||
+ set(config_guess ${LLVM_MAIN_SRC_DIR}/autoconf/config.guess)
|
||||
+ execute_process(COMMAND sh ${config_guess}
|
||||
+ RESULT_VARIABLE TT_RV
|
||||
+ OUTPUT_VARIABLE TT_OUT
|
||||
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||
+ if( NOT TT_RV EQUAL 0 )
|
||||
+ message(FATAL_ERROR "Failed to execute ${config_guess}")
|
||||
+ endif( NOT TT_RV EQUAL 0 )
|
||||
+ set( value ${TT_OUT} )
|
||||
+ else( LLVM_HOST_TRIPLE )
|
||||
+ set( value ${LLVM_HOST_TRIPLE} )
|
||||
+ endif( NOT LLVM_HOST_TRIPLE )
|
||||
endif( MSVC )
|
||||
set( ${var} ${value} PARENT_SCOPE )
|
||||
message(STATUS "Target triple: ${value}")
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:227fa998520bc94974a428dc8e7654d9bdf277e5bc70d4064ebc05691bd62b0b
|
||||
size 1192832
|
3
compiler-rt-3.8.0.src.tar.xz
Normal file
3
compiler-rt-3.8.0.src.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:c8d3387e55f229543dac1941769120f24dc50183150bf19d1b070d53d29d56b0
|
||||
size 1270128
|
@ -1,7 +1,7 @@
|
||||
Index: cfe-3.7.0.src/lib/Driver/Tools.cpp
|
||||
Index: cfe-3.8.0.src/lib/Driver/Tools.cpp
|
||||
===================================================================
|
||||
--- cfe-3.7.0.src/lib/Driver/Tools.cpp
|
||||
+++ cfe-3.7.0.src/lib/Driver/Tools.cpp
|
||||
--- cfe-3.8.0.src/lib/Driver/Tools.cpp
|
||||
+++ cfe-3.8.0.src/lib/Driver/Tools.cpp
|
||||
@@ -1322,8 +1322,8 @@ static const char *getX86TargetCPU(const
|
||||
case llvm::Triple::Bitrig:
|
||||
return "i686";
|
||||
|
@ -1,20 +1,7 @@
|
||||
Index: libcxx-3.7.0.src/test/std/depr/depr.c.headers/math_h.pass.cpp
|
||||
Index: libcxx-3.8.0.src/test/std/numerics/c.math/cmath_isinf.pass.cpp
|
||||
===================================================================
|
||||
--- libcxx-3.7.0.src.orig/test/std/depr/depr.c.headers/math_h.pass.cpp
|
||||
+++ libcxx-3.7.0.src/test/std/depr/depr.c.headers/math_h.pass.cpp
|
||||
@@ -9,8 +9,6 @@
|
||||
|
||||
// <math.h>
|
||||
|
||||
-// XFAIL: linux
|
||||
-
|
||||
#include <math.h>
|
||||
#include <type_traits>
|
||||
#include <cassert>
|
||||
Index: libcxx-3.7.0.src/test/std/numerics/c.math/cmath_isinf.pass.cpp
|
||||
===================================================================
|
||||
--- libcxx-3.7.0.src.orig/test/std/numerics/c.math/cmath_isinf.pass.cpp
|
||||
+++ libcxx-3.7.0.src/test/std/numerics/c.math/cmath_isinf.pass.cpp
|
||||
--- libcxx-3.8.0.src.orig/test/std/numerics/c.math/cmath_isinf.pass.cpp
|
||||
+++ libcxx-3.8.0.src/test/std/numerics/c.math/cmath_isinf.pass.cpp
|
||||
@@ -11,8 +11,6 @@
|
||||
|
||||
// isinf
|
||||
@ -31,10 +18,10 @@ Index: libcxx-3.7.0.src/test/std/numerics/c.math/cmath_isinf.pass.cpp
|
||||
-}
|
||||
\ No newline at end of file
|
||||
+}
|
||||
Index: libcxx-3.7.0.src/test/std/numerics/c.math/cmath_isnan.pass.cpp
|
||||
Index: libcxx-3.8.0.src/test/std/numerics/c.math/cmath_isnan.pass.cpp
|
||||
===================================================================
|
||||
--- libcxx-3.7.0.src.orig/test/std/numerics/c.math/cmath_isnan.pass.cpp
|
||||
+++ libcxx-3.7.0.src/test/std/numerics/c.math/cmath_isnan.pass.cpp
|
||||
--- libcxx-3.8.0.src.orig/test/std/numerics/c.math/cmath_isnan.pass.cpp
|
||||
+++ libcxx-3.8.0.src/test/std/numerics/c.math/cmath_isnan.pass.cpp
|
||||
@@ -11,8 +11,6 @@
|
||||
|
||||
// isnan
|
||||
@ -44,3 +31,16 @@ Index: libcxx-3.7.0.src/test/std/numerics/c.math/cmath_isnan.pass.cpp
|
||||
#include <cmath>
|
||||
#include <type_traits>
|
||||
#include <cassert>
|
||||
Index: libcxx-3.8.0.src/test/std/depr/depr.c.headers/math_h_isinf.pass.cpp
|
||||
===================================================================
|
||||
--- libcxx-3.8.0.src.orig/test/std/depr/depr.c.headers/math_h_isinf.pass.cpp
|
||||
+++ libcxx-3.8.0.src/test/std/depr/depr.c.headers/math_h_isinf.pass.cpp
|
||||
@@ -11,8 +11,6 @@
|
||||
|
||||
// isinf
|
||||
|
||||
-// XFAIL: linux
|
||||
-
|
||||
#include <math.h>
|
||||
#include <type_traits>
|
||||
#include <cassert>
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:c18f3c8333cd7e678c1424a57fe5e25efe740ca7caf62ac67152b4723f3ad08e
|
||||
size 994580
|
3
libcxx-3.8.0.src.tar.xz
Normal file
3
libcxx-3.8.0.src.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:36804511b940bc8a7cefc7cb391a6b28f5e3f53f6372965642020db91174237b
|
||||
size 1062884
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:48b074fd334958b2d8bab893c897a0c8258328782cdec2d229c7bce432b49beb
|
||||
size 507428
|
3
libcxxabi-3.8.0.src.tar.xz
Normal file
3
libcxxabi-3.8.0.src.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:c5ee0871aff6ec741380c4899007a7d97f0b791c81df69d25b744eebc5cee504
|
||||
size 508900
|
@ -1,13 +0,0 @@
|
||||
Index: libcxxabi-3.7.0.src/src/CMakeLists.txt
|
||||
===================================================================
|
||||
--- libcxxabi-3.7.0.src/src/CMakeLists.txt
|
||||
+++ libcxxabi-3.7.0.src/src/CMakeLists.txt
|
||||
@@ -52,7 +52,7 @@ append_if(libraries LIBCXXABI_HAS_PTHREA
|
||||
if (LIBCXXABI_USE_LLVM_UNWINDER)
|
||||
list(APPEND libraries unwind)
|
||||
else()
|
||||
- append_if(libraries LIBCXXABI_HAS_GCC_EH_LIB gcc_eh)
|
||||
+ append_if(libraries LIBCXXABI_HAS_GCC_EH_LIB gcc_s)
|
||||
endif()
|
||||
|
||||
# Setup flags.
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:f4d7505bc111044eaa4033af012221e492938405b62522b8e3e354c20c4b71e9
|
||||
size 10649660
|
3
lldb-3.8.0.src.tar.xz
Normal file
3
lldb-3.8.0.src.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:e3f68f44147df0433e7989bf6ed1c58ff28d7c68b9c47553cb9915f744785a35
|
||||
size 10929768
|
@ -1,7 +1,7 @@
|
||||
Index: lldb-3.7.0.src/source/lldb.cpp
|
||||
Index: lldb-3.8.0.src/source/lldb.cpp
|
||||
===================================================================
|
||||
--- lldb-3.7.0.src.orig/source/lldb.cpp
|
||||
+++ lldb-3.7.0.src/source/lldb.cpp
|
||||
--- lldb-3.8.0.src.orig/source/lldb.cpp
|
||||
+++ lldb-3.8.0.src/source/lldb.cpp
|
||||
@@ -21,11 +21,7 @@ extern "C" const unsigned char liblldb_c
|
||||
static const char *
|
||||
GetLLDBRevision()
|
||||
@ -14,27 +14,18 @@ Index: lldb-3.7.0.src/source/lldb.cpp
|
||||
}
|
||||
|
||||
static const char *
|
||||
Index: lldb-3.7.0.src/source/Core/IOHandler.cpp
|
||||
Index: lldb-3.8.0.src/source/Core/IOHandler.cpp
|
||||
===================================================================
|
||||
--- lldb-3.7.0.src.orig/source/Core/IOHandler.cpp
|
||||
+++ lldb-3.7.0.src/source/Core/IOHandler.cpp
|
||||
@@ -29,8 +29,8 @@
|
||||
#include "lldb/Target/ThreadPlan.h"
|
||||
--- lldb-3.8.0.src.orig/source/Core/IOHandler.cpp
|
||||
+++ lldb-3.8.0.src/source/Core/IOHandler.cpp
|
||||
@@ -9,8 +9,8 @@
|
||||
|
||||
// C Includes
|
||||
#ifndef LLDB_DISABLE_CURSES
|
||||
-#include <ncurses.h>
|
||||
-#include <curses.h>
|
||||
-#include <panel.h>
|
||||
+#include <ncurses/ncurses.h>
|
||||
+#include <ncurses/curses.h>
|
||||
+#include <ncurses/panel.h>
|
||||
#endif
|
||||
|
||||
using namespace lldb;
|
||||
Index: lldb-3.7.0.src/source/Host/CMakeLists.txt
|
||||
===================================================================
|
||||
--- lldb-3.7.0.src.orig/source/Host/CMakeLists.txt
|
||||
+++ lldb-3.7.0.src/source/Host/CMakeLists.txt
|
||||
@@ -134,3 +134,4 @@ else()
|
||||
endif()
|
||||
|
||||
add_lldb_library(lldbHost ${HOST_SOURCES})
|
||||
+target_link_libraries(lldbHost dl pthread)
|
||||
// C++ Includes
|
||||
|
43
lldb.changes
43
lldb.changes
@ -1,43 +0,0 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Sep 2 08:23:08 UTC 2015 - idonmez@suse.com
|
||||
|
||||
- Update to version 3.7.0
|
||||
* No changelog upstream
|
||||
- Refresh lldb-cmake.patch
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Jun 22 09:45:33 UTC 2015 - idonmez@suse.com
|
||||
|
||||
- Update lldb-cmake.patch to fix compilation on Factory
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon May 25 13:59:56 UTC 2015 - idonmez@suse.com
|
||||
|
||||
- Update to version 3.6.1
|
||||
* No changelog upstream
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 2 10:14:22 UTC 2015 - idonmez@suse.com
|
||||
|
||||
- Update to version 3.6.0
|
||||
* No changelog upstream
|
||||
- Merge lldb-underlink.patch into lldb-cmake.patch
|
||||
- Swich to static library build, shared build is not supported
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Sep 17 13:26:34 UTC 2014 - idonmez@suse.com
|
||||
|
||||
- Add BuildRequires on ncurses-devel
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Sep 6 14:59:58 UTC 2014 - idonmez@suse.com
|
||||
|
||||
- Update to version 3.5.0
|
||||
* No changelog upstream
|
||||
- Add lldb-underlink.patch to link to LLVMSupport
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Mar 17 09:02:51 UTC 2014 - idonmez@suse.com
|
||||
|
||||
- First release on build.opensuse.org
|
||||
|
127
lldb.spec
127
lldb.spec
@ -1,127 +0,0 @@
|
||||
#
|
||||
# spec file for package lldb
|
||||
#
|
||||
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
# upon. The license for this file, and modifications and additions to the
|
||||
# file, is the same license as for the pristine package itself (unless the
|
||||
# license for the pristine package is not an Open Source License, in which
|
||||
# case the license is the MIT License). An "Open Source License" is a
|
||||
# license that conforms to the Open Source Definition (Version 1.9)
|
||||
# published by the Open Source Initiative.
|
||||
|
||||
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
||||
#
|
||||
|
||||
|
||||
%define _revision 246586
|
||||
|
||||
Name: lldb
|
||||
Version: 3.7.0
|
||||
Release: 0
|
||||
Summary: The LLDB Debugger
|
||||
License: NCSA
|
||||
Group: Development/Languages
|
||||
Url: http://lldb.llvm.org/
|
||||
Source: http://llvm.org/releases/%{version}/lldb-%{version}.src.tar.xz
|
||||
Patch1: lldb-cmake.patch
|
||||
BuildRequires: cmake
|
||||
BuildRequires: libedit-devel
|
||||
BuildRequires: llvm-clang-devel = %{version}
|
||||
BuildRequires: llvm-devel = %{version}
|
||||
BuildRequires: ncurses-devel
|
||||
BuildRequires: ninja
|
||||
BuildRequires: python-devel
|
||||
BuildRequires: swig
|
||||
BuildRequires: zlib-devel
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Requires: libLLVM = %{version}
|
||||
Requires: libclang = %{version}
|
||||
Requires: python-base
|
||||
ExclusiveArch: %arm x86_64
|
||||
|
||||
%define py_major $(python -c "import sys; print sys.version_info[0];")
|
||||
%define py_minor $(python -c "import sys; print sys.version_info[1];")
|
||||
|
||||
%description
|
||||
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 devel
|
||||
Summary: Next generation high-performance debugger (devel package)
|
||||
Group: Development/Languages
|
||||
Requires: libedit-devel
|
||||
Requires: lldb = %{version}
|
||||
Requires: zlib-devel
|
||||
|
||||
%description 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.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{name}-%{version}.src
|
||||
%patch1 -p1
|
||||
|
||||
sed -i s,LLDB_REVISION,\"%{_revision}\",g source/lldb.cpp
|
||||
|
||||
%build
|
||||
mkdir build
|
||||
pushd build
|
||||
|
||||
cmake -DCMAKE_C_COMPILER=clang \
|
||||
-DCMAKE_CXX_COMPILER=clang++ \
|
||||
-DBUILD_SHARED_LIBS=OFF \
|
||||
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
%if "%{_lib}" == "lib64"
|
||||
-DLLVM_LIBDIR_SUFFIX=64 \
|
||||
%endif
|
||||
-DLLDB_PATH_TO_LLVM_BUILD=%{_prefix} \
|
||||
-DLLDB_PATH_TO_CLANG_BUILD=%{_prefix} \
|
||||
-DLLVM_RUNTIME_OUTPUT_INTDIR=$PWD/bin \
|
||||
-DLLVM_LIBRARY_OUTPUT_INTDIR=$PWD/%{_lib} \
|
||||
-DPYTHON_VERSION_MAJOR=%{py_major} \
|
||||
-DPYTHON_VERSION_MINOR=%{py_minor} \
|
||||
-G "Ninja" \
|
||||
..
|
||||
ninja
|
||||
|
||||
%install
|
||||
pushd build
|
||||
DESTDIR=%{buildroot} ninja install
|
||||
|
||||
# Fix the lldb.so link
|
||||
rm %{buildroot}%{py_sitedir}/lldb/_lldb.so
|
||||
ln -sf %{_libdir}/liblldb.so.%{version} %{buildroot}%{py_sitedir}/lldb/_lldb.so
|
||||
|
||||
# Fix the lib link
|
||||
rm %{buildroot}%{py_sitedir}/lib
|
||||
ln -sf %{libdir} %{buildroot}%{py_sitedir}/lib
|
||||
|
||||
rm %{buildroot}%{_libdir}/liblldb*.a
|
||||
|
||||
%post -p /sbin/ldconfig
|
||||
|
||||
%postun -p /sbin/ldconfig
|
||||
|
||||
%files
|
||||
%defattr(-,root,root,-)
|
||||
%{_libdir}/liblldb.so.*
|
||||
%{_bindir}/argdumper
|
||||
%{_bindir}/lldb*
|
||||
%{py_sitedir}/readline.so
|
||||
%{py_sitedir}/lib
|
||||
%{py_sitedir}/lldb
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root,-)
|
||||
%{_includedir}/lldb
|
||||
%{_libdir}/liblldb.so
|
||||
|
||||
%changelog
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:ab45895f9dcdad1e140a3a79fd709f64b05ad7364e308c0e582c5b02e9cc3153
|
||||
size 14636252
|
3
llvm-3.8.0.src.tar.xz
Normal file
3
llvm-3.8.0.src.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:555b028e9ee0f6445ff8f949ea10e9cd8be0d084840e21fbbe1d31d51fc06e46
|
||||
size 16580932
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:047afe2d5162ee96a3eb15cf3ff965d3ef2e615895c29049c0d772c59a302fdf
|
||||
size 1570796
|
3
llvm-docs-3.8.0.src.tar.xz
Normal file
3
llvm-docs-3.8.0.src.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:465e749bb89b96e50d0a03f1b7e84f25ed81a9e325664b1c5843580adfc94248
|
||||
size 1605660
|
@ -1,7 +1,7 @@
|
||||
Index: cfe-3.7.0.src/lib/Driver/ToolChains.cpp
|
||||
Index: cfe-3.8.0.src/lib/Driver/ToolChains.cpp
|
||||
===================================================================
|
||||
--- cfe-3.7.0.src/lib/Driver/ToolChains.cpp
|
||||
+++ cfe-3.7.0.src/lib/Driver/ToolChains.cpp
|
||||
--- cfe-3.8.0.src/lib/Driver/ToolChains.cpp
|
||||
+++ cfe-3.8.0.src/lib/Driver/ToolChains.cpp
|
||||
@@ -1091,7 +1091,8 @@ Generic_GCC::GCCVersion Linux::GCCVersio
|
||||
if (First.first.getAsInteger(10, GoodVersion.Major) || GoodVersion.Major < 0)
|
||||
return BadVersion;
|
||||
|
@ -1,7 +1,7 @@
|
||||
Index: llvm-3.7.0.src/cmake/modules/HandleLLVMOptions.cmake
|
||||
Index: llvm-3.8.0.src/cmake/modules/HandleLLVMOptions.cmake
|
||||
===================================================================
|
||||
--- llvm-3.7.0.src.orig/cmake/modules/HandleLLVMOptions.cmake
|
||||
+++ llvm-3.7.0.src/cmake/modules/HandleLLVMOptions.cmake
|
||||
--- llvm-3.8.0.src.orig/cmake/modules/HandleLLVMOptions.cmake
|
||||
+++ llvm-3.8.0.src/cmake/modules/HandleLLVMOptions.cmake
|
||||
@@ -302,9 +302,6 @@ elseif( LLVM_COMPILER_IS_GCC_COMPATIBLE
|
||||
endif()
|
||||
endif (LLVM_ENABLE_WARNINGS)
|
||||
|
@ -1,11 +1,10 @@
|
||||
# This line is mandatory to access the configuration functions
|
||||
from Config import *
|
||||
|
||||
# it is a compiler and the package provides llvm-gcc-devel, llvm-gcc-c++-devel
|
||||
addFilter("devel-file-in-non-devel-package .*/clang/.*/include/.*")
|
||||
addFilter("devel-file-in-non-devel-package .*/clang/.*/lib/.*")
|
||||
addFilter("devel-file-in-non-devel-package .*/usr/include/.*")
|
||||
|
||||
# PPC64 related hacks, remove these when we can
|
||||
# build shared libs there.
|
||||
addFilter("devel-file-in-non-devel-package .*/lib.*/*.a")
|
||||
addFilter ("libclang.*shlib-policy-name-error")
|
||||
addFilter ("libLLVM.*shlib-policy-name-error")
|
||||
|
11
llvm.changes
11
llvm.changes
@ -1,3 +1,14 @@
|
||||
-------------------------------------------------------------------
|
||||
Tue Mar 8 18:52:11 UTC 2016 - idonmez@suse.com
|
||||
|
||||
- Update to llvm 3.8.0
|
||||
* See http://llvm.org/releases/3.8.0/docs/ReleaseNotes.html and
|
||||
http://llvm.org/releases/3.8.0/tools/clang/docs/ReleaseNotes.html
|
||||
- Fold lldb build into llvm and disable python support
|
||||
- Drop clang-disable-ada-extension.patch, libcxxabi-exceptions.patch
|
||||
and cmake-host-triple.patch
|
||||
- Add revert-cmake-soname.patch to fix soname handling
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Wed Mar 2 09:08:12 UTC 2016 - idonmez@suse.com
|
||||
|
||||
|
300
llvm.spec
300
llvm.spec
@ -16,14 +16,16 @@
|
||||
#
|
||||
|
||||
|
||||
%define _revision 246586
|
||||
%define _release_version 3.7.0
|
||||
%define _revision 262553
|
||||
%define _release_version 3.8.0
|
||||
|
||||
%define build_lldb 0
|
||||
%define build_libcxx 0
|
||||
%define build_openmp 0
|
||||
|
||||
%ifarch x86_64
|
||||
%define build_libcxx 1
|
||||
%define build_lldb 1
|
||||
%endif
|
||||
|
||||
%ifarch ppc64 ppc64le %{ix86} x86_64
|
||||
@ -31,7 +33,7 @@
|
||||
%endif
|
||||
|
||||
Name: llvm
|
||||
Version: 3.7.0
|
||||
Version: 3.8.0
|
||||
Release: 0
|
||||
Summary: Low Level Virtual Machine
|
||||
License: NCSA
|
||||
@ -47,27 +49,27 @@ Source5: http://llvm.org/releases/%{version}/openmp-%{version}.src.tar.xz
|
||||
# cd docs
|
||||
# make -f Makefile.sphinx man html
|
||||
# cd ..
|
||||
# tar cvJf llvm-docs-3.7.0.src.tar.xz llvm-3.7.0.src/docs/_build/{man,html}
|
||||
# tar cvJf llvm-docs-3.8.0.src.tar.xz llvm-3.8.0.src/docs/_build/{man,html}
|
||||
Source6: llvm-docs-%{version}.src.tar.xz
|
||||
Source7: cfe-docs-%{version}.src.tar.xz
|
||||
Source8: http://llvm.org/releases/%{version}/clang-tools-extra-%{version}.src.tar.xz
|
||||
Source9: http://llvm.org/releases/%{version}/lldb-%{version}.src.tar.xz
|
||||
Source100: %{name}-rpmlintrc
|
||||
Source101: baselibs.conf
|
||||
# PATCH-FIX-OPENSUSE set-revision.patch idoenmez@suse.de -- Allow us to set revision
|
||||
Patch1: set-revision.patch
|
||||
# PATCH-FIX-OPENSUSE assume-opensuse.patch idoenmez@suse.de -- Always enable openSUSE/SUSE features
|
||||
Patch2: assume-opensuse.patch
|
||||
# PATCH-FIX-OPENSUSE clang-disable-ada-extension.patch idoenmez@suse.de -- Don't run gcc for ada files
|
||||
Patch3: clang-disable-ada-extension.patch
|
||||
# PATCH-FIX-OPENSUSE default-to-i586.patch -- Use i586 as default target for 32bit
|
||||
Patch4: default-to-i586.patch
|
||||
Patch3: default-to-i586.patch
|
||||
# PATCH-FIX-OPENSUSE arm_suse_support.diff --Enable ARM suse toolchain support
|
||||
Patch6: arm_suse_support.diff
|
||||
Patch7: cmake-host-triple.patch
|
||||
Patch10: clang-resourcedirs.patch
|
||||
Patch11: libcxxabi-exceptions.patch
|
||||
Patch13: llvm-remove-clang-only-flags.patch
|
||||
Patch15: llvm-fix-find-gcc5-install.patch
|
||||
Patch16: glibc-2.23-libcxx.patch
|
||||
Patch4: arm_suse_support.diff
|
||||
Patch5: clang-resourcedirs.patch
|
||||
Patch6: llvm-remove-clang-only-flags.patch
|
||||
Patch7: llvm-fix-find-gcc5-install.patch
|
||||
Patch8: revert-cmake-soname.patch
|
||||
Patch9: lldb-cmake.patch
|
||||
Patch10: glibc-2.23-libcxx.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
BuildRequires: binutils-devel >= 2.21.90
|
||||
BuildRequires: bison
|
||||
@ -75,14 +77,15 @@ BuildRequires: cmake
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: flex
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: groff
|
||||
BuildRequires: libedit-devel
|
||||
BuildRequires: libstdc++-devel
|
||||
BuildRequires: libtool
|
||||
BuildRequires: llvm-clang
|
||||
BuildRequires: ncurses-devel
|
||||
BuildRequires: ninja
|
||||
BuildRequires: python-base
|
||||
BuildRequires: python-xml
|
||||
Requires: libLLVM = %{version}-%{release}
|
||||
# llvm does not work on ppc or s390
|
||||
ExcludeArch: ppc s390
|
||||
|
||||
@ -113,11 +116,6 @@ new native programs that use the LLVM infrastructure.
|
||||
%package clang
|
||||
Summary: CLANG frontend for LLVM
|
||||
Group: Development/Languages/Other
|
||||
Requires: %{name} = %{version}
|
||||
Requires: binutils
|
||||
Requires: gcc
|
||||
Requires: libclang = %{version}-%{release}
|
||||
Requires: libstdc++-devel
|
||||
Provides: clang
|
||||
|
||||
%description clang
|
||||
@ -157,25 +155,41 @@ Requires: python
|
||||
%description -n python-clang
|
||||
This package contains the Python bindings to clang (C language) frontend for LLVM.
|
||||
|
||||
%if %{build_lldb}
|
||||
%package -n lldb
|
||||
Summary: Next generation high-performance debugger
|
||||
Group: Development/Languages
|
||||
# We don't want to provide an unstable lldb-devel package now.
|
||||
# Reconsider later when it has a stable API.
|
||||
Provides: lldb-devel = %{version}
|
||||
Obsoletes: lldb-devel < %{version}
|
||||
|
||||
%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.
|
||||
%endif
|
||||
|
||||
%prep
|
||||
%setup -q -a 1 -a 2 -a 3 -a 4 -a 5 -a 7 -b 6 -n %{name}-%{version}.src
|
||||
%setup -q -a 1 -a 2 -a 3 -a 4 -a 5 -a 7 -a 8 -a 9 -b 6 -n %{name}-%{version}.src
|
||||
%patch1
|
||||
%patch2
|
||||
%patch3
|
||||
%patch4
|
||||
%patch6
|
||||
%patch7 -p1
|
||||
%patch10
|
||||
%patch11
|
||||
%patch13 -p1
|
||||
%patch15
|
||||
%patch5
|
||||
%patch6 -p1
|
||||
%patch7
|
||||
%patch8 -p1
|
||||
%patch9
|
||||
%if 0%{?suse_version} > 1320
|
||||
%patch16
|
||||
%patch10
|
||||
%endif
|
||||
|
||||
# Move into right place
|
||||
mv cfe-%{version}.src tools/clang
|
||||
mv compiler-rt-%{version}.src projects/compiler-rt
|
||||
mv clang-tools-extra-%{version}.src tools/clang/tools/extra
|
||||
|
||||
%if %{build_openmp}
|
||||
mv openmp-%{version}.src projects/openmp
|
||||
@ -189,6 +203,10 @@ rm projects/libcxx/test/std/localization/locale.categories/category.time/locale.
|
||||
rm projects/libcxx/test/std/localization/locale.categories/category.time/locale.time.get.byname/get_monthname_wide.pass.cpp
|
||||
%endif
|
||||
|
||||
%if %{build_lldb}
|
||||
mv lldb-%{version}.src tools/lldb
|
||||
%endif
|
||||
|
||||
# We hardcode i586
|
||||
rm tools/clang/test/Driver/x86_features.c
|
||||
rm tools/clang/test/Driver/nacl-direct.c
|
||||
@ -196,51 +214,45 @@ rm tools/clang/test/Driver/nacl-direct.c
|
||||
sed -i s,SVN_REVISION,\"%{_revision}\",g tools/clang/lib/Basic/Version.cpp
|
||||
sed -i s,LLVM_REVISION,\"%{_revision}\",g tools/clang/lib/Basic/Version.cpp
|
||||
|
||||
%if %{build_lldb}
|
||||
sed -i s,LLDB_REVISION,\"%{_revision}\",g tools/lldb/source/lldb.cpp
|
||||
%endif
|
||||
|
||||
# ARMv6 needs this exact host triple
|
||||
%ifarch armv6hl
|
||||
cat > autoconf/config.guess << EOF
|
||||
#!/bin/sh
|
||||
echo armv6hl-suse-linux-gnueabi
|
||||
EOF
|
||||
%endif
|
||||
|
||||
%build
|
||||
TOPLEVEL=$PWD
|
||||
mkdir stage1 stage2
|
||||
pushd stage1
|
||||
|
||||
# Define host-triple
|
||||
%ifarch %{ix86}
|
||||
%define host_triple i586-suse-linux
|
||||
%endif
|
||||
%ifarch x86_64
|
||||
%define host_triple x86_64-suse-linux
|
||||
%endif
|
||||
%ifarch armv6hl
|
||||
%define host_triple armv6hl-suse-linux-gnueabi
|
||||
%endif
|
||||
%ifarch armv7hl
|
||||
%define host_triple armv7hl-suse-linux-gnueabi
|
||||
%endif
|
||||
%ifarch aarch64
|
||||
%define host_triple aarch64-suse-linux
|
||||
%endif
|
||||
%ifarch ppc64
|
||||
%define host_triple powerpc64-suse-linux
|
||||
sed -i s,'${CMAKE_SYSTEM_PROCESSOR}','"PowerPC"',g ../cmake/modules/AddLLVM.cmake
|
||||
%endif
|
||||
%ifarch ppc64le
|
||||
%define host_triple powerpc64le-suse-linux
|
||||
sed -i s,'${CMAKE_SYSTEM_PROCESSOR}','"PowerPC"',g ../cmake/modules/AddLLVM.cmake
|
||||
%endif
|
||||
%ifarch s390x
|
||||
%define host_triple s390x-suse-linux
|
||||
sed -i s,'${CMAKE_SYSTEM_PROCESSOR}','"SystemZ"',g ../cmake/modules/AddLLVM.cmake
|
||||
%endif
|
||||
export CC=clang
|
||||
export CXX=clang++
|
||||
|
||||
cmake -G "Ninja" \
|
||||
-DBUILD_SHARED_LIBS=OFF \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
-DLLVM_ENABLE_ASSERTIONS=OFF \
|
||||
-DLLVM_TARGETS_TO_BUILD=host \
|
||||
-DCMAKE_C_FLAGS="-O0" \
|
||||
-DCMAKE_CXX_FLAGS="-O0" \
|
||||
-DLLVM_HOST_TRIPLE=%{host_triple} \
|
||||
-DLLDB_DISABLE_PYTHON=ON \
|
||||
%ifarch armv6hl
|
||||
-DCMAKE_C_FLAGS="-target armv6hl-suse-linux-gnueabi -mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp" \
|
||||
-DCMAKE_CXX_FLAGS="-target armv6hl-suse-linux-gnueabi -mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp" \
|
||||
-DLLVM_DEFAULT_TARGET_TRIPLE=armv6-unknown-linux-gnueabihf \
|
||||
%endif
|
||||
%ifarch armv7hl
|
||||
-DCMAKE_C_FLAGS="-mfloat-abi=hard -march=armv7-a -mtune=cortex-a9 -mfpu=vfpv3-d16" \
|
||||
-DCMAKE_CXX_FLAGS="-mfloat-abi=hard -march=armv7-a -mtune=cortex-a9 -mfpu=vfpv3-d16" \
|
||||
-DLLVM_DEFAULT_TARGET_TRIPLE=armv7l-unknown-linux-gnueabihf \
|
||||
%endif
|
||||
..
|
||||
|
||||
ninja %{?_smp_mflags} clang
|
||||
ninja %{?_smp_mflags} clang -v
|
||||
|
||||
popd
|
||||
pushd stage2
|
||||
@ -254,12 +266,11 @@ cmake -G "Ninja" \
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
%else
|
||||
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||
-DLLVM_HOST_TRIPLE=%{host_triple} \
|
||||
%endif
|
||||
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
|
||||
%ifarch armv6hl
|
||||
-DCMAKE_C_FLAGS="-mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp" \
|
||||
-DCMAKE_CXX_FLAGS="-mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp" \
|
||||
-DCMAKE_C_FLAGS="-target armv6hl-suse-linux-gnueabi -mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp" \
|
||||
-DCMAKE_CXX_FLAGS="-target armv6hl-suse-linux-gnueabi -mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp" \
|
||||
-DLLVM_DEFAULT_TARGET_TRIPLE=armv6-unknown-linux-gnueabihf \
|
||||
%endif
|
||||
%ifarch armv7hl
|
||||
@ -275,18 +286,17 @@ cmake -G "Ninja" \
|
||||
-DLLVM_ENABLE_ASSERTIONS=OFF \
|
||||
-DLLVM_ENABLE_PIC=ON \
|
||||
-DLLVM_BINUTILS_INCDIR=/usr/include \
|
||||
%if %{build_openmp}
|
||||
-DCLANG_DEFAULT_OPENMP_RUNTIME=libomp \
|
||||
%endif
|
||||
%ifarch %{ix86} x86_64
|
||||
-DLLVM_TARGETS_TO_BUILD="all" \
|
||||
%else
|
||||
-DLLVM_TARGETS_TO_BUILD=host \
|
||||
%endif
|
||||
-DLLVM_INCLUDE_TESTS=OFF \
|
||||
%if %{build_lldb}
|
||||
-DLLDB_DISABLE_PYTHON=ON \
|
||||
%endif
|
||||
..
|
||||
|
||||
ninja %{?_smp_mflags}
|
||||
ninja %{?_smp_mflags} -v
|
||||
|
||||
%check
|
||||
cd stage2
|
||||
@ -294,54 +304,11 @@ cd stage2
|
||||
%if 0%{!?qemu_user_space_build:1}
|
||||
# we just do not have enough memory with qemu emulation
|
||||
|
||||
# Rebuild to enable tests, if we enable
|
||||
# at first time gtest junk ends up in installed
|
||||
# cmake files
|
||||
rm CMakeCache.txt
|
||||
cmake -G "Ninja" \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
%ifarch %arm ppc64 ppc64le
|
||||
-DCMAKE_BUILD_TYPE=Release \
|
||||
%else
|
||||
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||
-DLLVM_HOST_TRIPLE=%{host_triple} \
|
||||
%endif
|
||||
-DCMAKE_INSTALL_PREFIX=%{_prefix} \
|
||||
%ifarch armv6hl
|
||||
-DCMAKE_C_FLAGS="-mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp" \
|
||||
-DCMAKE_CXX_FLAGS="-mfloat-abi=hard -march=armv6zk -mtune=arm1176jzf-s -mfpu=vfp" \
|
||||
-DLLVM_DEFAULT_TARGET_TRIPLE=armv6-unknown-linux-gnueabihf \
|
||||
%endif
|
||||
%ifarch armv7hl
|
||||
-DCMAKE_C_FLAGS="-mfloat-abi=hard -march=armv7-a -mtune=cortex-a9 -mfpu=vfpv3-d16" \
|
||||
-DCMAKE_CXX_FLAGS="-mfloat-abi=hard -march=armv7-a -mtune=cortex-a9 -mfpu=vfpv3-d16" \
|
||||
-DLLVM_DEFAULT_TARGET_TRIPLE=armv7l-unknown-linux-gnueabihf \
|
||||
%endif
|
||||
%if "%{_lib}" == "lib64"
|
||||
-DLLVM_LIBDIR_SUFFIX=64 \
|
||||
%endif
|
||||
-DLLVM_REQUIRES_RTTI=ON \
|
||||
-DLLVM_ENABLE_TIMESTAMPS=OFF \
|
||||
-DLLVM_ENABLE_ASSERTIONS=OFF \
|
||||
-DLLVM_ENABLE_PIC=ON \
|
||||
-DLLVM_BINUTILS_INCDIR=/usr/include \
|
||||
%if %{build_openmp}
|
||||
-DCLANG_DEFAULT_OPENMP_RUNTIME=libomp \
|
||||
%endif
|
||||
%ifarch %{ix86} x86_64
|
||||
-DLLVM_TARGETS_TO_BUILD="all" \
|
||||
%else
|
||||
-DLLVM_TARGETS_TO_BUILD=host \
|
||||
%endif
|
||||
-DLLVM_INCLUDE_TESTS=ON \
|
||||
-DLLVM_BUILD_TESTS=ON \
|
||||
..
|
||||
|
||||
ninja %{?_smp_mflags}
|
||||
ninja check
|
||||
ninja clang-test
|
||||
|
||||
%if %{build_libcxx}
|
||||
|
||||
ninja check-libcxx
|
||||
ninja check-libcxxabi
|
||||
%endif
|
||||
@ -356,7 +323,7 @@ cd ..
|
||||
|
||||
# Build man/html pages
|
||||
cd docs
|
||||
# Docs are prebuilt due to sphinx dependency -- cartman
|
||||
# Docs are prebuilt due to sphinx dependency
|
||||
#make -f Makefile.sphinx html man
|
||||
rm -rf %{buildroot}/usr/docs
|
||||
|
||||
@ -371,28 +338,6 @@ cp -r _build/man/* %{buildroot}/usr/share/man/man1
|
||||
cp -r _build/html/* %{buildroot}%{_docdir}/llvm-clang/html
|
||||
cd ../../..
|
||||
|
||||
# install scan-build et al
|
||||
install -d %{buildroot}%{_datadir}/clang
|
||||
install -d %{buildroot}%{py_sitedir}
|
||||
|
||||
pushd tools/clang/tools
|
||||
for file in scan-build/ccc-analyzer scan-build/scan-build \
|
||||
scan-view/scan-view; do
|
||||
install $file %{buildroot}%{_bindir}
|
||||
done
|
||||
for file in scan-build/scanview.css scan-build/sorttable.js; do
|
||||
install -m 644 $file %{buildroot}%{_datadir}/clang/
|
||||
done
|
||||
for file in scan-view/Reporter.py scan-view/ScanView.py \
|
||||
scan-view/startfile.py; do
|
||||
install -m 644 $file %{buildroot}%{py_sitedir}
|
||||
done
|
||||
install -d %{buildroot}%{py_sitedir}/Resources/
|
||||
for file in scan-view/Resources/*; do
|
||||
install -m 644 $file %{buildroot}%{py_sitedir}/Resources/
|
||||
done
|
||||
popd
|
||||
|
||||
# install python bindings
|
||||
install -d %{buildroot}%{py_sitedir}/clang
|
||||
pushd tools/clang/bindings/python
|
||||
@ -402,50 +347,31 @@ cp -r examples %{buildroot}%{_docdir}/python-clang
|
||||
install -d %{buildroot}%{_docdir}/python-clang/tests/cindex/INPUTS
|
||||
cp -r tests %{buildroot}%{_docdir}/python-clang
|
||||
popd
|
||||
pushd %{buildroot}%{_bindir}
|
||||
ln -s ccc-analyzer c++-analyzer
|
||||
popd
|
||||
|
||||
mkdir -p %{buildroot}%{_libdir}/bfd-plugins
|
||||
ln -s %{_libdir}/LLVMgold.so %{buildroot}%{_libdir}/bfd-plugins/
|
||||
|
||||
sed -i 's,RealBin/bin/clang,RealBin/clang,' \
|
||||
%{buildroot}%{_bindir}/scan-build
|
||||
|
||||
sed -i 's,RealBin/bin/ccc-analyzer,RealBin/ccc-analyzer,' \
|
||||
%{buildroot}%{_bindir}/scan-build
|
||||
|
||||
sed -i 's,RealBin/bin/ccc-analyzer,RealBin/ccc-analyzer,' \
|
||||
%{buildroot}%{_bindir}/scan-build
|
||||
|
||||
sed -i 's,$RealBin/sorttable.js,%{_datadir}/clang/sorttable.js,' \
|
||||
%{buildroot}%{_bindir}/scan-build
|
||||
|
||||
sed -i 's,$RealBin/scanview.css,%{_datadir}/clang/scanview.css,' \
|
||||
%{buildroot}%{_bindir}/scan-build
|
||||
|
||||
sed -i 's,RealBin/bin,RealBin,' \
|
||||
%{buildroot}%{_bindir}/scan-build
|
||||
|
||||
install -m 755 -d %{buildroot}%{_datadir}/vim/site/
|
||||
for i in ftdetect ftplugin indent syntax; do
|
||||
cp -r utils/vim/$i %{buildroot}%{_datadir}/vim/site/
|
||||
done
|
||||
mv utils/vim/README utils/vim/README.vim
|
||||
|
||||
mv %{buildroot}%{_prefix}/libexec/{c++,ccc}-analyzer %{buildroot}%{_bindir}
|
||||
chmod -x %{buildroot}%{_mandir}/man1/scan-build.1
|
||||
|
||||
# Stuff we don't want to include
|
||||
rm %{buildroot}%{_mandir}/man1/lit.1
|
||||
|
||||
%if %{build_openmp}
|
||||
rm -f %{buildroot}%{_libdir}/libgomp.so
|
||||
rm %{buildroot}%{_libdir}/libgomp.so
|
||||
rm %{buildroot}%{_libdir}/libiomp*.so
|
||||
%endif
|
||||
|
||||
%if %{build_libcxx}
|
||||
# Create an libc++.so as an ldscript
|
||||
rm %{buildroot}%{_libdir}/libc++.so
|
||||
cat > %{buildroot}%{_libdir}/libc++.so <<EOF
|
||||
GROUP ( %{_libdir}/libc++.so.1 %{_libdir}/libc++abi.so )
|
||||
EOF
|
||||
%if %{build_lldb}
|
||||
rm %{buildroot}%{_libdir}/liblldb*.a
|
||||
rm %{buildroot}%{_libdir}/liblldb.so
|
||||
rm -r %{buildroot}%{_includedir}/lldb
|
||||
%endif
|
||||
|
||||
%fdupes -s %{buildroot}%{_docdir}/%{name}
|
||||
@ -468,14 +394,14 @@ EOF
|
||||
%{_bindir}/bugpoint
|
||||
%{_bindir}/llc
|
||||
%{_bindir}/lli
|
||||
%{_bindir}/macho-dump
|
||||
%exclude %{_bindir}/%{name}-config
|
||||
%{_bindir}/%{name}*
|
||||
%exclude %{_bindir}/llvm-config
|
||||
%{_bindir}/llvm*
|
||||
%{_bindir}/obj2yaml
|
||||
%{_bindir}/opt
|
||||
%{_bindir}/sancov
|
||||
%{_bindir}/verify-uselistorder
|
||||
%{_bindir}/yaml2obj
|
||||
%exclude %{_mandir}/man1/%{name}-config.1%{ext_man}
|
||||
%exclude %{_mandir}/man1/llvm-config.1%{ext_man}
|
||||
%{_mandir}/man1/bugpoint.1%{ext_man}
|
||||
%{_mandir}/man1/tblgen.1%{ext_man}
|
||||
%{_mandir}/man1/llc.1%{ext_man}
|
||||
@ -490,25 +416,25 @@ EOF
|
||||
|
||||
%files clang
|
||||
%defattr(-,root,root)
|
||||
%{_bindir}/c-index-test
|
||||
%{_bindir}/c++-analyzer
|
||||
%{_bindir}/ccc-analyzer
|
||||
%{_bindir}/clang
|
||||
%{_bindir}/clang-*
|
||||
%{_bindir}/clang++
|
||||
%{_bindir}/clang-format
|
||||
%{_bindir}/ccc-analyzer
|
||||
%{_bindir}/c++-analyzer
|
||||
%{_bindir}/git-clang-format
|
||||
%{_bindir}/modularize
|
||||
%{_bindir}/scan-build
|
||||
%{_bindir}/scan-view
|
||||
%{py_sitedir}/ScanView.py
|
||||
%{py_sitedir}/Reporter.py
|
||||
%{py_sitedir}/startfile.py
|
||||
%{py_sitedir}/Resources
|
||||
%{_datadir}/clang
|
||||
%{_datadir}/scan-build
|
||||
%{_datadir}/scan-view
|
||||
%{_mandir}/man1/clang.1%{ext_man}
|
||||
%{_mandir}/man1/scan-build.1%{ext_man}
|
||||
%{_libdir}/libLTO.*
|
||||
%if %{build_openmp}
|
||||
%{_libdir}/libomp.so
|
||||
%{_libdir}/libiomp5.so
|
||||
%endif
|
||||
%if %{build_libcxx}
|
||||
%{_libdir}/libc++*
|
||||
@ -534,16 +460,16 @@ EOF
|
||||
|
||||
%files devel
|
||||
%defattr(-,root,root,-)
|
||||
%{_bindir}/%{name}-config
|
||||
%{_bindir}/llvm-config
|
||||
%{_libdir}/libLLVM*.so
|
||||
%{_libdir}/BugpointPasses.*
|
||||
%{_libdir}/LLVMHello.*
|
||||
%doc %{_mandir}/man1/%{name}-config.1%{ext_man}
|
||||
%{_includedir}/%{name}/
|
||||
%{_includedir}/%{name}-c/
|
||||
%dir %{_datadir}/%{name}
|
||||
%{_datadir}/%{name}/cmake/
|
||||
%doc %{_docdir}/%{name}
|
||||
%doc %{_mandir}/man1/llvm-config.1%{ext_man}
|
||||
%{_includedir}/llvm/
|
||||
%{_includedir}/llvm-c/
|
||||
%dir %{_datadir}/llvm
|
||||
%{_datadir}/llvm/cmake/
|
||||
%doc %{_docdir}/llvm
|
||||
|
||||
%files vim-plugins
|
||||
%defattr(-,root,root,-)
|
||||
@ -556,7 +482,13 @@ EOF
|
||||
%{py_sitedir}/clang/__init__.py
|
||||
%{py_sitedir}/clang/cindex.py
|
||||
%{py_sitedir}/clang/enumerations.py
|
||||
|
||||
%doc %{_docdir}/python-clang
|
||||
|
||||
%if %{build_lldb}
|
||||
%files -n lldb
|
||||
%defattr(-,root,root,-)
|
||||
%{_libdir}/liblldb.so.*
|
||||
%{_bindir}/lldb*
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:8d8a224e5689596a35652fda87e4be29853c4b85fbc7a6562019badfad779f2a
|
||||
size 2251108
|
3
openmp-3.8.0.src.tar.xz
Normal file
3
openmp-3.8.0.src.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:92510e3f62e3de955e3a0b6708cebee1ca344d92fb02369cba5fdd5c68f773a0
|
||||
size 2233144
|
110
revert-cmake-soname.patch
Normal file
110
revert-cmake-soname.patch
Normal file
@ -0,0 +1,110 @@
|
||||
Index: llvm-3.8.0.src/cmake/modules/AddLLVM.cmake
|
||||
===================================================================
|
||||
--- llvm-3.8.0.src.orig/cmake/modules/AddLLVM.cmake
|
||||
+++ llvm-3.8.0.src/cmake/modules/AddLLVM.cmake
|
||||
@@ -326,12 +326,10 @@ endfunction(set_windows_version_resource
|
||||
# Same semantics as target_link_libraries().
|
||||
# ADDITIONAL_HEADERS
|
||||
# May specify header files for IDE generators.
|
||||
-# SONAME
|
||||
-# Should set SONAME link flags and create symlinks
|
||||
# )
|
||||
function(llvm_add_library name)
|
||||
cmake_parse_arguments(ARG
|
||||
- "MODULE;SHARED;STATIC;OBJECT;DISABLE_LLVM_LINK_LLVM_DYLIB;SONAME"
|
||||
+ "MODULE;SHARED;STATIC;OBJECT;DISABLE_LLVM_LINK_LLVM_DYLIB"
|
||||
"OUTPUT_NAME"
|
||||
"ADDITIONAL_HEADERS;DEPENDS;LINK_COMPONENTS;LINK_LIBS;OBJLIBS"
|
||||
${ARGN})
|
||||
@@ -436,6 +434,11 @@ function(llvm_add_library name)
|
||||
PREFIX ""
|
||||
)
|
||||
endif()
|
||||
+
|
||||
+ set_target_properties(${name}
|
||||
+ PROPERTIES
|
||||
+ SOVERSION ${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}
|
||||
+ VERSION ${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}${LLVM_VERSION_SUFFIX})
|
||||
endif()
|
||||
|
||||
if(ARG_MODULE OR ARG_SHARED)
|
||||
@@ -450,24 +453,6 @@ function(llvm_add_library name)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
- if(ARG_SHARED AND UNIX)
|
||||
- if(NOT APPLE AND ARG_SONAME)
|
||||
- get_target_property(output_name ${name} OUTPUT_NAME)
|
||||
- if(${output_name} STREQUAL "output_name-NOTFOUND")
|
||||
- set(output_name ${name})
|
||||
- endif()
|
||||
- set(library_name ${output_name}-${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}${LLVM_VERSION_SUFFIX})
|
||||
- set(api_name ${output_name}-${LLVM_VERSION_MAJOR}.${LLVM_VERSION_MINOR}.${LLVM_VERSION_PATCH}${LLVM_VERSION_SUFFIX})
|
||||
- set_target_properties(${name} PROPERTIES OUTPUT_NAME ${library_name})
|
||||
- llvm_install_library_symlink(${api_name} ${library_name} SHARED
|
||||
- COMPONENT ${name}
|
||||
- ALWAYS_GENERATE)
|
||||
- llvm_install_library_symlink(${output_name} ${library_name} SHARED
|
||||
- COMPONENT ${name}
|
||||
- ALWAYS_GENERATE)
|
||||
- endif()
|
||||
- endif()
|
||||
-
|
||||
if (DEFINED LLVM_LINK_COMPONENTS OR DEFINED ARG_LINK_COMPONENTS)
|
||||
if (LLVM_LINK_LLVM_DYLIB AND NOT ARG_DISABLE_LLVM_LINK_LLVM_DYLIB)
|
||||
set(llvm_libs LLVM)
|
||||
@@ -1073,41 +1058,6 @@ function(add_lit_testsuites project dire
|
||||
endif()
|
||||
endfunction()
|
||||
|
||||
-function(llvm_install_library_symlink name dest type)
|
||||
- cmake_parse_arguments(ARG "ALWAYS_GENERATE" "COMPONENT" "" ${ARGN})
|
||||
- foreach(path ${CMAKE_MODULE_PATH})
|
||||
- if(EXISTS ${path}/LLVMInstallSymlink.cmake)
|
||||
- set(INSTALL_SYMLINK ${path}/LLVMInstallSymlink.cmake)
|
||||
- break()
|
||||
- endif()
|
||||
- endforeach()
|
||||
-
|
||||
- set(component ${ARG_COMPONENT})
|
||||
- if(NOT component)
|
||||
- set(component ${name})
|
||||
- endif()
|
||||
-
|
||||
- set(full_name ${CMAKE_${type}_LIBRARY_PREFIX}${name}${CMAKE_${type}_LIBRARY_SUFFIX})
|
||||
- set(full_dest ${CMAKE_${type}_LIBRARY_PREFIX}${dest}${CMAKE_${type}_LIBRARY_SUFFIX})
|
||||
-
|
||||
- set(output_dir lib${LLVM_LIBDIR_SUFFIX})
|
||||
- if(WIN32 AND "${type}" STREQUAL "SHARED")
|
||||
- set(output_dir bin)
|
||||
- endif()
|
||||
-
|
||||
- install(SCRIPT ${INSTALL_SYMLINK}
|
||||
- CODE "install_symlink(${full_name} ${full_dest} ${output_dir})"
|
||||
- COMPONENT ${component})
|
||||
-
|
||||
- if (NOT CMAKE_CONFIGURATION_TYPES AND NOT ARG_ALWAYS_GENERATE)
|
||||
- add_custom_target(install-${name}
|
||||
- DEPENDS ${name} ${dest} install-${dest}
|
||||
- COMMAND "${CMAKE_COMMAND}"
|
||||
- -DCMAKE_INSTALL_COMPONENT=${name}
|
||||
- -P "${CMAKE_BINARY_DIR}/cmake_install.cmake")
|
||||
- endif()
|
||||
-endfunction()
|
||||
-
|
||||
function(llvm_install_symlink name dest)
|
||||
cmake_parse_arguments(ARG "ALWAYS_GENERATE" "" "" ${ARGN})
|
||||
foreach(path ${CMAKE_MODULE_PATH})
|
||||
Index: llvm-3.8.0.src/tools/llvm-shlib/CMakeLists.txt
|
||||
===================================================================
|
||||
--- llvm-3.8.0.src.orig/tools/llvm-shlib/CMakeLists.txt
|
||||
+++ llvm-3.8.0.src/tools/llvm-shlib/CMakeLists.txt
|
||||
@@ -38,7 +38,7 @@ if(LLVM_DYLIB_EXPORTED_SYMBOL_FILE)
|
||||
add_custom_target(libLLVMExports DEPENDS ${LLVM_EXPORTED_SYMBOL_FILE})
|
||||
endif()
|
||||
|
||||
-add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB SONAME ${SOURCES})
|
||||
+add_llvm_library(LLVM SHARED DISABLE_LLVM_LINK_LLVM_DYLIB ${SOURCES})
|
||||
|
||||
list(REMOVE_DUPLICATES LIB_NAMES)
|
||||
if("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") # FIXME: It should be "GNU ld for elf"
|
@ -1,7 +1,7 @@
|
||||
Index: cfe-3.7.0.src/lib/Basic/Version.cpp
|
||||
Index: cfe-3.8.0.src/lib/Basic/Version.cpp
|
||||
===================================================================
|
||||
--- cfe-3.7.0.src/lib/Basic/Version.cpp
|
||||
+++ cfe-3.7.0.src/lib/Basic/Version.cpp
|
||||
--- cfe-3.8.0.src/lib/Basic/Version.cpp
|
||||
+++ cfe-3.8.0.src/lib/Basic/Version.cpp
|
||||
@@ -66,19 +66,11 @@ std::string getLLVMRepositoryPath() {
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user