patch llvm-config for x86_64 support and %{_libdir}/llvm [release 3.5.0-2mamba;Fri Sep 19 2014]
This commit is contained in:
parent
cc8c9317cf
commit
b2cbe200e9
@ -1,29 +0,0 @@
|
|||||||
diff -Nru llvm-3.1.src.orig/tools/clang/lib/Driver/ToolChains.cpp llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp
|
|
||||||
--- llvm-3.1.src.orig/tools/clang/lib/Driver/ToolChains.cpp 2012-05-12 02:16:02.000000000 +0200
|
|
||||||
+++ llvm-3.1.src/tools/clang/lib/Driver/ToolChains.cpp 2014-04-29 22:05:47.116054539 +0200
|
|
||||||
@@ -1185,7 +1185,8 @@
|
|
||||||
static const char *const ARMLibDirs[] = { "/lib" };
|
|
||||||
static const char *const ARMTriples[] = {
|
|
||||||
"arm-linux-gnueabi",
|
|
||||||
- "arm-linux-androideabi"
|
|
||||||
+ "arm-linux-androideabi",
|
|
||||||
+ "arm-openmamba-linux-gnueabi"
|
|
||||||
};
|
|
||||||
|
|
||||||
static const char *const X86_64LibDirs[] = { "/lib64", "/lib" };
|
|
||||||
@@ -1193,6 +1194,7 @@
|
|
||||||
"x86_64-linux-gnu",
|
|
||||||
"x86_64-unknown-linux-gnu",
|
|
||||||
"x86_64-pc-linux-gnu",
|
|
||||||
+ "x86_64-openmamba-linux-gnu",
|
|
||||||
"x86_64-redhat-linux6E",
|
|
||||||
"x86_64-redhat-linux",
|
|
||||||
"x86_64-suse-linux",
|
|
||||||
@@ -1206,6 +1208,7 @@
|
|
||||||
"i686-pc-linux-gnu",
|
|
||||||
"i486-linux-gnu",
|
|
||||||
"i386-linux-gnu",
|
|
||||||
+ "i586-openmamba-linux-gnu",
|
|
||||||
"i686-redhat-linux",
|
|
||||||
"i586-redhat-linux",
|
|
||||||
"i386-redhat-linux",
|
|
23
llvm-3.4-default-to-i586.patch
Normal file
23
llvm-3.4-default-to-i586.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
diff -Nru llvm-3.4.orig/tools/clang/lib/Driver/Tools.cpp llvm-3.4/tools/clang/lib/Driver/Tools.cpp
|
||||||
|
--- llvm-3.4.orig/clang-3.4/lib/Driver/Tools.cpp 2013-12-09 03:59:27.000000000 +0100
|
||||||
|
+++ llvm-3.4/clang-3.4/lib/Driver/Tools.cpp 2014-02-17 10:53:55.496716319 +0100
|
||||||
|
@@ -1309,7 +1309,7 @@
|
||||||
|
}
|
||||||
|
|
||||||
|
// All x86 devices running Android have core2 as their common
|
||||||
|
- // denominator. This makes a better choice than pentium4.
|
||||||
|
+ // denominator. This makes a better choice than i586.
|
||||||
|
if (Triple.getEnvironment() == llvm::Triple::Android)
|
||||||
|
return "core2";
|
||||||
|
|
||||||
|
@@ -1327,8 +1327,8 @@
|
||||||
|
case llvm::Triple::Bitrig:
|
||||||
|
return "i686";
|
||||||
|
default:
|
||||||
|
- // Fallback to p4.
|
||||||
|
- return "pentium4";
|
||||||
|
+ // Fallback to i586.
|
||||||
|
+ return "i586";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
28
llvm-3.5.0-buildfix-CommandLine_h-getOption.patch
Normal file
28
llvm-3.5.0-buildfix-CommandLine_h-getOption.patch
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
Index: llvm-toolchain-snapshot-3.5~svn211313/tools/bugpoint/Makefile
|
||||||
|
===================================================================
|
||||||
|
--- llvm-toolchain-snapshot-3.5~svn211313.orig/tools/bugpoint/Makefile
|
||||||
|
+++ llvm-toolchain-snapshot-3.5~svn211313/tools/bugpoint/Makefile
|
||||||
|
@@ -12,6 +12,9 @@ TOOLNAME := bugpoint
|
||||||
|
LINK_COMPONENTS := asmparser instrumentation scalaropts ipo linker bitreader \
|
||||||
|
bitwriter irreader vectorize objcarcopts codegen
|
||||||
|
|
||||||
|
+# Crappy workaround to make sure it links correctly.
|
||||||
|
+LLVMLibsOptions := ../../lib/IR/Release*/Pass.o
|
||||||
|
+
|
||||||
|
# Support plugins.
|
||||||
|
NO_DEAD_STRIP := 1
|
||||||
|
|
||||||
|
Index: llvm-toolchain-snapshot-3.5~svn211313/tools/opt/Makefile
|
||||||
|
===================================================================
|
||||||
|
--- llvm-toolchain-snapshot-3.5~svn211313.orig/tools/opt/Makefile
|
||||||
|
+++ llvm-toolchain-snapshot-3.5~svn211313/tools/opt/Makefile
|
||||||
|
@@ -10,7 +10,9 @@
|
||||||
|
LEVEL := ../..
|
||||||
|
TOOLNAME := opt
|
||||||
|
LINK_COMPONENTS := bitreader bitwriter asmparser irreader instrumentation scalaropts objcarcopts ipo vectorize all-targets codegen
|
||||||
|
+# Crappy workaround to make sure it links correctly.
|
||||||
|
|
||||||
|
+LLVMLibsOptions := ../../lib/IR/Release*/Pass.o
|
||||||
|
# Support plugins.
|
||||||
|
NO_DEAD_STRIP := 1
|
||||||
|
|
31
llvm-3.5.0-llvm-config.patch
Normal file
31
llvm-3.5.0-llvm-config.patch
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
--- llvm-3.5.0.src.orig/tools/llvm-config/llvm-config.cpp 2014-09-10 15:06:29.305956568 +0200
|
||||||
|
+++ llvm-3.5.0.src/tools/llvm-config/llvm-config.cpp 2014-09-19 00:41:14.963576743 +0200
|
||||||
|
@@ -243,16 +243,16 @@
|
||||||
|
case MakefileStyle:
|
||||||
|
ActivePrefix = ActiveObjRoot;
|
||||||
|
ActiveBinDir = ActiveObjRoot + "/" + build_mode + "/bin";
|
||||||
|
- ActiveLibDir = ActiveObjRoot + "/" + build_mode + "/lib";
|
||||||
|
+ ActiveLibDir = ActiveObjRoot + "/" + build_mode + "/lib/llvm";
|
||||||
|
break;
|
||||||
|
case CMakeStyle:
|
||||||
|
ActiveBinDir = ActiveObjRoot + "/bin";
|
||||||
|
- ActiveLibDir = ActiveObjRoot + "/lib";
|
||||||
|
+ ActiveLibDir = ActiveObjRoot + "/lib/llvm";
|
||||||
|
break;
|
||||||
|
case CMakeBuildModeStyle:
|
||||||
|
ActivePrefix = ActiveObjRoot;
|
||||||
|
ActiveBinDir = ActiveObjRoot + "/bin/" + build_mode;
|
||||||
|
- ActiveLibDir = ActiveObjRoot + "/lib/" + build_mode;
|
||||||
|
+ ActiveLibDir = ActiveObjRoot + "/lib/llvm" + build_mode;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -263,7 +263,7 @@
|
||||||
|
ActivePrefix = CurrentExecPrefix;
|
||||||
|
ActiveIncludeDir = ActivePrefix + "/include";
|
||||||
|
ActiveBinDir = ActivePrefix + "/bin";
|
||||||
|
- ActiveLibDir = ActivePrefix + "/lib";
|
||||||
|
+ ActiveLibDir = ActivePrefix + "/lib/llvm";
|
||||||
|
ActiveIncludeOption = "-I" + ActiveIncludeDir;
|
||||||
|
}
|
||||||
|
|
32
llvm-3.5.0-openmamba-triplet.patch
Normal file
32
llvm-3.5.0-openmamba-triplet.patch
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
diff -ru llvm-3.5.0.src/tools/clang/lib/Driver/ToolChains.cpp llvm-3.5.0.src.orig/tools/clang/lib/Driver/ToolChains.cpp
|
||||||
|
--- llvm-3.5.0.src/tools/clang/lib/Driver/ToolChains.cpp 2014-09-10 15:12:02.648826083 +0200
|
||||||
|
+++ llvm-3.5.0.src.orig/tools/clang/lib/Driver/ToolChains.cpp 2014-09-10 15:09:24.326886686 +0200
|
||||||
|
@@ -1322,7 +1322,8 @@
|
||||||
|
|
||||||
|
static const char *const ARMLibDirs[] = { "/lib" };
|
||||||
|
static const char *const ARMTriples[] = { "arm-linux-gnueabi",
|
||||||
|
- "arm-linux-androideabi" };
|
||||||
|
+ "arm-linux-androideabi",
|
||||||
|
+ "arm-openmamba-linux-gnueabi" };
|
||||||
|
static const char *const ARMHFTriples[] = { "arm-linux-gnueabihf",
|
||||||
|
"armv7hl-redhat-linux-gnueabi" };
|
||||||
|
static const char *const ARMebLibDirs[] = { "/lib" };
|
||||||
|
@@ -1333,7 +1334,7 @@
|
||||||
|
|
||||||
|
static const char *const X86_64LibDirs[] = { "/lib64", "/lib" };
|
||||||
|
static const char *const X86_64Triples[] = {
|
||||||
|
- "x86_64-linux-gnu", "x86_64-unknown-linux-gnu", "x86_64-pc-linux-gnu",
|
||||||
|
+ "x86_64-linux-gnu", "x86_64-unknown-linux-gnu", "x86_64-pc-linux-gnu", "x86_64-openmamba-linux-gnu",
|
||||||
|
"x86_64-redhat-linux6E", "x86_64-redhat-linux", "x86_64-suse-linux",
|
||||||
|
"x86_64-manbo-linux-gnu", "x86_64-linux-gnu", "x86_64-slackware-linux",
|
||||||
|
"x86_64-linux-android", "x86_64-unknown-linux"
|
||||||
|
@@ -1341,7 +1342,7 @@
|
||||||
|
static const char *const X32LibDirs[] = { "/libx32" };
|
||||||
|
static const char *const X86LibDirs[] = { "/lib32", "/lib" };
|
||||||
|
static const char *const X86Triples[] = {
|
||||||
|
- "i686-linux-gnu", "i686-pc-linux-gnu", "i486-linux-gnu", "i386-linux-gnu",
|
||||||
|
+ "i686-linux-gnu", "i686-pc-linux-gnu", "i486-linux-gnu", "i386-linux-gnu", "i586-openmamba-linux-gnu",
|
||||||
|
"i386-redhat-linux6E", "i686-redhat-linux", "i586-redhat-linux",
|
||||||
|
"i386-redhat-linux", "i586-suse-linux", "i486-slackware-linux",
|
||||||
|
"i686-montavista-linux", "i686-linux-android", "i586-linux-gnu"
|
||||||
|
Only in llvm-3.5.0.src.orig/tools/clang/lib/Driver: ToolChains.cpp.rej
|
31
llvm-3.5.0-x86_64-llvm-config.patch
Normal file
31
llvm-3.5.0-x86_64-llvm-config.patch
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
--- llvm-3.5.0.src.orig/tools/llvm-config/llvm-config.cpp 2014-09-10 15:06:29.305956568 +0200
|
||||||
|
+++ llvm-3.5.0.src/tools/llvm-config/llvm-config.cpp 2014-09-19 00:41:14.963576743 +0200
|
||||||
|
@@ -243,16 +243,16 @@
|
||||||
|
case MakefileStyle:
|
||||||
|
ActivePrefix = ActiveObjRoot;
|
||||||
|
ActiveBinDir = ActiveObjRoot + "/" + build_mode + "/bin";
|
||||||
|
- ActiveLibDir = ActiveObjRoot + "/" + build_mode + "/lib";
|
||||||
|
+ ActiveLibDir = ActiveObjRoot + "/" + build_mode + "/lib64/llvm";
|
||||||
|
break;
|
||||||
|
case CMakeStyle:
|
||||||
|
ActiveBinDir = ActiveObjRoot + "/bin";
|
||||||
|
- ActiveLibDir = ActiveObjRoot + "/lib";
|
||||||
|
+ ActiveLibDir = ActiveObjRoot + "/lib64/llvm";
|
||||||
|
break;
|
||||||
|
case CMakeBuildModeStyle:
|
||||||
|
ActivePrefix = ActiveObjRoot;
|
||||||
|
ActiveBinDir = ActiveObjRoot + "/bin/" + build_mode;
|
||||||
|
- ActiveLibDir = ActiveObjRoot + "/lib/" + build_mode;
|
||||||
|
+ ActiveLibDir = ActiveObjRoot + "/lib64/llvm" + build_mode;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -263,7 +263,7 @@
|
||||||
|
ActivePrefix = CurrentExecPrefix;
|
||||||
|
ActiveIncludeDir = ActivePrefix + "/include";
|
||||||
|
ActiveBinDir = ActivePrefix + "/bin";
|
||||||
|
- ActiveLibDir = ActivePrefix + "/lib";
|
||||||
|
+ ActiveLibDir = ActivePrefix + "/lib64/llvm";
|
||||||
|
ActiveIncludeOption = "-I" + ActiveIncludeDir;
|
||||||
|
}
|
||||||
|
|
271
llvm.spec
271
llvm.spec
@ -1,5 +1,6 @@
|
|||||||
|
%define gccver %(gcc -dumpversion)
|
||||||
Name: llvm
|
Name: llvm
|
||||||
Version: 3.1
|
Version: 3.5.0
|
||||||
Release: 2mamba
|
Release: 2mamba
|
||||||
Summary: The Low Level Virtual Machine
|
Summary: The Low Level Virtual Machine
|
||||||
Group: Development/Languages
|
Group: Development/Languages
|
||||||
@ -7,21 +8,31 @@ Vendor: openmamba
|
|||||||
Distribution: openmamba
|
Distribution: openmamba
|
||||||
Packager: Davide Madrisan <davide.madrisan@gmail.com>
|
Packager: Davide Madrisan <davide.madrisan@gmail.com>
|
||||||
URL: http://llvm.org/
|
URL: http://llvm.org/
|
||||||
Source0: http://llvm.org/releases/%{version}/llvm-%{version}.src.tar.gz
|
Source0: http://llvm.org/releases/%{version}/llvm-%{version}.src.tar.xz
|
||||||
Source1: http://llvm.org/releases/%{version}/clang-%{version}.src.tar.gz
|
Source1: http://llvm.org/releases/%{version}/cfe-%{version}.src.tar.xz
|
||||||
Patch0: %{name}-3.1-llvm-config.patch
|
Patch0: %{name}-3.1-llvm-config.patch
|
||||||
Patch1: llvm-3.1-openmamba-triplet.patch
|
Patch1: llvm-3.4-default-to-i586.patch
|
||||||
|
Patch2: llvm-3.5.0-openmamba-triplet.patch
|
||||||
|
Patch3: llvm-3.5.0-buildfix-CommandLine_h-getOption.patch
|
||||||
|
Patch4: llvm-3.5.0-x86_64-llvm-config.patch
|
||||||
|
Patch5: llvm-3.5.0-llvm-config.patch
|
||||||
License: NCSA
|
License: NCSA
|
||||||
## AUTOBUILDREQ-BEGIN
|
## AUTOBUILDREQ-BEGIN
|
||||||
BuildRequires: gcc-c++
|
|
||||||
BuildRequires: glibc-devel
|
BuildRequires: glibc-devel
|
||||||
|
BuildRequires: libedit-devel
|
||||||
BuildRequires: libgcc
|
BuildRequires: libgcc
|
||||||
|
BuildRequires: libncurses-devel
|
||||||
|
BuildRequires: libperl
|
||||||
BuildRequires: libstdc++6-devel
|
BuildRequires: libstdc++6-devel
|
||||||
BuildRequires: ocaml
|
BuildRequires: libxml2-devel
|
||||||
|
BuildRequires: libz-devel
|
||||||
BuildRequires: perl-devel
|
BuildRequires: perl-devel
|
||||||
## AUTOBUILDREQ-END
|
## AUTOBUILDREQ-END
|
||||||
|
BuildRequires: gcc-c++
|
||||||
|
BuildRequires: glibc-devel
|
||||||
BuildRequires: ocaml
|
BuildRequires: ocaml
|
||||||
Requires: lib%{name} = %{?epoch:%epoch:}%{version}-%{release}
|
#Requires: gcc >= %{gccver}
|
||||||
|
#Requires: gcc-c++ >= %{gccver}
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@ -48,24 +59,41 @@ The LLVM Project is a collection of modular and reusable compiler and toolchain
|
|||||||
Despite its name, LLVM has little to do with traditional virtual machines, though it does provide helpful libraries that can be used to build them.
|
Despite its name, LLVM has little to do with traditional virtual machines, though it does provide helpful libraries that can be used to build them.
|
||||||
This package contains library and header files needed to develop new native programs that use the LLVM infrastructure.
|
This package contains library and header files needed to develop new native programs that use the LLVM infrastructure.
|
||||||
|
|
||||||
%package clang
|
%package devel
|
||||||
|
Summary: Libraries and header files for LLVM
|
||||||
|
Group: Development/Languages
|
||||||
|
Requires: %{name} = %{?epoch:%epoch:}%{version}-%{release}
|
||||||
|
Requires: libstdc++6-devel
|
||||||
|
|
||||||
|
%description devel
|
||||||
|
The LLVM Project is a collection of modular and reusable compiler and toolchain technologies.
|
||||||
|
Despite its name, LLVM has little to do with traditional virtual machines, though it does provide helpful libraries that can be used to build them.
|
||||||
|
This package contains library and header files needed to develop new native programs that use the LLVM infrastructure.
|
||||||
|
|
||||||
|
%package -n clang
|
||||||
Summary: LLVM native C/C++/Objective-C compiler
|
Summary: LLVM native C/C++/Objective-C compiler
|
||||||
Group: Development/Languages
|
Group: Development/Languages
|
||||||
Requires: gcc-c++
|
Requires: gcc-c++
|
||||||
|
Provides: cfe
|
||||||
|
Provides: llvm-clang
|
||||||
|
Obsoletes: llvm-clang
|
||||||
|
|
||||||
%description clang
|
%description -n clang
|
||||||
Clang is an "LLVM native" C/C++/Objective-C compiler, which aims to deliver amazingly fast compiles, extremely useful error and warning messages and to provide a platform for building great source level tools.
|
Cfe is an "LLVM native" C/C++/Objective-C compiler, which aims to deliver amazingly fast compiles, extremely useful error and warning messages and to provide a platform for building great source level tools.
|
||||||
The Clang Static Analyzer is a tool automatically finds bugs in your code, and is a great example of the sort of tool that can be built using the Clang frontend as a library to parse C/C++ code.
|
The Cfe Static Analyzer is a tool automatically finds bugs in your code, and is a great example of the sort of tool that can be built using the Cfe frontend as a library to parse C/C++ code.
|
||||||
|
|
||||||
%package clang-devel
|
%package -n clang-devel
|
||||||
Summary: Libraries and header files for LLVM clang
|
Summary: Libraries and header files for LLVM cfe
|
||||||
Group: Development/Languages
|
Group: Development/Languages
|
||||||
Requires: %{name}-clang = %{?epoch:%epoch:}%{version}-%{release}
|
Requires: clang = %{?epoch:%epoch:}%{version}-%{release}
|
||||||
|
Provides: cfe-devel
|
||||||
|
Provides: llvm-clang-devel
|
||||||
|
Obsoletes: llvm-clang-devel
|
||||||
|
|
||||||
%description clang-devel
|
%description -n clang-devel
|
||||||
Clang is an "LLVM native" C/C++/Objective-C compiler, which aims to deliver amazingly fast compiles, extremely useful error and warning messages and to provide a platform for building great source level tools.
|
Cfe is an "LLVM native" C/C++/Objective-C compiler, which aims to deliver amazingly fast compiles, extremely useful error and warning messages and to provide a platform for building great source level tools.
|
||||||
The Clang Static Analyzer is a tool automatically finds bugs in your code, and is a great example of the sort of tool that can be built using the Clang frontend as a library to parse C/C++ code.
|
The Cfe Static Analyzer is a tool automatically finds bugs in your code, and is a great example of the sort of tool that can be built using the Cfe frontend as a library to parse C/C++ code.
|
||||||
This package contains header files for the Clang compiler.
|
This package contains header files for the Cfe compiler.
|
||||||
|
|
||||||
%package ocaml
|
%package ocaml
|
||||||
Summary: OCaml binding for LLVM
|
Summary: OCaml binding for LLVM
|
||||||
@ -79,37 +107,50 @@ OCaml binding for LLVM.
|
|||||||
%package ocaml-devel
|
%package ocaml-devel
|
||||||
Summary: Development files for %{name}-ocaml
|
Summary: Development files for %{name}-ocaml
|
||||||
Group: Development/Libraries
|
Group: Development/Libraries
|
||||||
Requires: lib%{name}-devel = %{?epoch:%epoch:}%{version}-%{release}
|
Requires: %{name}-devel = %{?epoch:%epoch:}%{version}-%{release}
|
||||||
Requires: %{name}-ocaml = %{?epoch:%epoch:}%{version}-%{release}
|
Requires: %{name}-ocaml = %{?epoch:%epoch:}%{version}-%{release}
|
||||||
Requires: ocaml
|
Requires: ocaml
|
||||||
|
|
||||||
%description ocaml-devel
|
%description ocaml-devel
|
||||||
The %{name}-ocaml-devel package contains libraries and signature files
|
The %{name}-ocaml-devel package contains libraries and signature files for developing applications that use %{name}-ocaml.
|
||||||
for developing applications that use %{name}-ocaml.
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -a1 -n llvm-%{version}.src
|
%setup -q -a1 -n %{name}-%{version}.src
|
||||||
%patch0 -p1
|
#-D -T
|
||||||
|
#:<< __EOF
|
||||||
|
#%patch0 -p1
|
||||||
|
#%patch1 -p1
|
||||||
|
mv cfe-%{version}.src tools/clang
|
||||||
|
%patch2 -p1
|
||||||
|
%patch3 -p1
|
||||||
%ifarch x86_64
|
%ifarch x86_64
|
||||||
sed -i "s|/lib/llvm|/%{_lib}/llvm|" tools/llvm-config/llvm-config.cpp
|
%patch4 -p1
|
||||||
|
%else
|
||||||
|
%patch5 -p1
|
||||||
%endif
|
%endif
|
||||||
mv clang-%{version}.src tools/clang
|
|
||||||
%patch1 -p1
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
#:<< ___EOF
|
||||||
%configure \
|
%configure \
|
||||||
|
--with-arch=%{_target_cpu} \
|
||||||
--libdir=%{_libdir}/%{name} \
|
--libdir=%{_libdir}/%{name} \
|
||||||
--datadir=%{_libdir}/%{name} \
|
--datadir=%{_libdir}/%{name} \
|
||||||
--disable-assertions \
|
--disable-assertions \
|
||||||
--enable-debug-runtime \
|
--disable-expensive-checks \
|
||||||
|
--disable-debug-runtime \
|
||||||
--enable-jit \
|
--enable-jit \
|
||||||
--enable-shared \
|
--enable-shared \
|
||||||
--with-c-include-dirs=%{_includedir}:$(find %{_prefix}/lib/gcc/*/* -maxdepth 0 -type d)/include \
|
--enable-lffi \
|
||||||
--with-cxx-include-root=$(find %{_includedir}/c++/* -maxdepth 0 -type d) \
|
--enable-targets=all \
|
||||||
--with-cxx-include-arch=%{_arch}-%{_vendor}-%{_os}
|
--with-gcc-toolchain=%{_prefix} \
|
||||||
|
--with-c-include-dirs=%{_includedir}:%{_libdir}/gcc/%{_target_platform}/%{gccver}/include \
|
||||||
|
--with-cxx-include-root=%{_includedir}/c++/%{gccver} \
|
||||||
|
--with-cxx-include-arch=%{_target_platform} \
|
||||||
|
--with-extra-ld-options="-Wl,-R,%{_libdir}/gcc/%{_target_platform}/%{gccver}"
|
||||||
# --enable-doxygen
|
# --enable-doxygen
|
||||||
|
|
||||||
sed -i 's|(PROJ_prefix)/lib|(PROJ_prefix)/%{_lib}/%{name}|g' Makefile.config
|
sed -i 's|(PROJ_prefix)/lib|(PROJ_prefix)/%{_lib}/%{name}|g' Makefile.config
|
||||||
|
___EOF
|
||||||
|
|
||||||
%make
|
%make
|
||||||
|
|
||||||
@ -124,22 +165,22 @@ EOF
|
|||||||
|
|
||||||
# Static analyzer not installed by default:
|
# Static analyzer not installed by default:
|
||||||
# http://clang-analyzer.llvm.org/installation#OtherPlatforms
|
# http://clang-analyzer.llvm.org/installation#OtherPlatforms
|
||||||
install -d %{buildroot}%{_libdir}/clang-analyzer
|
install -d %{buildroot}%{_libdir}/cfe-analyzer
|
||||||
# create launchers
|
# create launchers
|
||||||
for f in scan-{build,view}; do
|
for f in scan-{build,view}; do
|
||||||
ln -s %{_libdir}/clang-analyzer/$f/$f %{buildroot}%{_bindir}/$f
|
ln -s %{_libdir}/cfe-analyzer/$f/$f %{buildroot}%{_bindir}/$f
|
||||||
done
|
done
|
||||||
|
|
||||||
( cd tools/clang/tools &&
|
( cd tools/clang/tools &&
|
||||||
cp -pr scan-{build,view} %{buildroot}%{_libdir}/clang-analyzer/ )
|
cp -pr scan-{build,view} %{buildroot}%{_libdir}/cfe-analyzer/ )
|
||||||
|
|
||||||
mv %{buildroot}%{_prefix}/docs/llvm ./llvm-extradocs
|
mv %{buildroot}%{_prefix}/docs/llvm ./llvm-extradocs || true
|
||||||
rm -f ./llvm-extradocs/*.tar.gz
|
rm -f ./llvm-extradocs/*.tar.gz
|
||||||
rm -f ./llvm-extradocs/ocamldoc/html/*.tar.gz
|
rm -f ./llvm-extradocs/ocamldoc/html/*.tar.gz
|
||||||
|
|
||||||
install -d clang-extradocs
|
install -d cfe-extradocs
|
||||||
for f in LICENSE.TXT NOTES.txt README.txt; do
|
for f in LICENSE.TXT NOTES.txt README.txt; do
|
||||||
cp tools/clang/$f clang-extradocs/
|
cp tools/clang/$f cfe-extradocs/
|
||||||
done
|
done
|
||||||
#rm -rf tools/clang/docs/{doxygen*,Makefile*,*.graffle,tools}
|
#rm -rf tools/clang/docs/{doxygen*,Makefile*,*.graffle,tools}
|
||||||
|
|
||||||
@ -150,22 +191,31 @@ find examples -name 'Makefile' | xargs -0r rm -f
|
|||||||
%clean
|
%clean
|
||||||
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
|
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
|
||||||
|
|
||||||
%post -p /sbin/ldconfig
|
%post
|
||||||
%postun -p /sbin/ldconfig
|
/sbin/ldconfig
|
||||||
|
:
|
||||||
|
|
||||||
|
%postun
|
||||||
|
/sbin/ldconfig
|
||||||
|
:
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%{_bindir}/bugpoint
|
%{_bindir}/bugpoint
|
||||||
%{_bindir}/llc
|
%{_bindir}/llc
|
||||||
%{_bindir}/lli
|
%{_bindir}/lli
|
||||||
|
%{_bindir}/lli-child-target
|
||||||
%{_bindir}/llvm*
|
%{_bindir}/llvm*
|
||||||
%{_bindir}/macho-dump
|
%{_bindir}/macho-dump
|
||||||
%{_bindir}/c-index-test
|
#%{_bindir}/c-index-test
|
||||||
%{_libdir}/ocaml/META.llvm
|
%{_libdir}/ocaml/META.llvm
|
||||||
%exclude %{_bindir}/llvm-config
|
%exclude %{_bindir}/llvm-config
|
||||||
%{_bindir}/opt
|
%{_bindir}/opt
|
||||||
%{_mandir}/man1/*
|
%{_bindir}/scan-build
|
||||||
%exclude %{_mandir}/man1/clang.1.*
|
%{_bindir}/scan-view
|
||||||
|
%{_libdir}/cfe-analyzer
|
||||||
|
#%{_mandir}/man1/*
|
||||||
|
#%exclude %{_mandir}/man1/cfe.1.*
|
||||||
#%exclude %{_mandir}/man1/llvmg??.1.*
|
#%exclude %{_mandir}/man1/llvmg??.1.*
|
||||||
%doc CREDITS.TXT LICENSE.TXT
|
%doc CREDITS.TXT LICENSE.TXT
|
||||||
#doc llvm-testlog.txt
|
#doc llvm-testlog.txt
|
||||||
@ -185,22 +235,107 @@ find examples -name 'Makefile' | xargs -0r rm -f
|
|||||||
%doc llvm-extradocs/html
|
%doc llvm-extradocs/html
|
||||||
%doc README.txt
|
%doc README.txt
|
||||||
|
|
||||||
%files clang
|
%files -n clang
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%{_bindir}/clang*
|
%{_bindir}/FileCheck
|
||||||
#%{_bindir}/c-index-test
|
%{_bindir}/c-index-test
|
||||||
%{_bindir}/scan-build
|
%{_bindir}/clang
|
||||||
%{_bindir}/scan-view
|
%{_bindir}/clang++
|
||||||
#%{_bindir}/tblgen
|
%{_bindir}/clang-check
|
||||||
%{_prefix}/lib/clang
|
%{_bindir}/clang-format
|
||||||
%{_libdir}/clang-analyzer
|
%{_bindir}/clang-tblgen
|
||||||
%{_mandir}/man1/clang.1.*
|
%{_bindir}/count
|
||||||
|
%{_bindir}/not
|
||||||
|
%{_mandir}/man1/clang.1*
|
||||||
%doc tools/clang/LICENSE.TXT
|
%doc tools/clang/LICENSE.TXT
|
||||||
|
|
||||||
%files clang-devel
|
%files -n clang-devel
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%{_includedir}/clang
|
%dir %{_includedir}/clang-c
|
||||||
%{_includedir}/clang-c
|
%{_includedir}/clang-c/*.h
|
||||||
|
%{_includedir}/clang-c/module.modulemap
|
||||||
|
%dir %{_includedir}/clang/ARCMigrate
|
||||||
|
%{_includedir}/clang/ARCMigrate/*.h
|
||||||
|
%dir %{_includedir}/clang/AST
|
||||||
|
%{_includedir}/clang/AST/*.h
|
||||||
|
%{_includedir}/clang/AST/*.def
|
||||||
|
%{_includedir}/clang/AST/*.inc
|
||||||
|
%dir %{_includedir}/clang/Analysis
|
||||||
|
%dir %{_includedir}/clang/Analysis/Analyses
|
||||||
|
%{_includedir}/clang/Analysis/Analyses/ThreadSafetyOps.def
|
||||||
|
%dir %{_includedir}/clang/Analysis/DomainSpecific
|
||||||
|
%{_includedir}/clang/Analysis/DomainSpecific/*.h
|
||||||
|
%dir %{_includedir}/clang/Analysis/FlowSensitive
|
||||||
|
%{_includedir}/clang/Analysis/FlowSensitive/DataflowValues.h
|
||||||
|
%dir %{_includedir}/clang/Analysis/Support
|
||||||
|
%{_includedir}/clang/Analysis/Support/BumpVector.h
|
||||||
|
%dir %{_includedir}/clang/ASTMatchers/
|
||||||
|
%{_includedir}/clang/ASTMatchers/*.h
|
||||||
|
%dir %{_includedir}/clang/ASTMatchers/Dynamic
|
||||||
|
%{_includedir}/clang/ASTMatchers/Dynamic/*.h
|
||||||
|
%dir %{_includedir}/clang/Analysis/Analyses
|
||||||
|
%{_includedir}/clang/Analysis/Analyses/*.h
|
||||||
|
%{_includedir}/clang/Analysis/*.h
|
||||||
|
%dir %{_includedir}/clang/Basic
|
||||||
|
%{_includedir}/clang/Basic/*.h
|
||||||
|
%{_includedir}/clang/Basic/*.def
|
||||||
|
%{_includedir}/clang/Basic/*.inc
|
||||||
|
%dir %{_includedir}/clang/CodeGen
|
||||||
|
%{_includedir}/clang/CodeGen/*.h
|
||||||
|
%dir %{_includedir}/clang/Config
|
||||||
|
%{_includedir}/clang/Config/config.h
|
||||||
|
%dir %{_includedir}/clang/Driver
|
||||||
|
%{_includedir}/clang/Driver/*.h
|
||||||
|
%{_includedir}/clang/Driver/Options.inc
|
||||||
|
%{_includedir}/clang/Driver/Types.def
|
||||||
|
%dir %{_includedir}/clang/Edit
|
||||||
|
%{_includedir}/clang/Edit/*.h
|
||||||
|
%dir %{_includedir}/clang/Format
|
||||||
|
%{_includedir}/clang/Format/Format.h
|
||||||
|
%dir %{_includedir}/clang/Frontend
|
||||||
|
%{_includedir}/clang/Frontend/*.h
|
||||||
|
%{_includedir}/clang/Frontend/*.def
|
||||||
|
%dir %{_includedir}/clang/FrontendTool
|
||||||
|
%{_includedir}/clang/FrontendTool/Utils.h
|
||||||
|
%dir %{_includedir}/clang/Index
|
||||||
|
%{_includedir}/clang/Index/*.h
|
||||||
|
%dir %{_includedir}/clang/Lex
|
||||||
|
%{_includedir}/clang/Lex/*.h
|
||||||
|
%dir %{_includedir}/clang/Parse
|
||||||
|
%{_includedir}/clang/Parse/*.h
|
||||||
|
%{_includedir}/clang/Parse/AttrParserStringSwitches.inc
|
||||||
|
%dir %{_includedir}/clang/Rewrite
|
||||||
|
%dir %{_includedir}/clang/Rewrite/Core
|
||||||
|
%{_includedir}/clang/Rewrite/Core/*.h
|
||||||
|
%dir %{_includedir}/clang/Rewrite/Frontend
|
||||||
|
%{_includedir}/clang/Rewrite/Frontend/*.h
|
||||||
|
%dir %{_includedir}/clang/Sema
|
||||||
|
%{_includedir}/clang/Sema/*.h
|
||||||
|
%{_includedir}/clang/Sema/*.inc
|
||||||
|
%dir %{_includedir}/clang/Serialization
|
||||||
|
%{_includedir}/clang/Serialization/*.h
|
||||||
|
%{_includedir}/clang/Serialization/*.inc
|
||||||
|
%dir %{_includedir}/clang/StaticAnalyzer
|
||||||
|
%dir %{_includedir}/clang/StaticAnalyzer/Checkers
|
||||||
|
%{_includedir}/clang/StaticAnalyzer/Checkers/*.h
|
||||||
|
%dir %{_includedir}/clang/StaticAnalyzer/Core
|
||||||
|
%{_includedir}/clang/StaticAnalyzer/Core/*.h
|
||||||
|
%{_includedir}/clang/StaticAnalyzer/Core/Analyses.def
|
||||||
|
%dir %{_includedir}/clang/StaticAnalyzer/Core/BugReporter
|
||||||
|
%{_includedir}/clang/StaticAnalyzer/Core/BugReporter/*.h
|
||||||
|
%dir %{_includedir}/clang/StaticAnalyzer/Core/PathSensitive
|
||||||
|
%{_includedir}/clang/StaticAnalyzer/Core/PathSensitive/*.h
|
||||||
|
%dir %{_includedir}/clang/StaticAnalyzer/Frontend
|
||||||
|
%{_includedir}/clang/StaticAnalyzer/Frontend/*.h
|
||||||
|
%dir %{_includedir}/clang/Tooling
|
||||||
|
%{_includedir}/clang/Tooling/*
|
||||||
|
%dir %{_prefix}/lib/clang
|
||||||
|
%dir %{_prefix}/lib/clang/%{version}
|
||||||
|
%dir %{_prefix}/lib/clang/%{version}/include
|
||||||
|
%{_prefix}/lib/clang/%{version}/include/*.h
|
||||||
|
%{_prefix}/lib/clang/%{version}/include/module.modulemap
|
||||||
|
%dir %{_datadir}/llvm/cmake
|
||||||
|
%{_datadir}/llvm/cmake/*.cmake
|
||||||
%doc tools/clang/{NOTES.txt,README.txt}
|
%doc tools/clang/{NOTES.txt,README.txt}
|
||||||
%doc tools/clang/docs
|
%doc tools/clang/docs
|
||||||
|
|
||||||
@ -208,18 +343,38 @@ find examples -name 'Makefile' | xargs -0r rm -f
|
|||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%{_libdir}/ocaml/*.cma
|
%{_libdir}/ocaml/*.cma
|
||||||
%{_libdir}/ocaml/*.cmi
|
%{_libdir}/ocaml/*.cmi
|
||||||
|
%{_libdir}/ocaml/META.llvm_*
|
||||||
|
%{_libdir}/ocaml/dllllvm*.so
|
||||||
|
|
||||||
%files ocaml-devel
|
%files ocaml-devel
|
||||||
%defattr(-,root,root)
|
%defattr(-,root,root)
|
||||||
%{_libdir}/ocaml/*.a
|
%{_libdir}/ocaml/*.a
|
||||||
%{_libdir}/ocaml/*.cmx*
|
%{_libdir}/ocaml/*.cmx*
|
||||||
%{_libdir}/ocaml/*.mli
|
%{_libdir}/ocaml/*.mli
|
||||||
%doc llvm-extradocs/ocamldoc/html
|
#%doc llvm-extradocs/ocamldoc/html
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Tue Apr 29 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 3.1-2mamba
|
* Fri Sep 19 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 3.5.0-2mamba
|
||||||
- move libraries to libllvm and rename llvm-devel to libllvm-devel
|
- patch llvm-config for x86_64 support and %{_libdir}/llvm
|
||||||
- also try to add a patch to fix bug #163 (http://bugs.openmamba.org/view.php?id=163)
|
|
||||||
|
* Wed Sep 10 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 3.5.0-1mamba
|
||||||
|
- update to 3.5.0
|
||||||
|
|
||||||
|
* Thu Jul 10 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 3.4.2-1mamba
|
||||||
|
- update to 3.4.2
|
||||||
|
|
||||||
|
* Sun Feb 16 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 3.4-2mamba
|
||||||
|
- fix configure settings and add --with-extra-ld-options to correctly link and
|
||||||
|
pass --with-arch=%{_target_cpu} to fix penmamba bug #000163
|
||||||
|
|
||||||
|
* Sun Jan 12 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 3.4-1mamba
|
||||||
|
- update to 3.4
|
||||||
|
|
||||||
|
* Thu Jun 20 2013 Automatic Build System <autodist@mambasoft.it> 3.3-1mamba
|
||||||
|
- update to 3.3
|
||||||
|
|
||||||
|
* Sat Dec 22 2012 Automatic Build System <autodist@mambasoft.it> 3.2-1mamba
|
||||||
|
- automatic version update by autodist
|
||||||
|
|
||||||
* Fri Jul 20 2012 Silvan Calarco <silvan.calarco@mambasoft.it> 3.1-1mamba
|
* Fri Jul 20 2012 Silvan Calarco <silvan.calarco@mambasoft.it> 3.1-1mamba
|
||||||
- update to 3.1
|
- update to 3.1
|
||||||
|
Loading…
Reference in New Issue
Block a user