Accepting request 579552 from home:jmoellers:branches:Base:System

OBS-URL: https://build.opensuse.org/request/show/579552
OBS-URL: https://build.opensuse.org/package/show/Base:System/libsmbios?expand=0&rev=34
This commit is contained in:
Dirk Mueller 2018-02-27 09:50:39 +00:00 committed by Git OBS Bridge
parent c1e5a7938f
commit 7ca49ebcd9
5 changed files with 108 additions and 118 deletions

3
libsmbios-2.3.3.tar.bz2 Normal file
View File

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

View File

@ -1,3 +1,10 @@
-------------------------------------------------------------------
Fri Feb 23 15:36:12 UTC 2018 - josef.moellers@suse.com
- Package was ported to python3 by upstream, no functional changes,
no api changes.
[bsc#1076409]
-------------------------------------------------------------------
Fri Nov 3 05:06:47 UTC 2017 - bwiedemann@suse.com

1
libsmbios.rpmlintrc Normal file
View File

@ -0,0 +1 @@
addFilter("E: shlib-policy-name-error")

View File

@ -1,7 +1,7 @@
#
# spec file for package libsmbios
#
# Copyright (c) 2017 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2018 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -27,40 +27,62 @@
%define release_name libsmbios
%define other_name libsmbios2
# %%if 0%%{?suse_version}
# %%define release_name libsmbios2
# %%define other_name libsmbios
# %%endif
%if 0%{?suse_version}
%define release_name libsmbios2
%define other_name libsmbios
%endif
%{!?build_python: %define build_python 1}
%{?_with_python: %define build_python 1}
%{!?build_python: %global build_python 1}
%{?_with_python: %global build_python 1}
%{?_without_python: %undefine build_python}
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
# %%define debug_package %%{nil}
# run_unit_tests not defined by default as cppunit
# not available in OS on several major OS
%{?_without_unit_tests: %undefine run_unit_tests}
%{?_with_unit_tests: %define run_unit_tests 1}
%{!?as_needed: %define as_needed 1}
%{!?as_needed: %global as_needed 1}
%{?_without_as_needed: %undefine as_needed}
%{?_with_as_needed: %define as_needed 1}
# some distros already have fdupes macro. If not, we just set it to something innocuous
%{?!fdupes: %define fdupes /usr/sbin/hardlink -c -v}
%{?_with_as_needed: %global as_needed 1}
%define cppunit_BR cppunit-devel
%define pkgconfig_BR pkgconfig
%define ctypes_BR python-ctypes
%define fdupes_BR hardlink
%define valgrind_BR valgrind
# Some variable definitions so that we can be compatible between SUSE Build service and Fedora build system
# SUSE: fedora_version suse_version rhel_version centos_version sles_version
# Fedora: fedora dist fc8 fc9
# suse never added python-ctypes provides to python 2.5 :(
%define ctypes_BR %{nil}
%define fdupes_BR fdupes
# suse/sles
%if 0%{?suse_version}
%if 0%{?suse_version} < 1000
%define valgrind_BR %{nil}
# sles 9 doesnt have as_needed
%undefine as_needed
%endif
%if 0%{?suse_version} >= 1020
# suse never added python-ctypes provides to python 2.5 :(
%define ctypes_BR %{nil}
%endif
%endif
# rhel (should work on OBS and EPEL)
%if 0%{?rhel}
%if 0%{?rhel} < 4
# dont yet have rhel3 valgrind
%define valgrind_BR %{nil}
# no python-ctypes for python <= 2.2
%undefine build_python
# rhel3 doesnt have -as-needed
%undefine as_needed
%endif
%endif
%define python_devel_BR %{nil}
%if 0%{?build_python}
%define python_devel_BR python-devel
%define python_devel_BR %{pythons}
# per fedora and suse python packaging guidelines
# suse: will define py_sitedir for us
# fedora: use the !? code below to define when it isnt already
@ -74,26 +96,26 @@
%endif
# if unit tests are disabled, get rid of a few BuildRequires
%{!?run_unit_tests: %define cppunit_BR %{nil}}
%{!?run_unit_tests: %define valgrind_BR %{nil}}
%{!?run_unit_tests: %global cppunit_BR %{nil}}
%{!?run_unit_tests: %global valgrind_BR %{nil}}
Name: %{release_name}
Version: 2.3.3
Release: 3%{?dist}
Summary: Libsmbios C/C++ shared libraries
Version: %{release_version}
Release: 3.1%{?dist}
Summary: Libsmbios C shared libraries
License: GPL-2.0+ or OSL-2.1
Group: System Environment/Libraries
Url: https://github.com/dell/libsmbios
Source: https://github.com/dell/libsmbios/archive/v%{version}.tar.gz
Group: System/Libraries
Source: libsmbios-%{version}.tar.bz2
Source1: libsmbios.rpmlintrc
Url: http://github.com/dell/libsmbios
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: libtool
BuildRequires: strace libxml2-devel gcc-c++ gettext doxygen %{valgrind_BR} %{cppunit_BR} %{fdupes_BR} %{pkgconfig_BR} %{python_devel_BR}
BuildRequires: python-rpm-macros
BuildRequires: strace libxml2-devel gcc-c++ gettext doxygen %{valgrind_BR} %{cppunit_BR} %{pkgconfig_BR} %{pythons}
# uncomment for official fedora
Obsoletes: libsmbios-libs < 2.0.0
Provides: libsmbios-libs = 0:%{version}-%{release}
Obsoletes: %{other_name} <= 0:%{version}-%{release}
Obsoletes: %{other_name} < 0:%{version}-%{release}
Provides: %{other_name} = 0:%{version}-%{release}
# libsmbios only ever makes sense on intel compatible arches
@ -101,19 +123,14 @@ Provides: %{other_name} = 0:%{version}-%{release}
ExclusiveArch: x86_64 ia64 %{ix86}
%description
Libsmbios is a library and utilities that can be used by client programs to get
This package is a library and utilities that can be used by client programs to get
information from standard BIOS tables, such as the SMBIOS table.
This package provides the C-based libsmbios library, with a C interface.
This package also has a C++-based library, with a C++ interface. It is not
actively maintained, but provided for backwards compatibility. New programs
should use the libsmbios C interface.
%package -n python-smbios
Summary: Python interface to Libsmbios C library
Group: System Environment/Libraries
Group: System/Libraries
Requires: %{release_name} = %{version}-%{release}
Requires: python %{ctypes_BR}
@ -122,7 +139,7 @@ This package provides a Python interface to libsmbios
%package -n smbios-utils
Summary: Meta-package that pulls in all smbios binaries and python scripts
Group: Applications/System
Group: System/Management
Requires: smbios-utils-bin
%if 0%{?build_python}
Requires: smbios-utils-python
@ -138,7 +155,7 @@ as the python executables.
%package -n smbios-utils-bin
Summary: Binary utilities that use libsmbios
Group: Applications/System
Group: System/Management
Requires: %{release_name} = %{version}-%{release}
%description -n smbios-utils-bin
@ -147,7 +164,7 @@ asset tag.
%package -n smbios-utils-python
Summary: Python executables that use libsmbios
Group: Applications/System
Group: System/Management
Requires: python-smbios = %{version}-%{release}
%description -n smbios-utils-python
@ -159,7 +176,7 @@ Update BIOS on select Dell systems. Set LCD brightness on select Dell laptops.
# name the devel package libsmbios-devel regardless of package name, per suse/fedora convention
%package -n libsmbios-devel
Summary: Development headers and archives
Group: Development/Libraries
Group: Development/Libraries/C and C++
Requires: %{release_name} = %{version}-%{release}
Provides: libsmbios2-devel = %{version}-%{release}
Obsoletes: libsmbios2-devel < %{version}-%{release}
@ -171,26 +188,13 @@ information from standard BIOS tables, such as the SMBIOS table.
This package contains the headers and .a files necessary to compile new client
programs against libsmbios.
%package -n yum-dellsysid
Summary: YUM plugin to retrieve the Dell System ID
Group: Development/Tools
# yum plugin and supporting functions first appeared in 2.2.0
Requires: smbios-utils-python >= 2.2.0
%description -n yum-dellsysid
Libsmbios is a library and utilities that can be used by client programs to get
information from standard BIOS tables, such as the SMBIOS table.
This package contains a YUM plugin which allows the use of certain
substitutions in yum repository configuration files on Dell systems.
%prep
: '########################################'
: '########################################'
: '#'
: '# build_python: %{?build_python}'
: '# run_unit_tests: %{?run_unit_tests}'
: '# rhel: %{?rhel}'
: '# suse_version: %{?suse_version}'
: '#'
: '########################################'
@ -211,12 +215,12 @@ echo '../configure "$@"' > configure
chmod +x ./configure
%configure \
%{?!as_needed:--disable-as-needed} %{?!build_python:--disable-python} \
--enable-libsmbios_cxx
%{?!as_needed:--disable-as-needed} %{?!build_python:--disable-python}
mkdir -p out/libsmbios_c
mkdir -p out/libsmbios_c++
make CFLAGS="-Werror" %{?_smp_mflags}
make CFLAGS="-Werror" %{?_smp_mflags} OPT="$RPM_OPT_FLAGS" 2>&1 | tee build-%{_arch}.log
echo \%doc _build/build-%{_arch}.log > buildlogs.txt
%check
runtest() {
@ -224,10 +228,11 @@ runtest() {
%if 0%{?run_unit_tests}
pushd _$1$2
../configure
make -e $1 CFLAGS="$CFLAGS -DDEBUG_OUTPUT_ALL"
touch -r ../configure.ac
make -e $1
make -e $1 CFLAGS="$CFLAGS -DDEBUG_OUTPUT_ALL" 2>&1 | tee $1$2.log
touch -r ../configure.ac $1$2-%{_arch}.log
make -e $1 2>&1 | tee $1$2.log
popd
echo \%doc _$1$2/$1$2-%{_arch}.log >> _build/buildlogs.txt
%endif
}
@ -260,15 +265,15 @@ mkdir -p %{buildroot}/%{_bindir}
cp -a $TOPDIR/src/include/* %{buildroot}/%{_includedir}/
cp -a out/public-include/* %{buildroot}/%{_includedir}/
rm -f %{buildroot}/%{_libdir}/lib*.{la,a}
find %{buildroot}/%{_includedir} out/libsmbios_c++ out/libsmbios_c -exec touch -r $TOPDIR/configure.ac {} \;
find %{buildroot}/%{_includedir} out/libsmbios_c -exec touch -r $TOPDIR/configure.ac {} \;
mv out/libsmbios_c++ out/libsmbios_c++-%{_arch}
mv out/libsmbios_c out/libsmbios_c-%{_arch}
rename %{pot_file}.mo %{lang_dom}.mo $(find %{buildroot}/%{_datadir} -name %{pot_file}.mo)
%find_lang %{lang_dom}
touch files-yum-dellsysid
find %{buildroot} -name '*-1.pyc' -exec rm {} \;
touch files-smbios-utils-python
touch files-python-smbios
@ -280,56 +285,41 @@ ln -s smbios-sys-info %{buildroot}/%{_sbindir}/getSystemId
ln -s smbios-wireless-ctl %{buildroot}/%{_sbindir}/dellWirelessCtl
ln -s smbios-lcd-brightness %{buildroot}/%{_sbindir}/dellLcdBrightness
%python_expand sitelib=%{$python_sitelib}
cat > files-python-smbios <<-EOF
%doc COPYING-GPL COPYING-OSL
%{python_sitelib}/*
%doc COPYING-GPL COPYING-OSL
$sitelib/*
EOF
cat > files-smbios-utils-python <<-EOF
%doc COPYING-GPL COPYING-OSL
%doc src/bin/getopts_LICENSE.txt src/include/smbios/config/boost_LICENSE_1_0_txt
%dir %{_sysconfdir}/libsmbios
%config(noreplace) %{_sysconfdir}/libsmbios/*
%doc COPYING-GPL COPYING-OSL
%doc src/bin/getopts_LICENSE.txt
%dir %{_sysconfdir}/libsmbios
%config(noreplace) %{_sysconfdir}/libsmbios/*
# python utilities
%{_sbindir}/smbios-sys-info
%{_sbindir}/smbios-token-ctl
%{_sbindir}/smbios-passwd
%{_sbindir}/smbios-wakeup-ctl
%{_sbindir}/smbios-wireless-ctl
%{_sbindir}/smbios-lcd-brightness
# %%{_sbindir}/smbios-keyboard-ctl
# %%{_sbindir}/smbios-thermal-ctl
%{_sbindir}/smbios-battery-ctl
# python utilities
%{_sbindir}/smbios-sys-info
%{_sbindir}/smbios-token-ctl
%{_sbindir}/smbios-passwd
%{_sbindir}/smbios-wakeup-ctl
%{_sbindir}/smbios-wireless-ctl
%{_sbindir}/smbios-lcd-brightness
%{_sbindir}/smbios-keyboard-ctl
%{_sbindir}/smbios-thermal-ctl
%{_sbindir}/smbios-battery-ctl
# used by HAL in old location, so keep it around until HAL is updated.
%{_sbindir}/dellLEDCtl
%{_sbindir}/dellLcdBrightness
%{_sbindir}/dellMediaDirectCtl
%{_sbindir}/getSystemId
%{_sbindir}/dellWirelessCtl
%{_bindir}/dellWirelessCtl
# used by HAL in old location, so keep it around until HAL is updated.
%{_sbindir}/dellLcdBrightness
%{_sbindir}/getSystemId
%{_sbindir}/dellWirelessCtl
%{_bindir}/dellWirelessCtl
# data files
%{_datadir}/smbios-utils
# data files
%{_datadir}/smbios-utils
EOF
cat > files-yum-dellsysid <<-EOF
%doc COPYING-GPL COPYING-OSL
# YUM Plugin
%config(noreplace) %{_sysconfdir}/yum/pluginconf.d/*
%{_exec_prefix}/lib/yum-plugins/*
# SUSE build has anal directory ownership check. RPM which owns all dirs *must*
# be installed at buildtime.
%dir %{_sysconfdir}/yum
%dir %{_sysconfdir}/yum/pluginconf.d/
%dir %{_exec_prefix}/lib/yum-plugins/
EOF
%endif
# hardlink files to save some space.
%fdupes $RPM_BUILD_ROOT
%clean
rm -rf %{buildroot}
@ -339,17 +329,14 @@ rm -rf %{buildroot}
%files -f _build/%{lang_dom}.lang
%defattr(-,root,root,-)
%{_libdir}/libsmbios_c.so.*
%{_libdir}/libsmbios.so.*
%files -n libsmbios-devel
%files -n libsmbios-devel -f _build/buildlogs.txt
%defattr(-,root,root,-)
%doc COPYING-GPL COPYING-OSL src/bin/getopts_LICENSE.txt src/include/smbios/config/boost_LICENSE_1_0_txt
%doc COPYING-GPL COPYING-OSL src/bin/getopts_LICENSE.txt
%{_includedir}/smbios
%{_includedir}/smbios_c
%{_libdir}/libsmbios.so
%{_libdir}/libsmbios_c.so
%{_libdir}/pkgconfig/*.pc
%doc _build/out/libsmbios_c++-%{_arch}
%doc _build/out/libsmbios_c-%{_arch}
%files -n smbios-utils
@ -361,15 +348,13 @@ rm -rf %{buildroot}
%files -n smbios-utils-bin
%defattr(-,root,root,-)
%doc COPYING-GPL COPYING-OSL
%doc src/bin/getopts_LICENSE.txt src/include/smbios/config/boost_LICENSE_1_0_txt
%doc src/bin/getopts_LICENSE.txt
# new C utilities
%{_sbindir}/smbios-state-byte-ctl
%{_sbindir}/smbios-get-ut-data
%{_sbindir}/smbios-upflag-ctl
%{_sbindir}/smbios-sys-info-lite
%{_sbindir}/smbios-keyboard-ctl
%{_sbindir}/smbios-thermal-ctl
%files -n python-smbios -f _build/files-python-smbios
%defattr(-,root,root,-)
@ -377,7 +362,4 @@ rm -rf %{buildroot}
%files -n smbios-utils-python -f _build/files-smbios-utils-python
%defattr(-,root,root,-)
%files -n yum-dellsysid -f _build/files-yum-dellsysid
%defattr(-,root,root,-)
%changelog

View File

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