diff --git a/.gitignore b/.gitignore index cac54fc..18dbbc6 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,7 @@ OpenIPMI-2.0.18.tar.gz /OpenIPMI-2.0.28.tar.gz /OpenIPMI-2.0.29.tar.gz /OpenIPMI-2.0.31.tar.gz +/OpenIPMI-2.0.32.tar.gz +/OpenIPMI-2.0.34.tar.gz +/OpenIPMI-2.0.35.tar.gz +/OpenIPMI-2.0.36.tar.gz diff --git a/OpenIPMI-py313compat.patch b/OpenIPMI-py313compat.patch new file mode 100644 index 0000000..fccde75 --- /dev/null +++ b/OpenIPMI-py313compat.patch @@ -0,0 +1,13 @@ +diff --git a/swig/python/OpenIPMI_lang.i b/swig/python/OpenIPMI_lang.i +index 67221fd..d150d81 100644 +--- a/swig/python/OpenIPMI_lang.i ++++ b/swig/python/OpenIPMI_lang.i +@@ -541,7 +541,7 @@ static void OI_put_py_state(int current) + #else + static void init_lang(void) + { +- PyEval_InitThreads(); ++ /* nothing */ + } + #define OI_PY_STATE PyGILState_STATE + #define OI_PY_STATE_GET() PyGILState_Ensure() diff --git a/OpenIPMI.spec b/OpenIPMI.spec index 99e2e98..7016dc2 100644 --- a/OpenIPMI.spec +++ b/OpenIPMI.spec @@ -1,21 +1,35 @@ %global _hardened_build 1 +%bcond_with python +%bcond_with perl + Summary: IPMI (Intelligent Platform Management Interface) library and tools Name: OpenIPMI -Version: 2.0.31 -Release: 1%{?dist} -License: LGPLv2+ and GPLv2+ or BSD -URL: http://sourceforge.net/projects/openipmi/ -Source: http://downloads.sourceforge.net/openipmi/%{name}-%{version}.tar.gz +Version: 2.0.36 +Release: 5%{?dist} +License: LGPL-2.1-or-later and GPL-2.0-or-later or BSD-3-Clause +URL: https://sourceforge.net/projects/openipmi/ +Source: https://downloads.sourceforge.net/openipmi/%{name}-%{version}.tar.gz Source1: openipmi.sysconf Source2: openipmi-helper Source3: ipmi.service Patch1: 0001-man.patch +Patch2: include-config-h-cmdlang.patch +Patch5: OpenIPMI-py313compat.patch BuildRequires: make -BuildRequires: gdbm-devel swig glib2-devel net-snmp-devel ncurses-devel -BuildRequires: openssl-devel python3-devel perl-devel perl-generators +BuildRequires: gdbm-devel glib2-devel net-snmp-devel ncurses-devel +%if %{with python} || %{with perl} +BuildRequires: swig +%endif +BuildRequires: openssl-devel +%if %{with python} +BuildRequires: python3-devel +%endif +%if %{with perl} +BuildRequires: perl-devel perl-generators +%endif BuildRequires: pkgconfig BuildRequires: readline-devel BuildRequires: automake @@ -41,14 +55,16 @@ Summary: The OpenIPMI runtime libraries The OpenIPMI-libs package contains the runtime libraries for shared binaries and applications. +%if %{with perl} %package perl Summary: IPMI Perl language bindings -Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description perl The OpenIPMI-perl package contains the Perl language bindings for OpenIPMI. +%endif +%if %{with python} %package -n python3-openipmi %{?python_provide:%python_provide python3-openipmi} %{?python_provide:%python_provide python3-OpenIPMI} @@ -61,12 +77,14 @@ Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description -n python3-openipmi The OpenIPMI-python package contains the Python language bindings for OpenIPMI. +%endif %package devel Summary: The development environment for the OpenIPMI project Requires: pkgconfig Requires: %{name}%{?_isa} = %{version}-%{release} Requires: %{name}-libs%{?_isa} = %{version}-%{release} +Requires: %{name}-lanserv%{?_isa} = %{version}-%{release} %description devel The OpenIPMI-devel package contains the development libraries and header files @@ -75,6 +93,7 @@ of the OpenIPMI project. %package lanserv Summary: Emulates an IPMI network listener Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description lanserv This package contains a network IPMI listener. @@ -90,8 +109,15 @@ This package contains a network IPMI listener. LDFLAGS="%{__global_ldflags} -Wl,--as-needed" \ --disable-dependency-tracking \ --disable-static \ +%if %{with python} --with-pythoninstall=%{python3_sitearch} \ --with-python=%{__python3} \ +%else + --with-python=no \ +%endif +%if %{without perl} + --with-perl=no \ +%endif --with-tcl=no \ --with-tkinter=no @@ -168,13 +194,17 @@ echo ".so man1/openipmish.1" > %{buildroot}%{_mandir}/man1/ipmish.1 %{_mandir}/man7/ipmi_cmdlang* %{_mandir}/man7/openipmi_conparms* +%if %{with perl} %files perl %attr(644,root,root) %{perl_vendorarch}/OpenIPMI.pm %{perl_vendorarch}/auto/OpenIPMI +%endif +%if %{with python} %files -n python3-openipmi %{python3_sitearch}/*OpenIPMI* %{python3_sitearch}/__pycache__/OpenIPMI.*.pyc +%endif %files libs %{_libdir}/libOpenIPMI*.so.* @@ -198,6 +228,101 @@ echo ".so man1/openipmish.1" > %{buildroot}%{_mandir}/man1/ipmish.1 %{_mandir}/man5/ipmi_sim_cmd.5* %changelog +* Fri Jan 16 2026 Fedora Release Engineering - 2.0.36-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild + +* Mon Jan 12 2026 Josef Ridky - 2.0.36-4 +- rebuild for new net-snmp release + +* Wed Jul 23 2025 Fedora Release Engineering - 2.0.36-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild + +* Thu Jan 16 2025 Fedora Release Engineering - 2.0.36-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Thu Aug 22 2024 Fedora Release Monitoring - 2.0.36-1 +- Update to 2.0.36 (#2302353) +- Resolves CVE-2024-42934 + +* Wed Jul 17 2024 Fedora Release Engineering - 2.0.35-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Tue May 7 2024 Pavel Cahyna - 2.0.35-1 +- Switch to https +- Update to 2.0.35 (rhbz#2278007) + drop patch integrated upstream + +* Sun Feb 11 2024 Pavel Cahyna - 2.0.34-1 +- Update to 2.0.34 (rhbz#2105023) +- Resolve issues found by rpmdiff + - add a patch to fix getaddrinfo detection to avoid using gethostbyname + - add explicit Requires: on subpackages to avoid the need to test + interoperability between the various combinations of old and new + subpackages +- Conditional Perl & Python module build, by default disabled + +* Mon Jan 22 2024 Fedora Release Engineering - 2.0.32-13 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 19 2024 Fedora Release Engineering - 2.0.32-12 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Mon Jan 08 2024 Florian Weimer - 2.0.32-11 +- Fix C compatibility issues + +* Wed Jul 19 2023 Fedora Release Engineering - 2.0.32-10 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Tue Jul 18 2023 Josef Ridky - 2.0.32-9 +- Migrate to SPDX license format + +* Tue Jul 11 2023 Jitka Plesnikova - 2.0.32-8 +- Perl 5.38 rebuild + +* Tue Jun 13 2023 Python Maint - 2.0.32-7 +- Rebuilt for Python 3.12 + +* Wed Jan 18 2023 Fedora Release Engineering - 2.0.32-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Wed Jul 20 2022 Fedora Release Engineering - 2.0.32-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Mon Jun 13 2022 Python Maint - 2.0.32-4 +- Rebuilt for Python 3.11 + +* Tue May 31 2022 Jitka Plesnikova - 2.0.32-3 +- Perl 5.36 rebuild + +* Wed Jan 19 2022 Fedora Release Engineering - 2.0.32-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Mon Jan 10 2022 Josef Ridky - 2.0.32-1 +- new upstream release 2.0.32 (#2020717) + +* Tue Sep 14 2021 Sahana Prasad - 2.0.31-8 +- Rebuilt with OpenSSL 3.0.0 + +* Mon Aug 02 2021 Josef Ridky - 2.0.31-7 +- replace distutils and fix FTBFS (#1948437) +- fix collectd-ipmi crash (#1927022) + +* Wed Jul 21 2021 Fedora Release Engineering - 2.0.31-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Fri Jun 04 2021 Python Maint - 2.0.31-5 +- Rebuilt for Python 3.10 + +* Fri May 21 2021 Jitka Plesnikova - 2.0.31-4 +- Perl 5.34 rebuild + +* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 2.0.31-3 +- Rebuilt for updated systemd-rpm-macros + See https://pagure.io/fesco/issue/2583. + +* Mon Jan 25 2021 Fedora Release Engineering - 2.0.31-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Mon Jan 25 2021 Josef Ridky - 2.0.31-1 - New upstream release 2.0.31 (#1905768) diff --git a/include-config-h-cmdlang.patch b/include-config-h-cmdlang.patch new file mode 100644 index 0000000..4f9fcab --- /dev/null +++ b/include-config-h-cmdlang.patch @@ -0,0 +1,12 @@ +diff -up OpenIPMI-2.0.32/cmdlang/cmdlang.c~ OpenIPMI-2.0.32/cmdlang/cmdlang.c +--- OpenIPMI-2.0.32/cmdlang/cmdlang.c~ 2021-01-22 19:51:28.000000000 +0100 ++++ OpenIPMI-2.0.32/cmdlang/cmdlang.c 2022-01-28 11:55:42.375470392 +0100 +@@ -32,6 +32,8 @@ + */ + + ++#include ++ + #include + #include + #include diff --git a/sources b/sources index f58fa1e..1870111 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (OpenIPMI-2.0.31.tar.gz) = de1b364315e97daffb4c601bcf3bf33591795449d71690496ae368bd0730a117c1716508ecaddef5d55498f56e73481a32f509791185e80e2475667d7abd73e7 +SHA512 (OpenIPMI-2.0.36.tar.gz) = a47725308336f200e88a1eb8641ed5ef03fc8bb43ee47f7a99e39df68640ff912b6842c1710d7e767aeb724fc41fa4ed3b244685812ee985e5200003a45f4015