Compare commits
19 Commits
Author | SHA1 | Date |
---|---|---|
serge-sans-paille | facea4aba4 | |
serge-sans-paille | c00db199b8 | |
serge-sans-paille | 4a11c094f0 | |
Tom Stellard | 4c70d9ffe9 | |
serge-sans-paille | f99e367747 | |
serge-sans-paille | f8c25752f5 | |
Tom Stellard | 3ca69f5739 | |
Tom Stellard | 992907b031 | |
Tom Stellard | 40207a4ea9 | |
serge-sans-paille | a58113d73c | |
serge-sans-paille | 146561a8a6 | |
Fedora Release Engineering | 210d1cc82b | |
Fedora Release Engineering | edf13af9da | |
Aleksandra Fedorova | e89816ed7a | |
serge-sans-paille | d7400582fd | |
serge-sans-paille | 96783870dd | |
Tom Stellard | 71b43061fd | |
serge-sans-paille | 8e1d8d6581 | |
serge-sans-paille | 63f8be8e26 |
|
@ -68,3 +68,7 @@
|
|||
/llvm-10.0.0rc6.src.tar.xz.sig
|
||||
/llvm-10.0.0.src.tar.xz
|
||||
/llvm-10.0.0.src.tar.xz.sig
|
||||
/llvm-11.0.0rc1.src.tar.xz
|
||||
/llvm-11.0.0rc1.src.tar.xz.sig
|
||||
/llvm-11.0.0.src.tar.xz
|
||||
/llvm-11.0.0.src.tar.xz.sig
|
||||
|
|
|
@ -1,66 +0,0 @@
|
|||
From 8f6917ea11bd1bfbfe07f3577756d1c4abfdb916 Mon Sep 17 00:00:00 2001
|
||||
From: Tom Stellard <tstellar@redhat.com>
|
||||
Date: Fri, 6 Sep 2019 11:03:18 -0700
|
||||
Subject: [PATCH] CMake: Split static library exports into their own export
|
||||
file
|
||||
|
||||
---
|
||||
llvm/cmake/modules/AddLLVM.cmake | 6 +++++-
|
||||
llvm/cmake/modules/CMakeLists.txt | 3 +++
|
||||
llvm/cmake/modules/LLVMConfig.cmake.in | 2 ++
|
||||
3 files changed, 10 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/llvm/cmake/modules/AddLLVM.cmake b/llvm/cmake/modules/AddLLVM.cmake
|
||||
index 619e986..200fc45 100644
|
||||
--- a/llvm/cmake/modules/AddLLVM.cmake
|
||||
+++ b/llvm/cmake/modules/AddLLVM.cmake
|
||||
@@ -691,7 +691,11 @@ macro(add_llvm_library name)
|
||||
if(${name} IN_LIST LLVM_DISTRIBUTION_COMPONENTS OR
|
||||
(in_llvm_libs AND "llvm-libraries" IN_LIST LLVM_DISTRIBUTION_COMPONENTS) OR
|
||||
NOT LLVM_DISTRIBUTION_COMPONENTS)
|
||||
- set(export_to_llvmexports EXPORT LLVMExports)
|
||||
+ if (ARG_SHARED)
|
||||
+ set(export_to_llvmexports EXPORT LLVMExports)
|
||||
+ else()
|
||||
+ set(export_to_llvmexports EXPORT LLVMStaticExports)
|
||||
+ endif()
|
||||
set_property(GLOBAL PROPERTY LLVM_HAS_EXPORTS True)
|
||||
endif()
|
||||
|
||||
diff --git a/llvm/cmake/modules/CMakeLists.txt b/llvm/cmake/modules/CMakeLists.txt
|
||||
index 9cf22b4..dc982d2 100644
|
||||
--- a/llvm/cmake/modules/CMakeLists.txt
|
||||
+++ b/llvm/cmake/modules/CMakeLists.txt
|
||||
@@ -105,6 +105,7 @@ set(LLVM_CONFIG_BINARY_DIR "\${LLVM_INSTALL_PREFIX}")
|
||||
set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/bin")
|
||||
set(LLVM_CONFIG_EXPORTS_FILE "\${LLVM_CMAKE_DIR}/LLVMExports.cmake")
|
||||
set(LLVM_CONFIG_EXPORTS "${LLVM_EXPORTS}")
|
||||
+set(LLVM_CONFIG_STATIC_EXPORTS_FILE "\${LLVM_CMAKE_DIR}/LLVMStaticExports.cmake")
|
||||
configure_file(
|
||||
LLVMConfig.cmake.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/LLVMConfig.cmake
|
||||
@@ -121,6 +122,8 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
if(llvm_has_exports)
|
||||
install(EXPORT LLVMExports DESTINATION ${LLVM_INSTALL_PACKAGE_DIR}
|
||||
COMPONENT cmake-exports)
|
||||
+ install(EXPORT LLVMStaticExports DESTINATION ${LLVM_INSTALL_PACKAGE_DIR}
|
||||
+ COMPONENT cmake-exports)
|
||||
endif()
|
||||
|
||||
install(FILES
|
||||
diff --git a/llvm/cmake/modules/LLVMConfig.cmake.in b/llvm/cmake/modules/LLVMConfig.cmake.in
|
||||
index 536031f..6ef54a0 100644
|
||||
--- a/llvm/cmake/modules/LLVMConfig.cmake.in
|
||||
+++ b/llvm/cmake/modules/LLVMConfig.cmake.in
|
||||
@@ -89,6 +89,8 @@ if(NOT TARGET LLVMSupport)
|
||||
set(LLVM_EXPORTED_TARGETS "@LLVM_CONFIG_EXPORTS@")
|
||||
include("@LLVM_CONFIG_EXPORTS_FILE@")
|
||||
@llvm_config_include_buildtree_only_exports@
|
||||
+
|
||||
+ include("@LLVM_CONFIG_STATIC_EXPORTS_FILE@" OPTIONAL)
|
||||
endif()
|
||||
|
||||
# By creating intrinsics_gen here, subprojects that depend on LLVM's
|
||||
--
|
||||
1.8.3.1
|
||||
|
|
@ -1,65 +0,0 @@
|
|||
From 9d496e978f59e153bb76e92229d5a524d92dee04 Mon Sep 17 00:00:00 2001
|
||||
From: Tom Stellard <tstellar@redhat.com>
|
||||
Date: Tue, 10 Sep 2019 13:33:48 -0700
|
||||
Subject: [PATCH] CMake: Split test binary exports into their own export file
|
||||
|
||||
---
|
||||
llvm/cmake/modules/AddLLVM.cmake | 7 ++++++-
|
||||
llvm/cmake/modules/CMakeLists.txt | 3 +++
|
||||
llvm/cmake/modules/LLVMConfig.cmake.in | 1 +
|
||||
3 files changed, 10 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/llvm/cmake/modules/AddLLVM.cmake b/llvm/cmake/modules/AddLLVM.cmake
|
||||
index 200fc45..9eec7a7 100644
|
||||
--- a/llvm/cmake/modules/AddLLVM.cmake
|
||||
+++ b/llvm/cmake/modules/AddLLVM.cmake
|
||||
@@ -953,7 +953,12 @@ macro(add_llvm_utility name)
|
||||
set(export_to_llvmexports)
|
||||
if (${name} IN_LIST LLVM_DISTRIBUTION_COMPONENTS OR
|
||||
NOT LLVM_DISTRIBUTION_COMPONENTS)
|
||||
- set(export_to_llvmexports EXPORT LLVMExports)
|
||||
+ if (${name} STREQUAL "not" OR ${name} STREQUAL "count" OR
|
||||
+ ${name} STREQUAL "yaml-bench" OR ${name} STREQUAL "lli-child-target")
|
||||
+ set(export_to_llvmexports EXPORT LLVMTestExports)
|
||||
+ else()
|
||||
+ set(export_to_llvmexports EXPORT LLVMExports)
|
||||
+ endif()
|
||||
set_property(GLOBAL PROPERTY LLVM_HAS_EXPORTS True)
|
||||
endif()
|
||||
|
||||
diff --git a/llvm/cmake/modules/CMakeLists.txt b/llvm/cmake/modules/CMakeLists.txt
|
||||
index dc982d2..c861f45 100644
|
||||
--- a/llvm/cmake/modules/CMakeLists.txt
|
||||
+++ b/llvm/cmake/modules/CMakeLists.txt
|
||||
@@ -106,6 +106,7 @@ set(LLVM_CONFIG_TOOLS_BINARY_DIR "\${LLVM_INSTALL_PREFIX}/bin")
|
||||
set(LLVM_CONFIG_EXPORTS_FILE "\${LLVM_CMAKE_DIR}/LLVMExports.cmake")
|
||||
set(LLVM_CONFIG_EXPORTS "${LLVM_EXPORTS}")
|
||||
set(LLVM_CONFIG_STATIC_EXPORTS_FILE "\${LLVM_CMAKE_DIR}/LLVMStaticExports.cmake")
|
||||
+set(LLVM_CONFIG_TEST_EXPORTS_FILE "\${LLVM_CMAKE_DIR}/LLVMTestExports.cmake")
|
||||
configure_file(
|
||||
LLVMConfig.cmake.in
|
||||
${CMAKE_CURRENT_BINARY_DIR}/CMakeFiles/LLVMConfig.cmake
|
||||
@@ -124,6 +125,8 @@ if (NOT LLVM_INSTALL_TOOLCHAIN_ONLY)
|
||||
COMPONENT cmake-exports)
|
||||
install(EXPORT LLVMStaticExports DESTINATION ${LLVM_INSTALL_PACKAGE_DIR}
|
||||
COMPONENT cmake-exports)
|
||||
+ install(EXPORT LLVMTestExports DESTINATION ${LLVM_INSTALL_PACKAGE_DIR}
|
||||
+ COMPONENT cmake-exports)
|
||||
endif()
|
||||
|
||||
install(FILES
|
||||
diff --git a/llvm/cmake/modules/LLVMConfig.cmake.in b/llvm/cmake/modules/LLVMConfig.cmake.in
|
||||
index 6ef54a0..d81b09a 100644
|
||||
--- a/llvm/cmake/modules/LLVMConfig.cmake.in
|
||||
+++ b/llvm/cmake/modules/LLVMConfig.cmake.in
|
||||
@@ -91,6 +91,7 @@ if(NOT TARGET LLVMSupport)
|
||||
@llvm_config_include_buildtree_only_exports@
|
||||
|
||||
include("@LLVM_CONFIG_STATIC_EXPORTS_FILE@" OPTIONAL)
|
||||
+ include("@LLVM_CONFIG_TEST_EXPORTS_FILE@" OPTIONAL)
|
||||
endif()
|
||||
|
||||
# By creating intrinsics_gen here, subprojects that depend on LLVM's
|
||||
--
|
||||
1.8.3.1
|
||||
|
|
@ -3,10 +3,10 @@ product_versions:
|
|||
- fedora-*
|
||||
decision_context: bodhi_update_push_testing
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: org.centos.prod.ci.pipeline.allpackages-build.package.test.functional.complete}
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
|
||||
--- !Policy
|
||||
product_versions:
|
||||
- fedora-*
|
||||
decision_context: bodhi_update_push_stable
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: org.centos.prod.ci.pipeline.allpackages-build.package.test.functional.complete}
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
|
||||
config.llvm_tools_dir = '/usr/bin'
|
||||
config.llvm_src_root = '/usr/share/llvm/src'
|
||||
config.llvm_shlib_dir = '%(llvm_shlib_dir)s' % lit_config.params
|
||||
|
||||
if hasattr(config, 'host_triple'):
|
||||
|
|
169
llvm.spec
169
llvm.spec
|
@ -10,14 +10,13 @@
|
|||
|
||||
%global llvm_libdir %{_libdir}/%{name}
|
||||
%global build_llvm_libdir %{buildroot}%{llvm_libdir}
|
||||
#%%global rc_ver 6
|
||||
#%%global rc_ver 1
|
||||
%global baserelease 1
|
||||
%global llvm_srcdir llvm-%{version}%{?rc_ver:rc%{rc_ver}}.src
|
||||
%global maj_ver 10
|
||||
%global maj_ver 11
|
||||
%global min_ver 0
|
||||
%global patch_ver 0
|
||||
|
||||
|
||||
%if %{with compat_build}
|
||||
%global pkg_name llvm%{maj_ver}.%{min_ver}
|
||||
%global exec_suffix -%{maj_ver}.%{min_ver}
|
||||
|
@ -58,9 +57,6 @@ Source2: lit.fedora.cfg.py
|
|||
%endif
|
||||
Source4: https://prereleases.llvm.org/%{version}/hans-gpg-key.asc
|
||||
|
||||
Patch0: 0001-CMake-Split-static-library-exports-into-their-own-ex.patch
|
||||
Patch1: 0001-CMake-Split-test-binary-exports-into-their-own-expor.patch
|
||||
|
||||
BuildRequires: gcc
|
||||
BuildRequires: gcc-c++
|
||||
BuildRequires: cmake
|
||||
|
@ -83,6 +79,10 @@ BuildRequires: libedit-devel
|
|||
# We need python3-devel for pathfix.py.
|
||||
BuildRequires: python3-devel
|
||||
|
||||
# For origin certification
|
||||
BuildRequires: gnupg2
|
||||
|
||||
|
||||
Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
||||
|
||||
Provides: llvm(major) = %{maj_ver}
|
||||
|
@ -101,6 +101,15 @@ Requires: %{name}-libs%{?_isa} = %{version}-%{release}
|
|||
# app that requires the libLLVMLineEditor, so we need to make sure
|
||||
# libedit-devel is available.
|
||||
Requires: libedit-devel
|
||||
# The installed cmake files reference binaries from llvm-test and llvm-static.
|
||||
# We tried in the past to split the cmake exports for these binaries out into
|
||||
# separate files, so that llvm-devel would not need to Require these packages,
|
||||
# but this caused bugs (rhbz#1773678) and forced us to carry two non-upstream
|
||||
# patches.
|
||||
Requires: llvm-static%{?_isa} = %{version}-%{release}
|
||||
Requires: llvm-test%{?_isa} = %{version}-%{release}
|
||||
|
||||
|
||||
Requires(post): %{_sbindir}/alternatives
|
||||
Requires(postun): %{_sbindir}/alternatives
|
||||
|
||||
|
@ -160,15 +169,25 @@ LLVM's modified googletest sources.
|
|||
%endif
|
||||
|
||||
%prep
|
||||
%{gpgverify} --keyring='%{SOURCE4}' --signature='%{SOURCE3}' --data='%{SOURCE0}'
|
||||
%autosetup -n %{llvm_srcdir} -p2
|
||||
|
||||
pathfix.py -i %{__python3} -pn \
|
||||
test/BugPoint/compile-custom.ll.py \
|
||||
tools/opt-viewer/*.py
|
||||
tools/opt-viewer/*.py \
|
||||
utils/update_cc_test_checks.py
|
||||
|
||||
%build
|
||||
mkdir -p _build
|
||||
cd _build
|
||||
|
||||
# Disable LTO on s390x, this causes some test failures:
|
||||
# LLVM-Unit :: Target/AArch64/./AArch64Tests/InstSizes.Authenticated
|
||||
# LLVM-Unit :: Target/AArch64/./AArch64Tests/InstSizes.PATCHPOINT
|
||||
# LLVM-Unit :: Target/AArch64/./AArch64Tests/InstSizes.STACKMAP
|
||||
# LLVM-Unit :: Target/AArch64/./AArch64Tests/InstSizes.TLSDESC_CALLSEQ
|
||||
# On X86_64, LTO builds of TableGen crash. This can be reproduced by:
|
||||
# %%cmake_build --target include/llvm/IR/IntrinsicsAArch64.h
|
||||
# Because of these failures, lto is disabled for now.
|
||||
%global _lto_cflags %{nil}
|
||||
|
||||
%ifarch s390 %{arm} %ix86
|
||||
# Decrease debuginfo verbosity to reduce memory consumption during final library linking
|
||||
|
@ -176,16 +195,11 @@ cd _build
|
|||
%endif
|
||||
|
||||
# force off shared libs as cmake macros turns it on.
|
||||
#
|
||||
# -DCMAKE_INSTALL_RPATH=";" is a workaround for llvm manually setting the
|
||||
# rpath of libraries and binaries. llvm will skip the manual setting
|
||||
# if CAMKE_INSTALL_RPATH is set to a value, but cmake interprets this value
|
||||
# as nothing, so it sets the rpath to "" when installing.
|
||||
%cmake .. -G Ninja \
|
||||
%cmake -G Ninja \
|
||||
-DBUILD_SHARED_LIBS:BOOL=OFF \
|
||||
-DLLVM_PARALLEL_LINK_JOBS=1 \
|
||||
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||
-DCMAKE_INSTALL_RPATH=";" \
|
||||
-DCMAKE_SKIP_RPATH:BOOL=ON \
|
||||
%ifarch s390 %{arm} %ix86
|
||||
-DCMAKE_C_FLAGS_RELWITHDEBINFO="%{optflags} -DNDEBUG" \
|
||||
-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="%{optflags} -DNDEBUG" \
|
||||
|
@ -233,7 +247,9 @@ cd _build
|
|||
-DLLVM_ENABLE_SPHINX:BOOL=ON \
|
||||
-DLLVM_ENABLE_DOXYGEN:BOOL=OFF \
|
||||
\
|
||||
%if %{without compat_build}
|
||||
-DLLVM_VERSION_SUFFIX='' \
|
||||
%endif
|
||||
-DLLVM_BUILD_LLVM_DYLIB:BOOL=ON \
|
||||
-DLLVM_DYLIB_EXPORT_ALL:BOOL=ON \
|
||||
-DLLVM_LINK_LLVM_DYLIB:BOOL=ON \
|
||||
|
@ -241,23 +257,27 @@ cd _build
|
|||
-DLLVM_INSTALL_TOOLCHAIN_ONLY:BOOL=OFF \
|
||||
\
|
||||
-DSPHINX_WARNINGS_AS_ERRORS=OFF \
|
||||
-DCMAKE_INSTALL_PREFIX=%{install_prefix} \
|
||||
-DLLVM_INSTALL_SPHINX_HTML_DIR=%{_pkgdocdir}/html \
|
||||
-DSPHINX_EXECUTABLE=%{_bindir}/sphinx-build-3
|
||||
|
||||
# Build libLLVM.so first. This ensures that when libLLVM.so is linking, there
|
||||
# are no other compile jobs running. This will help reduce OOM errors on the
|
||||
# builders without having to artificially limit the number of concurrent jobs.
|
||||
%ninja_build LLVM
|
||||
%ninja_build
|
||||
%cmake_build --target LLVM
|
||||
%cmake_build
|
||||
|
||||
%install
|
||||
%ninja_install -C _build
|
||||
%cmake_install
|
||||
|
||||
|
||||
%if %{without compat_build}
|
||||
mkdir -p %{buildroot}/%{_bindir}
|
||||
mv %{buildroot}/%{_bindir}/llvm-config %{buildroot}/%{_bindir}/llvm-config-%{__isa_bits}
|
||||
|
||||
# ghost presence
|
||||
touch %{buildroot}%{_bindir}/llvm-config
|
||||
|
||||
# Fix some man pages
|
||||
ln -s llvm-config.1 %{buildroot}%{_mandir}/man1/llvm-config-%{__isa_bits}.1
|
||||
mv %{buildroot}%{_mandir}/man1/tblgen.1 %{buildroot}%{_mandir}/man1/llvm-tblgen.1
|
||||
|
@ -267,17 +287,19 @@ mv %{buildroot}%{_mandir}/man1/tblgen.1 %{buildroot}%{_mandir}/man1/llvm-tblgen.
|
|||
|
||||
for f in %{test_binaries}
|
||||
do
|
||||
install -m 0755 ./_build/bin/$f %{buildroot}%{_bindir}
|
||||
install -m 0755 %{_vpath_builddir}/bin/$f %{buildroot}%{_bindir}
|
||||
done
|
||||
|
||||
# Remove testing of update utility tools
|
||||
rm -rf test/tools/UpdateTestChecks
|
||||
|
||||
%multilib_fix_c_header --file %{_includedir}/llvm/Config/llvm-config.h
|
||||
|
||||
# Install libraries needed for unittests
|
||||
%if 0%{?__isa_bits} == 64
|
||||
%global build_libdir _build/lib64
|
||||
%global build_libdir %{_vpath_builddir}/lib64
|
||||
%else
|
||||
%global build_libdir _build/lib
|
||||
%global build_libdir %{_vpath_builddir}/lib
|
||||
%endif
|
||||
|
||||
install %{build_libdir}/libLLVMTestingSupport.a %{buildroot}%{_libdir}
|
||||
|
@ -292,10 +314,21 @@ install -d %{install_srcdir}
|
|||
install -d %{install_srcdir}/utils/
|
||||
cp -R utils/unittest %{install_srcdir}/utils/
|
||||
|
||||
# Generate lit config files. Strip off the last line that initiates the
|
||||
# Clang needs these for running lit tests.
|
||||
for f in utils/*.py; do
|
||||
sed '1 s|^.*$|#!/usr/bin/env python3|' $f > %{install_srcdir}/$f
|
||||
done
|
||||
cp -R utils/UpdateTestChecks %{install_srcdir}/utils/
|
||||
|
||||
|
||||
# One of the lit tests references this file
|
||||
install -d %{install_srcdir}/docs/CommandGuide/
|
||||
install -m 0644 docs/CommandGuide/dsymutil.rst %{install_srcdir}/docs/CommandGuide/
|
||||
|
||||
# Generate lit config files. Strip off the last lines that initiates the
|
||||
# test run, so we can customize the configuration.
|
||||
head -n -1 _build/test/lit.site.cfg.py >> %{lit_cfg}
|
||||
head -n -1 _build/test/Unit/lit.site.cfg.py >> %{lit_unit_cfg}
|
||||
head -n -2 %{_vpath_builddir}/test/lit.site.cfg.py >> %{lit_cfg}
|
||||
head -n -2 %{_vpath_builddir}/test/Unit/lit.site.cfg.py >> %{lit_unit_cfg}
|
||||
|
||||
# Install custom fedora config file
|
||||
cp %{SOURCE2} %{buildroot}%{lit_fedora_cfg}
|
||||
|
@ -311,11 +344,16 @@ install -m 0755 %{SOURCE1} %{buildroot}%{_libexecdir}/tests/llvm
|
|||
# Install lit tests. We need to put these in a tarball otherwise rpm will complain
|
||||
# about some of the test inputs having the wrong object file format.
|
||||
install -d %{buildroot}%{_datadir}/llvm/
|
||||
tar -czf %{install_srcdir}/test.tar.gz test/
|
||||
|
||||
# The various tar options are there to make sur the archive is the same on 32 and 64 bit arch, i.e.
|
||||
# the archive creation is reproducible. Move arch-specific content out of the tarball
|
||||
mv %{lit_cfg} %{install_srcdir}/%{_arch}.site.cfg.py
|
||||
mv %{lit_unit_cfg} %{install_srcdir}/%{_arch}.Unit.site.cfg.py
|
||||
tar --sort=name --mtime='UTC 2020-01-01' -c test/ | gzip -n > %{install_srcdir}/test.tar.gz
|
||||
|
||||
# Install the unit test binaries
|
||||
mkdir -p %{build_llvm_libdir}
|
||||
cp -R _build/unittests %{build_llvm_libdir}/
|
||||
cp -R %{_vpath_builddir}/unittests %{build_llvm_libdir}/
|
||||
rm -rf `find %{build_llvm_libdir} -iname 'cmake*'`
|
||||
|
||||
# Install libraries used for testing
|
||||
|
@ -327,13 +365,19 @@ echo "%{_datadir}/llvm/src/unittests/DebugInfo/PDB" > %{build_llvm_libdir}/unitt
|
|||
mkdir -p %{buildroot}%{_datadir}/llvm/src/unittests/DebugInfo/PDB/
|
||||
cp -R unittests/DebugInfo/PDB/Inputs %{buildroot}%{_datadir}/llvm/src/unittests/DebugInfo/PDB/
|
||||
|
||||
%if %{with gold}
|
||||
# Add symlink to lto plugin in the binutils plugin directory.
|
||||
%{__mkdir_p} %{buildroot}%{_libdir}/bfd-plugins/
|
||||
ln -s %{_libdir}/LLVMgold.so %{buildroot}%{_libdir}/bfd-plugins/
|
||||
%endif
|
||||
|
||||
%else
|
||||
|
||||
# Add version suffix to binaries
|
||||
mkdir -p %{buildroot}/%{_bindir}
|
||||
for f in %{buildroot}/%{install_bindir}/*; do
|
||||
filename=`basename $f`
|
||||
ln -s %{install_bindir}/$filename %{buildroot}/%{_bindir}/$filename%{exec_suffix}
|
||||
ln -s ../../../%{install_bindir}/$filename %{buildroot}/%{_bindir}/$filename%{exec_suffix}
|
||||
done
|
||||
|
||||
# Move header files
|
||||
|
@ -353,7 +397,7 @@ EOF
|
|||
|
||||
# Add version suffix to man pages and move them to mandir.
|
||||
mkdir -p %{buildroot}/%{_mandir}/man1
|
||||
for f in `ls %{build_install_prefix}/share/man/man1/*`; do
|
||||
for f in %{build_install_prefix}/share/man/man1/*; do
|
||||
filename=`basename $f | cut -f 1 -d '.'`
|
||||
mv $f %{buildroot}%{_mandir}/man1/$filename%{exec_suffix}.1
|
||||
done
|
||||
|
@ -366,7 +410,8 @@ rm -Rf %{build_install_prefix}/share/opt-viewer
|
|||
|
||||
%check
|
||||
# TODO: Fix test failures on arm
|
||||
ninja check-all -C _build || \
|
||||
# FIXME: use %%cmake_build instead of %%__ninja
|
||||
LD_LIBRARY_PATH=%{buildroot}/%{_libdir} %{__ninja} check-all -C %{_vpath_builddir} || \
|
||||
%ifarch %{arm}
|
||||
:
|
||||
%else
|
||||
|
@ -382,17 +427,19 @@ ninja check-all -C _build || \
|
|||
|
||||
%postun devel
|
||||
if [ $1 -eq 0 ]; then
|
||||
%{_sbindir}/update-alternatives --remove llvm-config %{_bindir}/llvm-config
|
||||
%{_sbindir}/update-alternatives --remove llvm-config %{_bindir}/llvm-config-%{__isa_bits}
|
||||
fi
|
||||
|
||||
%endif
|
||||
|
||||
%files
|
||||
%license LICENSE.TXT
|
||||
%exclude %{_mandir}/man1/llvm-config*
|
||||
%{_mandir}/man1/*
|
||||
%{_bindir}/*
|
||||
|
||||
%if %{without compat_build}
|
||||
%exclude %{_bindir}/llvm-config
|
||||
%exclude %{_bindir}/llvm-config-%{__isa_bits}
|
||||
%exclude %{_bindir}/not
|
||||
%exclude %{_bindir}/count
|
||||
|
@ -407,10 +454,12 @@ fi
|
|||
%endif
|
||||
|
||||
%files libs
|
||||
%license LICENSE.TXT
|
||||
%{pkg_libdir}/libLLVM-%{maj_ver}.so
|
||||
%if %{without compat_build}
|
||||
%if %{with gold}
|
||||
%{_libdir}/LLVMgold.so
|
||||
%{_libdir}/bfd-plugins/LLVMgold.so
|
||||
%endif
|
||||
%{_libdir}/libLLVM-%{maj_ver}.%{min_ver}*.so
|
||||
%{_libdir}/libLTO.so*
|
||||
|
@ -426,15 +475,15 @@ fi
|
|||
%{pkg_libdir}/libRemarks.so*
|
||||
|
||||
%files devel
|
||||
%license LICENSE.TXT
|
||||
%if %{without compat_build}
|
||||
%ghost %{_bindir}/llvm-config
|
||||
%{_bindir}/llvm-config-%{__isa_bits}
|
||||
%{_mandir}/man1/llvm-config*
|
||||
%{_includedir}/llvm
|
||||
%{_includedir}/llvm-c
|
||||
%{_libdir}/libLLVM.so
|
||||
%{_libdir}/cmake/llvm
|
||||
%exclude %{_libdir}/cmake/llvm/LLVMStaticExports.cmake
|
||||
%exclude %{_libdir}/cmake/llvm/LLVMTestExports.cmake
|
||||
%else
|
||||
%{_bindir}/llvm-config%{exec_suffix}-%{__isa_bits}
|
||||
%{pkg_bindir}/llvm-config
|
||||
|
@ -449,13 +498,14 @@ fi
|
|||
%endif
|
||||
|
||||
%files doc
|
||||
%license LICENSE.TXT
|
||||
%doc %{_pkgdocdir}/html
|
||||
|
||||
%files static
|
||||
%license LICENSE.TXT
|
||||
%if %{without compat_build}
|
||||
%{_libdir}/*.a
|
||||
%exclude %{_libdir}/libLLVMTestingSupport.a
|
||||
%{_libdir}/cmake/llvm/LLVMStaticExports.cmake
|
||||
%else
|
||||
%{_libdir}/%{name}/lib/*.a
|
||||
%endif
|
||||
|
@ -463,11 +513,15 @@ fi
|
|||
%if %{without compat_build}
|
||||
|
||||
%files test
|
||||
%license LICENSE.TXT
|
||||
%{_libexecdir}/tests/llvm/
|
||||
%{llvm_libdir}/unittests/
|
||||
%{_datadir}/llvm/src/unittests
|
||||
%{_datadir}/llvm/src/test.tar.gz
|
||||
%{_datadir}/llvm/src/%{_arch}.site.cfg.py
|
||||
%{_datadir}/llvm/src/%{_arch}.Unit.site.cfg.py
|
||||
%{_datadir}/llvm/lit.fedora.cfg.py
|
||||
%{_datadir}/llvm/src/docs/CommandGuide/dsymutil.rst
|
||||
%{_bindir}/not
|
||||
%{_bindir}/count
|
||||
%{_bindir}/yaml-bench
|
||||
|
@ -476,15 +530,60 @@ fi
|
|||
%{_bindir}/llvm-opt-fuzzer
|
||||
%{_libdir}/BugpointPasses.so
|
||||
%{_libdir}/LLVMHello.so
|
||||
%{_libdir}/cmake/llvm/LLVMTestExports.cmake
|
||||
|
||||
%files googletest
|
||||
%license LICENSE.TXT
|
||||
%{_datadir}/llvm/src/utils
|
||||
%{_libdir}/libLLVMTestingSupport.a
|
||||
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Thu Oct 15 2020 sguelton@redhat.com - 11.0.0-1
|
||||
- Fix NVR
|
||||
|
||||
* Tue Oct 13 2020 sguelton@redhat.com - 11.0.0-0.4
|
||||
- llvm 11.0.0 - final release
|
||||
|
||||
* Fri Sep 04 2020 sguelton@redhat.com - 11.0.0-0.3.rc1
|
||||
- Apply upstream patch for rhbz#1862012
|
||||
|
||||
* Tue Aug 11 2020 Tom Stellard <tstellar@redhat.com> - 11.0.0-0.2.rc1
|
||||
- Install update_cc_test_checks.py script
|
||||
|
||||
* Thu Aug 06 2020 Tom Stellard <tstellar@redhat.com> - 11.0.0-0.1-rc1
|
||||
- LLVM 11.0.0-rc1 Release
|
||||
- Make llvm-devel require llvm-static and llvm-test
|
||||
|
||||
* Tue Aug 04 2020 Tom Stellard <tstellar@redhat.com> - 10.0.0-10
|
||||
- Backport upstream patch to fix build with -flto.
|
||||
- Disable LTO on s390x to work-around unit test failures.
|
||||
|
||||
* Sat Aug 01 2020 sguelton@redhat.com - 10.0.0-9
|
||||
- Fix update-alternative uninstall script
|
||||
|
||||
* Sat Aug 01 2020 sguelton@redhat.com - 10.0.0-8
|
||||
- Fix gpg verification and update macro usage.
|
||||
|
||||
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 10.0.0-7
|
||||
- Second attempt - Rebuilt for
|
||||
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 10.0.0-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
* Thu Jun 11 2020 sguelton@redhat.com - 10.0.0-5
|
||||
- Make llvm-test.tar.gz creation reproducible.
|
||||
|
||||
* Tue Jun 02 2020 sguelton@redhat.com - 10.0.0-4
|
||||
- Instruct cmake not to generate RPATH
|
||||
|
||||
* Thu Apr 30 2020 Tom Stellard <tstellar@redhat.com> - 10.0.0-3
|
||||
- Install LLVMgold.so symlink in bfd-plugins directory
|
||||
|
||||
* Tue Apr 07 2020 sguelton@redhat.com - 10.0.0-2
|
||||
- Do not package UpdateTestChecks tests in llvm-tests
|
||||
- Apply upstream patch bab5908df to pass gating tests
|
||||
|
||||
* Wed Mar 25 2020 sguelton@redhat.com - 10.0.0-1
|
||||
- 10.0.0 final
|
||||
|
||||
|
|
|
@ -48,9 +48,10 @@ esac
|
|||
|
||||
cd $(mktemp -d)
|
||||
ln -s /usr/include include
|
||||
ln -s /usr/share/llvm/src/docs docs
|
||||
tar -xzf /usr/share/llvm/src/test.tar.gz
|
||||
ln -s $ARCH.site.cfg.py test/lit.site.cfg.py
|
||||
ln -s $ARCH.site.cfg.py test/Unit/lit.site.cfg.py
|
||||
ln -s /usr/share/llvm/src/$ARCH.site.cfg.py test/lit.site.cfg.py
|
||||
ln -s /usr/share/llvm/src/$ARCH.Unit.site.cfg.py test/Unit/lit.site.cfg.py
|
||||
lit -v -s $threads_arg test \
|
||||
-Dllvm_obj_root=`pwd` \
|
||||
-Dllvm_test_root=`pwd`/test \
|
||||
|
|
4
sources
4
sources
|
@ -1,2 +1,2 @@
|
|||
SHA512 (llvm-10.0.0.src.tar.xz) = 7dc961aacee3a01ecc002ff2b688a2ef50661856d2abd5ecc90566ffcad7566e4976736cd339ea96592e452cd5a17aaceba9712b2effec805661cca8ff020ee7
|
||||
SHA512 (llvm-10.0.0.src.tar.xz.sig) = 2e4c61af5d84db4bc7a8ab51367210c529ae02e401b7a73a449f79bf9d92654ccf36fdef0f552c8850df0e94bcafce2359180ad0cdf720be7c874a782a936878
|
||||
SHA512 (llvm-11.0.0.src.tar.xz) = b3e92091ac48772edc0c30801218ce646ef374e1968baab91df9005f58e11c3ce149b2c4c655c7001f8554fd337caa02c08783bc736153bf58f35fe008e624a4
|
||||
SHA512 (llvm-11.0.0.src.tar.xz.sig) = 4f585e5a4f75ec7ba55eeae49a715569ba93bcd9c68ef25ba28cb2627a08b96ca7dcc9935ba1dda6b92822c42de41dc59a0699dda6f62c2899f662f59a8d1175
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -ex
|
||||
|
||||
test `stat -L -c %s /usr/lib64/libLLVM.so` -lt 100000000
|
|
@ -2,4 +2,4 @@
|
|||
|
||||
standard-inventory-qcow2:
|
||||
qemu:
|
||||
m: 2G
|
||||
m: 4G
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -ex
|
||||
|
||||
cmd='/usr/libexec/tests/llvm/run-lit-tests --threads 1'
|
||||
if [ `id -u` -eq 0 ]; then
|
||||
# lit tests can't be run as root, so we need to run as a different user
|
||||
user='llvm-regression-tests'
|
||||
if ! id -u $user; then
|
||||
useradd $user
|
||||
fi
|
||||
su $user -c "$cmd"
|
||||
cmd="su $user -c $cmd"
|
||||
else
|
||||
exec $cmd
|
||||
fi
|
|
@ -7,10 +7,13 @@
|
|||
- llvm-test
|
||||
- rust
|
||||
- cargo
|
||||
- clang
|
||||
- binutils
|
||||
repositories:
|
||||
- repo: "https://src.fedoraproject.org/tests/llvm.git"
|
||||
dest: "llvm"
|
||||
tests:
|
||||
- regression-tests:
|
||||
dir: ./
|
||||
run: /usr/libexec/tests/llvm/run-lit-tests --threads 1
|
||||
- regression-tests
|
||||
- rust-sanity:
|
||||
dir: ./
|
||||
run: cargo new hello && cd hello && cargo run
|
||||
|
@ -20,11 +23,10 @@
|
|||
# which breaks the nightly compose. So this test checks that libLLVM.so
|
||||
# is less than 100MB to ensure it was successfully stripped.
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1793250
|
||||
- libllvm-size:
|
||||
dir: ./
|
||||
run: test `stat -L -c %s /usr/lib64/libLLVM.so` -lt 100000000
|
||||
- libllvm-size
|
||||
# This test ensures that the spec file still builds correctly with
|
||||
# %global compat_build 1
|
||||
# FIXME: This fails, because the CI system has a hard-coded timeout of 4
|
||||
# hours.
|
||||
#- build-compat
|
||||
- llvm/binutils-plugin-ar
|
||||
|
|
Loading…
Reference in New Issue