Enable clang unit test

1. Enable clang unit tests.
2. Leverage macro define instead of hardcode
   version number.
3. Remove duplicated character.

Signed-off-by: Chenxi Mao <chenxi.mao@suse.com>
This commit is contained in:
Chenxi Mao 2023-02-08 22:38:01 +08:00
parent ca256cd3a4
commit 5e1bd4ed7d

View File

@ -1,3 +1,5 @@
%bcond_without check
%global maj_ver 15 %global maj_ver 15
%global min_ver 0 %global min_ver 0
%global patch_ver 6 %global patch_ver 6
@ -26,7 +28,7 @@
Name: %pkg_name Name: %pkg_name
Version: %{clang_version} Version: %{clang_version}
Release: 1 Release: 2
Summary: A C language family front-end for LLVM Summary: A C language family front-end for LLVM
License: NCSA License: NCSA
@ -46,12 +48,15 @@ BuildRequires: emacs
BuildRequires: libatomic BuildRequires: libatomic
BuildRequires: llvm%{maj_ver}-devel = %{version} BuildRequires: llvm%{maj_ver}-devel = %{version}
BuildRequires: llvm%{maj_ver}-static = %{version} BuildRequires: llvm%{maj_ver}-static = %{version}
BuildRequires: llvm%{maj_ver}-test = %{version}
BuildRequires: llvm%{maj_ver}-googletest = %{version}
BuildRequires: libxml2-devel BuildRequires: libxml2-devel
BuildRequires: multilib-rpm-config BuildRequires: multilib-rpm-config
BuildRequires: ninja-build BuildRequires: ninja-build
BuildRequires: ncurses-devel BuildRequires: ncurses-devel
BuildRequires: perl-generators BuildRequires: perl-generators
BuildRequires: python3-lit = %{version} BuildRequires: python3-lit >= %{version}
BuildRequires: python3-sphinx BuildRequires: python3-sphinx
BuildRequires: python3-recommonmark BuildRequires: python3-recommonmark
BuildRequires: python3-devel BuildRequires: python3-devel
@ -150,7 +155,6 @@ clang-format integration for git.
%setup -T -q -b 1 -n %{clang_tools_srcdir} %setup -T -q -b 1 -n %{clang_tools_srcdir}
%autopatch -m200 -p2 %autopatch -m200 -p2
# failing test case # failing test case
rm test/clang-tidy/checkers/altera/struct-pack-align.cpp rm test/clang-tidy/checkers/altera/struct-pack-align.cpp
@ -189,9 +193,11 @@ cd _build
-DCLANG_BUILD_TOOLS:BOOL=ON \ -DCLANG_BUILD_TOOLS:BOOL=ON \
-DLLVM_CONFIG:FILEPATH=%{pkg_bindir}/llvm-config-%{maj_ver}-%{__isa_bits} \ -DLLVM_CONFIG:FILEPATH=%{pkg_bindir}/llvm-config-%{maj_ver}-%{__isa_bits} \
-DCMAKE_INSTALL_PREFIX=%{install_prefix} \ -DCMAKE_INSTALL_PREFIX=%{install_prefix} \
-DCLANG_INCLUDE_TESTS:BOOL=OFF \ -DCLANG_INCLUDE_TESTS:BOOL=ON \
-DLLVM_EXTERNAL_LIT=%{_bindir}/lit \
-DLLVM_LIT_ARGS="-vv" \
-DLLVM_TABLEGEN_EXE:FILEPATH=%{_bindir}/llvm-tblgen-%{maj_ver} \ -DLLVM_TABLEGEN_EXE:FILEPATH=%{_bindir}/llvm-tblgen-%{maj_ver} \
-DLLVM_MAIN_SRC_DIR=%{_datadir}/llvm/src \ -DLLVM_MAIN_SRC_DIR=%{_libdir}/llvm%{maj_ver}/src \
-DLLVM_BUILD_UTILS:BOOL=ON \ -DLLVM_BUILD_UTILS:BOOL=ON \
-DCLANG_ENABLE_ARCMT:BOOL=ON \ -DCLANG_ENABLE_ARCMT:BOOL=ON \
-DCLANG_ENABLE_STATIC_ANALYZER:BOOL=ON \ -DCLANG_ENABLE_STATIC_ANALYZER:BOOL=ON \
@ -233,8 +239,8 @@ rm -Rvf %{buildroot}%{_datadir}/clang/index.js
for f in %{buildroot}/%{install_bindir}/*; do for f in %{buildroot}/%{install_bindir}/*; do
filename=`basename $f` filename=`basename $f`
if [ $filename != "clang-15" ]; then if [ $filename != "clang%{bin_suffix}" ]; then
ln -s ../../%{install_bindir}/$filename %{buildroot}/%{_bindir}/$filename%{bin_suffix} ln -s ../../%{install_bindir}/$filename %{buildroot}%{_bindir}/$filename%{bin_suffix}
fi fi
done done
@ -250,6 +256,9 @@ mkdir -p %{buildroot}%{pkg_libdir}/clang/%{version}/{include,lib,share}/
rm -Rvf %{buildroot}%{_includedir}/clang-tidy/ rm -Rvf %{buildroot}%{_includedir}/clang-tidy/
%check %check
%if %{with check}
LD_LIBRARY_PATH=%{buildroot}/%{pkg_libdir} %{__ninja} check-all -C ./_build/
%endif
%files %files
%license LICENSE.TXT %license LICENSE.TXT
@ -372,5 +381,10 @@ rm -Rvf %{buildroot}%{_includedir}/clang-tidy/
%{_bindir}/git-clang-format%{bin_suffix} %{_bindir}/git-clang-format%{bin_suffix}
%changelog %changelog
* Thu Feb 9 2023 Chenxi Mao <chenxi.mao@suse.com> - 15.0.6-2
- Enable clang unit tests.
- Leverage macro define instead of hardcode version number.
- Remove duplicated character.
* Mon Jan 2 2023 Chenxi Mao <chenxi.mao@suse.com> - 15.0.6-1 * Mon Jan 2 2023 Chenxi Mao <chenxi.mao@suse.com> - 15.0.6-1
- Package init - Package init