%define _unpackaged_files_terminate_build 1 Name: ipmctl Version: 01.00.00.3091 Release: 1%{?dist} Summary: Utility for managing Intel Optane DC persistent memory modules License: BSD-3-Clause Group: System/Management URL: https://github.com/intel/ipmctl Source: https://github.com/intel/ipmctl/releases/download/v%{version}/%{name}-%{version}.tar.gz ExclusiveArch: x86_64 Requires: libipmctl2%{?_isa} = %{version}-%{release} BuildRequires: pkgconfig(libndctl) BuildRequires: cmake BuildRequires: python2 BuildRequires: gcc-c++ Obsoletes: ixpdimm-cli < 01.00.00.3000 %description Utility for managing Intel Optane DC persistent memory modules Supports functionality to: Discover PMMs on the platform. Provision the platform memory configuration. View and update the firmware on PMMs. Configure data-at-rest security on PMMs. Monitor PMM health. Track performance of PMMs. Debug and troubleshoot PMMs. %prep %setup -q -n %{name}-%{version} %package -n ipmctl-monitor Summary: Daemon for monitoring the status of Intel PMM Group: System/Monitoring Requires: libipmctl2%{?_isa} = %{version}-%{release} %{?systemd_requires} BuildRequires: systemd BuildRequires: systemd-rpm-macros Obsoletes: ixpdimm-monitor < 01.00.00.3000 %description -n ipmctl-monitor A monitor daemon for monitoring the health and status of Intel Optane DC persistent memory modules %package -n libipmctl2 Summary: Library for Intel PMM management Group: System/Libraries Requires: libndctl6 >= 58.2 Obsoletes: ixpdimm_sw < 01.00.00.3000 Obsoletes: libixpdimm-common < 01.00.00.3000 Obsoletes: libixpdimm-core < 01.00.00.3000 Obsoletes: libixpdimm-cli < 01.00.00.3000 Obsoletes: libixpdimm-cim < 01.00.00.3000 Obsoletes: libixpdimm < 01.00.00.3000 Obsoletes: ixpdimm-data < 01.00.00.3000 %description -n libipmctl2 An Application Programming Interface (API) library for managing Intel Optane DC persistent memory modules. %package -n libipmctl-devel Summary: Development packages for libipmctl Group: Development/Libraries/C and C++ Requires: libipmctl2%{?_isa} = %{version}-%{release} Obsoletes: ixpdimm-devel < 01.00.00.3000 Obsoletes: ixpdimm_sw-devel < 01.00.00.3000 %description -n libipmctl-devel API for development of Intel Optane DC persistent memory management utilities. %build %cmake -DBUILDNUM=%{version} -DCMAKE_INSTALL_PREFIX=/ \ -DLINUX_PRODUCT_NAME=%{name} \ -DCMAKE_INSTALL_LIBDIR=%{_libdir} \ -DCMAKE_INSTALL_INCLUDEDIR=%{_includedir} \ -DCMAKE_INSTALL_BINDIR=%{_bindir} \ -DCMAKE_INSTALL_DATAROOTDIR=%{_datadir} \ -DCMAKE_INSTALL_MANDIR=%{_mandir} \ -DCMAKE_INSTALL_LOCALSTATEDIR=%{_localstatedir} \ -DCMAKE_INSTALL_SYSCONFDIR=%{_sysconfdir} \ -DINSTALL_UNITDIR=%{_unitdir} \ -DRELEASE=ON \ -DRPM_BUILD=ON make -f Makefile %{?_smp_mflags} %install %{!?_cmake_version: cd build} make -f Makefile install DESTDIR=%{buildroot} mkdir -p %{buildroot}%{_sbindir} ln -sf service %{buildroot}%{_sbindir}/rcipmctl-monitor %post -n libipmctl2 -p /sbin/ldconfig %postun -n libipmctl2 -p /sbin/ldconfig %pre -n ipmctl-monitor %service_add_pre ipmctl-monitor.service %post -n ipmctl-monitor %service_add_post ipmctl-monitor.service %preun -n ipmctl-monitor %service_del_preun ipmctl-monitor.service %postun -n ipmctl-monitor %service_del_postun ipmctl-monitor.service %files -n ipmctl %defattr(-,root,root) %license LICENSE %{_bindir}/ipmctl %files -n ipmctl-monitor %defattr(-,root,root) %license LICENSE %{_bindir}/ipmctl-monitor %{_sbindir}/rcipmctl-monitor %{_unitdir}/ipmctl-monitor.service %files -n libipmctl2 %defattr(-,root,root) %license LICENSE %{_libdir}/libipmctl.so.* %dir %{_datadir}/doc/ipmctl %doc %{_datadir}/doc/ipmctl/ipmctl_default.conf %config %{_sysconfdir}/ipmctl.conf %dir %attr(644,root,root) %{_localstatedir}/log/ipmctl %files -n libipmctl-devel %defattr(-,root,root) %doc README.md %{_libdir}/libipmctl.so %attr(644,root,root) %{_includedir}/nvm_types.h %attr(644,root,root) %{_includedir}/nvm_management.h %attr(644,root,root) %{_includedir}/export_api.h %attr(644,root,root) %{_includedir}/NvmStatusValues.h %changelog