SHA256
1
0
forked from pool/ipmctl

Accepting request 666964 from home:rwill:branches:hardware:nvdimm

- Update to v01.00.00.3382.  [FATE#326756, FATE#326917, FATE#326918]
  [bsc#1116404, bsc#1091108]
- Fix remaining unconditional calls to python/python2.  [bsc#1111020]
  (ipmctl-python3.patch)

OBS-URL: https://build.opensuse.org/request/show/666964
OBS-URL: https://build.opensuse.org/package/show/hardware:nvdimm/ipmctl?expand=0&rev=14
This commit is contained in:
Raymund Will 2019-01-18 11:50:09 +00:00 committed by Git OBS Bridge
parent 837b5425d0
commit ababa5f25f
10 changed files with 383 additions and 108 deletions

2
.gitattributes vendored
View File

@ -21,3 +21,5 @@
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text
## Specific LFS patterns
libsafec-patches.tar filter=lfs diff=lfs merge=lfs -text

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:116d67cb3078d301c37dd92ce14d1e5d97bf1f279753f5b6861bef3c3fca4ffd
size 10342671

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bcd2718fdad49fd6125e8bd04860b99dca04560d61a074081f776b23ee4342a1
size 10448637

View File

@ -1,37 +0,0 @@
---
CMakeLists.txt | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -113,10 +113,10 @@ if(LNX_BUILD)
-D_GNU_SOURCE
-D__LINUX__
)
- if(CMAKE_C_COMPILER_ID STREQUAL "GNU" AND CMAKE_C_COMPILER_VERSION VERSION_GREATER 4.8)
+ if(CMAKE_C_COMPILER_ID STREQUAL "GNU" AND CMAKE_C_COMPILER_VERSION VERSION_GREATER 4.9)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fstack-protector-strong")
endif()
- if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 4.8)
+ if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 4.9)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fstack-protector-strong")
endif()
endif()
@@ -376,6 +376,7 @@ if(MSVC)
set_target_properties(ipmctl-bin PROPERTIES LINK_FLAGS "/STACK:3000000")
else()
target_compile_options(ipmctl-bin PRIVATE "-fPIE")
+ set_target_properties(ipmctl-bin PROPERTIES LINK_FLAGS "-pie")
endif()
#---------------------------------------------------------------------------------------------------
@@ -414,7 +415,8 @@ if (NOT ESX_BUILD)
)
if(UNIX)
- target_compile_options(ipmctl-monitor PRIVATE "-fPIE")
+ target_compile_options(ipmctl-monitor PRIVATE "-fPIE")
+ set_target_properties(ipmctl-monitor PROPERTIES LINK_FLAGS "-pie")
endif()
endif()

243
ipmctl-python3.patch Normal file
View File

@ -0,0 +1,243 @@
---
BaseTools/Bin/CYGWIN_NT-5.1-i686/Ecc | 2 ++
BaseTools/Bin/CYGWIN_NT-5.1-i686/GenDepex | 2 ++
BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFds | 2 ++
BaseTools/Bin/CYGWIN_NT-5.1-i686/TargetTool | 2 ++
BaseTools/Bin/CYGWIN_NT-5.1-i686/Trim | 2 ++
BaseTools/Bin/CYGWIN_NT-5.1-i686/build | 2 ++
BaseTools/BinWrappers/PosixLike/BPDG | 2 ++
BaseTools/BinWrappers/PosixLike/Ecc | 2 ++
BaseTools/BinWrappers/PosixLike/GenDepex | 2 ++
BaseTools/BinWrappers/PosixLike/GenFds | 2 ++
BaseTools/BinWrappers/PosixLike/GenPatchPcdTable | 2 ++
BaseTools/BinWrappers/PosixLike/PatchPcdValue | 2 ++
BaseTools/BinWrappers/PosixLike/Pkcs7Sign | 2 ++
BaseTools/BinWrappers/PosixLike/Rsa2048Sha256GenerateKeys | 2 ++
BaseTools/BinWrappers/PosixLike/Rsa2048Sha256Sign | 2 ++
BaseTools/BinWrappers/PosixLike/TargetTool | 2 ++
BaseTools/BinWrappers/PosixLike/Trim | 2 ++
BaseTools/BinWrappers/PosixLike/UPT | 2 ++
BaseTools/BinWrappers/PosixLike/build | 2 ++
BaseTools/Tests/GNUmakefile | 2 +-
21 files changed, 48 insertions(+), 3 deletions(-)
--- a/BaseTools/Bin/CYGWIN_NT-5.1-i686/Ecc
+++ b/BaseTools/Bin/CYGWIN_NT-5.1-i686/Ecc
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenDepex
+++ b/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenDepex
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFds
+++ b/BaseTools/Bin/CYGWIN_NT-5.1-i686/GenFds
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/Bin/CYGWIN_NT-5.1-i686/TargetTool
+++ b/BaseTools/Bin/CYGWIN_NT-5.1-i686/TargetTool
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/Bin/CYGWIN_NT-5.1-i686/Trim
+++ b/BaseTools/Bin/CYGWIN_NT-5.1-i686/Trim
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/Bin/CYGWIN_NT-5.1-i686/build
+++ b/BaseTools/Bin/CYGWIN_NT-5.1-i686/build
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/BinWrappers/PosixLike/BPDG
+++ b/BaseTools/BinWrappers/PosixLike/BPDG
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/BinWrappers/PosixLike/Ecc
+++ b/BaseTools/BinWrappers/PosixLike/Ecc
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/BinWrappers/PosixLike/GenDepex
+++ b/BaseTools/BinWrappers/PosixLike/GenDepex
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/BinWrappers/PosixLike/GenFds
+++ b/BaseTools/BinWrappers/PosixLike/GenFds
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/BinWrappers/PosixLike/GenPatchPcdTable
+++ b/BaseTools/BinWrappers/PosixLike/GenPatchPcdTable
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/BinWrappers/PosixLike/PatchPcdValue
+++ b/BaseTools/BinWrappers/PosixLike/PatchPcdValue
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/BinWrappers/PosixLike/Pkcs7Sign
+++ b/BaseTools/BinWrappers/PosixLike/Pkcs7Sign
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/BinWrappers/PosixLike/Rsa2048Sha256GenerateKeys
+++ b/BaseTools/BinWrappers/PosixLike/Rsa2048Sha256GenerateKeys
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/BinWrappers/PosixLike/Rsa2048Sha256Sign
+++ b/BaseTools/BinWrappers/PosixLike/Rsa2048Sha256Sign
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/BinWrappers/PosixLike/TargetTool
+++ b/BaseTools/BinWrappers/PosixLike/TargetTool
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/BinWrappers/PosixLike/Trim
+++ b/BaseTools/BinWrappers/PosixLike/Trim
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/BinWrappers/PosixLike/UPT
+++ b/BaseTools/BinWrappers/PosixLike/UPT
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/BinWrappers/PosixLike/build
+++ b/BaseTools/BinWrappers/PosixLike/build
@@ -4,6 +4,8 @@
# If a python2 command is available, use it in preference to python
if command -v python2 >/dev/null 2>&1; then
python_exe=python2
+elif command -v python3 >/dev/null 2>&1; then
+ python_exe=python3
fi
full_cmd=${BASH_SOURCE:-$0} # see http://mywiki.wooledge.org/BashFAQ/028 for a discussion of why $0 is not a good choice here
--- a/BaseTools/Tests/GNUmakefile
+++ b/BaseTools/Tests/GNUmakefile
@@ -14,7 +14,7 @@
all: test
test:
- @if command -v python2 >/dev/null 2>&1; then python2 RunTests.py; else python RunTests.py; fi
+ @if command -v python2 >/dev/null 2>&1; then python2 RunTests.py; elif command -v python3 >/dev/null 2>&1; then python3 RunTests.py; else python RunTests.py; fi
clean:
find . -name '*.pyc' -exec rm '{}' ';'

View File

@ -1,3 +1,14 @@
-------------------------------------------------------------------
Fri Jan 18 08:07:22 UTC 2019 - rw@suse.com
- Update to v01.00.00.3382. [FATE#326756, FATE#326917, FATE#326918]
[bsc#1116404, bsc#1091108]
- Integrate SafeC dependency in contrib.
- Fix remaining unconditional calls to python/python2. [bsc#1111020]
(ipmctl-python3.patch)
- Drop obsoleted patch(es).
(ipmctl-fix-SLE12-build.patch)
-------------------------------------------------------------------
Wed Oct 17 10:24:17 UTC 2018 - rw@suse.com
@ -13,7 +24,7 @@ Wed Oct 10 14:28:25 UTC 2018 - rw@suse.com
Fri Aug 10 15:28:34 UTC 2018 - rw@suse.com
- Update to v01.00.00.3102. [FATE#325527]
(Last release without "safec" dependency.)
(Last release without "SafeC" dependency.)
- Refresh ipmctl-fix-SLE12-build.patch.
- Incorporate spec-file improvements proposed by mpluskal.

View File

@ -1,7 +1,7 @@
#
# spec file for package ipmctl
#
# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -16,8 +16,12 @@
#
%define abi 3
%define vSafeC 03032018
%define pSafeC rurban/safeclib/releases/download/v%{vSafeC}
Name: ipmctl
Version: 01.00.00.3102
Version: 01.00.00.3382
Release: 0
Summary: Utility for managing Intel Optane DC persistent memory modules
License: BSD-3-Clause
@ -25,21 +29,40 @@ Group: System/Management
Url: https://github.com/intel/ipmctl
Source: https://github.com/intel/ipmctl/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source1: %{name}-rpmlintrc
Patch1: ipmctl-fix-SLE12-build.patch
Source10: https://github.com/%{pSafeC}/libsafec-%{vSafeC}.0-g570fa5.tar.gz
#ource10: libsafec-prebuild.tar.xz
Source11: mkSafeC
Source12: libsafec-patches.tar
Patch1: ipmctl-python3.patch
Requires: libipmctl2%{?_isa} = %{version}-%{release}
Recommends: logrotate
%if %{defined pythons}
BuildRequires: %{pythons}
%else
BuildRequires: python2
BuildRequires: python
%endif
BuildRequires: cmake
BuildRequires: gcc-c++
BuildRequires: pkgconfig
BuildRequires: systemd
BuildRequires: systemd-rpm-macros
BuildRequires: pkgconfig(libndctl)
BuildRequires: pkgconfig(libndctl) >= 58.2
# for libsafec
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: gcc
BuildRequires: libtool
Conflicts: lib%{name}2
Obsoletes: ixpdimm-cli < 01.00.00.3000
Obsoletes: ixpdimm-data < 01.00.00.3000
Obsoletes: ixpdimm_sw < 01.00.00.3000
Obsoletes: libixpdimm < 01.00.00.3000
Obsoletes: libixpdimm-cim < 01.00.00.3000
Obsoletes: libixpdimm-cli < 01.00.00.3000
Obsoletes: libixpdimm-common < 01.00.00.3000
Obsoletes: libixpdimm-core < 01.00.00.3000
ExclusiveArch: x86_64
%description
@ -53,53 +76,32 @@ Supports functionality to:
* Track performance of PMMs.
* Debug and troubleshoot PMMs.
%package -n ipmctl-monitor
%package monitor
Summary: Daemon for monitoring the status of Intel PMM
Group: System/Monitoring
Conflicts: libipmctl2%{?_isa} < %{version}-%{release}
%{?systemd_requires}
Obsoletes: ixpdimm-monitor < 01.00.00.3000
%description -n ipmctl-monitor
%description 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: %{name}-data
Obsoletes: ixpdimm-data < 01.00.00.3000
Obsoletes: ixpdimm_sw < 01.00.00.3000
Obsoletes: libixpdimm < 01.00.00.3000
Obsoletes: libixpdimm-cim < 01.00.00.3000
Obsoletes: libixpdimm-cli < 01.00.00.3000
Obsoletes: libixpdimm-common < 01.00.00.3000
Obsoletes: libixpdimm-core < 01.00.00.3000
%description -n libipmctl2
An Application Programming Interface (API) library for managing Intel Optane DC persistent memory modules.
%package -n %{name}-data
Summary: Data files for %{name}
Group: System/Libraries
%description -n ipmctl-data
Non-versioned files for libipmctl2.
%package -n ipmctl-devel
Summary: Development packages for libipmctl
%package devel
Summary: Development packages for %{name}
Group: Development/Libraries/C and C++
Requires: libipmctl2 = %{version}
Requires: %{name} = %{version}
Obsoletes: ixpdimm-devel < 01.00.00.3000
Obsoletes: ixpdimm_sw-devel < 01.00.00.3000
%description -n ipmctl-devel
%description devel
API for development of Intel Optane DC persistent memory management utilities.
%prep
%setup -q -n %{name}-%{version}
%setup -q -n %{name}-%{version} -a 10
%patch1 -p1
%build
/bin/bash -ex "%{SOURCE11}" "%{SOURCE12}" "%{?_smp_mflags}"
export PKG_CONFIG_PATH=$PWD/contrib/lib/pkgconfig
%cmake -DBUILDNUM=%{version} -DCMAKE_INSTALL_PREFIX=/ \
-DLINUX_PRODUCT_NAME=%{name} \
-DCMAKE_INSTALL_LIBDIR=%{_libdir} \
@ -117,54 +119,54 @@ API for development of Intel Optane DC persistent memory management utilities.
%install
%cmake_install
mkdir -p %{buildroot}%{_sbindir}
ln -sf service %{buildroot}%{_sbindir}/rcipmctl-monitor
ln -sf service %{buildroot}%{_sbindir}/rc%{name}-monitor
rm -f %{buildroot}%{_datadir}/doc/ipmctl/ipmctl_default.conf
rm -f %{buildroot}%{_libdir}/*.so.%{abi}
%post -n libipmctl2 -p /sbin/ldconfig
%post -p /sbin/ldconfig
%postun -n libipmctl2 -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%pre -n ipmctl-monitor
%pre monitor
%service_add_pre ipmctl-monitor.service
%post -n ipmctl-monitor
%post monitor
%service_add_post ipmctl-monitor.service
%preun -n ipmctl-monitor
%preun monitor
%service_del_preun ipmctl-monitor.service
%postun -n ipmctl-monitor
%postun monitor
%service_del_postun ipmctl-monitor.service
%files
%defattr(-,root,root)
%license LICENSE
%{_bindir}/ipmctl
%license LICENSE contrib/COPYING.*
%doc README.md CONTRIBUTING.md Documentation/ipmctl/ipmctl.txt
%{_bindir}/%{name}
%files -n ipmctl-monitor
#files data
%doc output/release/%{name}_default.conf
%config %{_sysconfdir}/%{name}.conf
%config %{_sysconfdir}/logrotate.d/%{name}
%dir %{_localstatedir}/log/%{name}
#files -n lib%%{name}%%{abi}
%{_libdir}/lib%{name}.so.%{abi}.*
%files monitor
%defattr(-,root,root)
%license LICENSE
%{_bindir}/ipmctl-monitor
%{_sbindir}/rcipmctl-monitor
%{_unitdir}/ipmctl-monitor.service
%{_bindir}/%{name}-monitor
%{_sbindir}/rc%{name}-monitor
%{_unitdir}/%{name}-monitor.service
%files -n libipmctl2
%files devel
%defattr(-,root,root)
%{_libdir}/libipmctl.so.*
%files -n %{name}-data
%defattr(-,root,root)
%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 ipmctl-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
%{_libdir}/lib%{name}.so
%{_libdir}/pkgconfig/lib%{name}.pc
%{_includedir}/nvm_types.h
%{_includedir}/nvm_management.h
%{_includedir}/export_api.h
%{_includedir}/NvmSharedDefs.h
%changelog

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3e3af263e2d794c1e24435d89d0ee00640b3f9f5d8d73d0250e97cae273c6637
size 906503

3
libsafec-patches.tar Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:120d12e728670fc709e2f180f9ff57797f74bd1ad882aef341df9111c3358aeb
size 10240

48
mkSafeC Normal file
View File

@ -0,0 +1,48 @@
#!/bin/bash
[ -r CMakeLists.txt ]
perl -pi.00 -e '
s<(\$\{CMAKE_THREAD_LIBS_INIT\})><PUBLIC $1>;
if (!$f) {
$f=1 if (s<(\$\{LIBSAFEC)(_LIBRARIES)><PRIVATE ${1}_LDFLAGS\} ${1}_STATIC${2}>);
}
s[(CMAKE_INSTALL_)DATAROOT(DIR\})/ipmctl][${1}SYSCONF${2}];
$_ .= " RENAME ipmctl\n" if (m{/logrotate\.d});
' CMakeLists.txt
#diff -u CMakeLists.txt{.00,} || sleep 2
perl -pi.00 -e 's{/usr/share/ipmctl}{/etc}' src/os/ini/ini.c
#diff -u src/os/ini/ini.c{.00,} || sleep 4
CONTRIB=$PWD/contrib
if [ -d $CONTRIB/include ]; then
cd $CONTRIB/src/libsafec*
LSC=${PWD##*/}
cp -p COPYING $CONTRIB/COPYING.$LSC
sleep 2
exit 0
fi
mkdir -p contrib/src/patches/libsafec
mv libsafec* contrib/src
[ -z "$1" ] || tar xvfC "$1" contrib/src/patches/libsafec
cd contrib/src/libsafec*
for p in ../patches/libsafec/*.patch; do
patch -p1 < $p
done
autoreconf -Wall --install
./configure --disable-shared \
--enable-static --enable-strmax=0x8000 \
--prefix=$CONTRIB \
CFLAGS="$RPM_OPT_FLAGS -fPIC -DHAVE_C99"
make $2
make install
LSC=${PWD##*/}
cp -p COPYING $CONTRIB/COPYING.$LSC
[ -d $CONTRIB/include/libsafec ] || exit 1
cd $CONTRIB/..
tar cf /tmp/libsafec-prebuild.tar contrib