%define major 0 %define libname %mklibname cppdap %define devname %mklibname cppdap -d Name: cppdap Version: 1.58.0_a Release: 1 URL: https://github.com/google/cppdap Source0: %{url}/archive/refs/tags/dap-%(echo %{version}|sed -e 's,_,-,g').tar.gz Source1000: %{name}.rpmlintrc Patch0: cppdap-shared-lib.patch Summary: C++ Library for the Debug Adapter Protocol License: ASL 2.0 Group: System/Libraries BuildRequires: cmake BuildRequires: ninja BuildRequires: pkgconfig(nlohmann_json) BuildRequires: pkgconfig(openssl3.3) %description cppdap is a C++11 library ("SDK") implementation of the Debug Adapter Protocol, providing an API for implementing a DAP client or server. cppdap provides C++ type-safe structures for the full DAP specification, and provides a simple way to add custom protocol messages. %package -n %{libname} Summary: C++ Library for the Debug Adapter Protocol Group: System/Libraries %description -n %{libname} cppdap is a C++11 library ("SDK") implementation of the Debug Adapter Protocol, providing an API for implementing a DAP client or server. cppdap provides C++ type-safe structures for the full DAP specification, and provides a simple way to add custom protocol messages. %package -n %{devname} Summary: Development files for %{name} Group: Development/C Requires: %{libname} = %{EVRD} %description -n %{devname} Development files (Headers etc.) for %{name}. cppdap is a C++11 library ("SDK") implementation of the Debug Adapter Protocol, providing an API for implementing a DAP client or server. cppdap provides C++ type-safe structures for the full DAP specification, and provides a simple way to add custom protocol messages. %prep %setup -qn cppdap-dap-%(echo %{version} |sed -e 's,_,-,g') %patch0 -p1 %build %cmake \ -DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo \ -DCPPDAP_USE_EXTERNAL_NLOHMANN_JSON_PACKAGE:BOOL=ON \ -DBUILD_STATIC_LIBS:BOOL=OFF \ -DBUILD_SHARED_LIBS:BOOL=ON \ -G Ninja %ninja_build %install %ninja_install -C build %files -n %{libname} %{_libdir}/*.so.%{major}* %files -n %{devname} %{_includedir}/* %{_libdir}/*.so %{_libdir}/cmake/*