# # spec file for package Bear # # Copyright (C) 2007 Free Software Foundation, Inc. # Everyone is permitted to copy and distribute verbatim copies # of this license document, but changing it is not allowed. # # This file is under the GNU GENERAL PUBLIC LICENSE Version 3. # %bcond_with tests Name: Bear Version: 3.0.20 Release: 2 Summary: Tool to generate compilation database for clang tooling License: GPL-3.0-or-later URL: https://github.com/rizsotto/Bear Source: %{name}-%{version}.tar.gz BuildRequires: bash-completion BuildRequires: gcc, gcc-c++, make BuildRequires: protobuf-devel, grpc-devel, grpc-plugins BuildRequires: c-ares-devel BuildRequires: glibc-devel, glibc-debuginfo BuildRequires: cmake BuildRequires: pkgconfig(absl_synchronization) BuildRequires: pkgconfig(grpc) BuildRequires: pkgconfig(grpc++) >= 1.26 BuildRequires: pkgconfig(protobuf) >= 3.11 %if %{with tests} BuildRequires: python BuildRequires: python3-lit BuildRequires: python3-setuptools # one of the tests requires /usr/bin/more BuildRequires: util-linux # additional binaries for specific tests BuildRequires: gcc-fortran BuildRequires: fakeroot BuildRequires: valgrind # the fakeroot test requires xargs BuildRequires: findutils %endif Patch1: 0001-change-external-project-to-local-package.patch Patch2: 0002-Rebuild-when-add-option-failed.patch %description Bear is a tool to generate compilation database for clang tooling. One way to get compilation database is to use cmake as build tool. When the project compiles with no cmake, but another build system, there is no free json file. Bear is a tool to generate such file during the build process. %prep %autosetup -p1 -n %{name}-%{version} %build BEAR_MFLAGS_JOBS="%{?_smp_mflags}" mkdir build cd build %cmake .. \ -DDEPEND_PATH=%{_sourcedir} \ -DCMAKE_INSTALL_PREFIX=%{_prefix} \ %if %{with tests} -DENABLE_UNIT_TESTS=ON \ -DENABLE_FUNC_TESTS=ON %else -DENABLE_UNIT_TESTS=OFF \ -DENABLE_FUNC_TESTS=OFF %endif make $BEAR_MFLAGS_JOBS %install pushd build make DESTDIR=%{buildroot} install # Let RPM install it correctly rm -rf %{buildroot}%{_datadir}/doc popd %files %license COPYING %doc README.md %{_bindir}/bear %{_bindir}/citnames %{_bindir}/intercept %{_mandir}/man1/bear.1* %{_mandir}/man1/citnames.1* %{_mandir}/man1/intercept.1* %{_libdir}/bear/ %changelog * Thu Dec 01 2022 zhaowenyu <804544223@qq.com> - 3.0.20-2 - Type:SPEC - ID:NA - SUG:NA - DESC:Rebuild when add option failed * Wed Nov 16 2022 zhaowenyu <804544223@qq.com> - 3.0.20-1 - Type:Init - ID:NA - SUG:NA - DESC:Init Bear 3.0.20 repository