hdparm/hdparm.spec

112 lines
3.6 KiB
RPMSpec

#
# spec file for package hdparm (Version 9.33)
#
# Copyright (c) 2010 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
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: hdparm
License: PERMISSIVE-OSI-COMPLIANT
Group: Hardware/Other
PreReq: %insserv_prereq %fillup_prereq coreutils
Provides: base:/sbin/hdparm
AutoReqProv: on
Version: VERSION
Release: 1
Summary: A Program to get and set hard disk parameters
Source: %{name}-%{version}.tar.bz2
Source1: 56-idedma.rules
Source2: sysconfig.ide
Source3: udev.idedma.sh
Patch1: hdparm-nostrip.patch
Patch2: hdparm-wiper-warn.patch
Patch3: hdparm-leak-fix.patch
Url: http://sourceforge.net/projects/hdparm/
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
A shell utility to access and tune the ioctl features of the Linux IDE
driver and IDE drives.
%prep
%setup -q
%patch1
%patch2 -p1
%patch3
%build
make CFLAGS="$RPM_OPT_FLAGS -Wall -Wstrict-prototypes" LDFLAGS=
cp -p wiper/README.txt README.wiper
%install
mkdir -p $RPM_BUILD_ROOT/sbin
mkdir -p $RPM_BUILD_ROOT/usr/share/man/man8
make install DESTDIR=$RPM_BUILD_ROOT
mv contrib/README contrib/README.contrib
install -d $RPM_BUILD_ROOT/lib/udev/rules.d
install -m 644 %{S:1} $RPM_BUILD_ROOT/lib/udev/rules.d
install -d $RPM_BUILD_ROOT/var/adm/fillup-templates
install -m 644 %{S:2} $RPM_BUILD_ROOT/var/adm/fillup-templates
install -m 755 %{S:3} $RPM_BUILD_ROOT/lib/udev/idedma.sh
install -d $RPM_BUILD_ROOT/usr/lib/hdparm
install -m 755 contrib/idectl $RPM_BUILD_ROOT/usr/lib/hdparm
install -m 755 contrib/ultrabayd $RPM_BUILD_ROOT/usr/lib/hdparm
install -m 755 wiper/wiper.sh $RPM_BUILD_ROOT/sbin
%post
if [ -f etc/sysconfig/hardware ] ; then
mv etc/sysconfig/hardware etc/sysconfig/ide
fi
%{remove_and_set -n ide DEVICES_FORCE_IDE_DMA_ON DEVICES_FORCE_IDE_DMA_OFF}
%{fillup_only -n ide}
# new settings
NEW_DMA=""
# convert old settings
if [ "$DEVICES_FORCE_IDE_DMA_ON" != "" -a "$DEVICES_FORCE_IDE_DMA_ON" != "no" ] ; then
for dev in $DEVICES_FORCE_IDE_DMA_ON; do
NEW_DMA="${NEW_DMA:+$NEW_DMA }/dev/$dev:on"
done
fi
if [ "$DEVICES_FORCE_IDE_DMA_OFF" != "" -a "$DEVICES_FORCE_IDE_DMA_OFF" != "no" ] ; then
for dev in $DEVICES_FORCE_IDE_DMA_OFF; do
NEW_DMA="${NEW_DMA:+$NEW_DMA }/dev/$dev:off"
done
fi
# update sysconfig file
if [ "$NEW_DMA" != "" ] ; then
echo "Updating etc/sysconfig/ide"
# remove old values, update new variable
sed -e "s|^DEVICES_FORCE_IDE_DMA=\"\\(.*\\)\"|DEVICES_FORCE_IDE_DMA=\"$NEW_DMA \\1\"|" \
etc/sysconfig/ide > etc/sysconfig/ide.new \
&& mv etc/sysconfig/ide.new etc/sysconfig/ide
rm -f etc/sysconfig/ide.new
fi
%files
%defattr(-,root,root)
%doc Changelog README.acoustic contrib/README.contrib README.wiper
%doc %{_mandir}/man8/hdparm.8.gz
/sbin/hdparm
/sbin/wiper.sh
%dir /lib/udev
/lib/udev/idedma.sh
%dir /lib/udev/rules.d
/lib/udev/rules.d/56-idedma.rules
/usr/lib/hdparm
/var/adm/fillup-templates/sysconfig.ide
%changelog