|
From: Ross S. W. W. <RW...@me...> - 2010-06-29 21:37:33
|
RPM spec file updated to fix some SLES compatibility issues, support for tagged builds added and some fixes to handle builds of earlier versions. Signed-off-by: Ross Walker Index: iscsitarget.spec =================================================================== --- iscsitarget.spec (revision 339) +++ iscsitarget.spec (working copy) @@ -3,7 +3,7 @@ ## ## IET Release -%define iet_version 1.4.20.1 +%define iet_version 1.4.20.2 ## Package Revision %define revision 1 @@ -24,15 +24,15 @@ # Build from SVN repository %define svn 0 %define svn_rev HEAD -%define svn_url https://iscsitarget.svn.sourceforge.net/svnroot/iscsitarget/trunk +%define svn_repo https://iscsitarget.svn.sourceforge.net/svnroot/iscsitarget ## Platform Definitions (you shouldn't need to modify these) # Determine distribution -%define is_suse %(test -e /etc/SuSE-release && echo 1 || echo 0) -%define is_fedora %(test -e /etc/fedora-release && echo 1 || echo 0) -%define is_redhat %(test -e /etc/redhat-release && echo 1 || echo 0) -%define is_mandrake %(test -e /etc/mandrake-release && echo 1 || echo 0) -%define is_mandriva %(test -e /etc/mandriva-release && echo 1 || echo 0) +%define is_suse !%(test -e /etc/SuSE-release; echo $?) +%define is_fedora !%(test -e /etc/fedora-release; echo $?) +%define is_redhat !%(test -e /etc/redhat-release; echo $?) +%define is_mandrake !%(test -e /etc/mandrake-release; echo $?) +%define is_mandriva !%(test -e /etc/mandriva-release; echo $?) # Define kernel version information %{!?kernel: %define kernel %(uname -r)} @@ -42,7 +42,6 @@ %define ktype %(echo kernel-%{kernel} | sed -e 's/%{kver}//' -e 's/--/-/' -e 's/-$//') %define moddir /lib/modules/%{kernel} -%define module %{moddir}/extra/iscsi/iscsi_trgt.ko # Set location of tools %{!?__chkconfig: %define __chkconfig /sbin/chkconfig} @@ -60,12 +59,17 @@ # Subversion build information %if %svn -%define iet_version %(%{__svn} info -r %{svn_rev} --non-interactive %{svn_url} | awk '{if ($1 == "Revision:") {print "svn_r"$2}}') +%if !%(test "%{iet_version}" = "trunk"; echo $?) +%define svn_url %{svn_repo}/trunk +%define svn_ver %(%{__svn} info -r %{svn_rev} --non-interactive %{svn_url} | awk '{if ($1 == "Revision:") {print "r"$2}}') +%else +%define svn_url %{svn_repo}/tags/%{iet_version} +%endif %endif # Build weak module (KABI Tracking) on platforms that support it %if %weak -%define weak %(test -x %{__weak_modules} && echo 1 || echo 0) +%define weak !%(test -x %{__weak_modules}; echo $?) %endif # Basic regex filters for unwanted dependencies (used for weak modules) @@ -89,7 +93,7 @@ ## Information Summary: iSCSI Enterprise Target Name: iscsitarget -Version: %{iet_version} +Version: %{?svn_ver: %{iet_version}_%{svn_ver}}%{!?svn_ver: %{iet_version}} Release: %{?revision: %{revision}}%{!?revision: 1} License: GPL Group: System Environment/Daemons @@ -102,7 +106,7 @@ Source0: %{name}-%{version}.tar.gz %endif ## Patches -#Patch0: %{name}-example.p +#Patch0: %{name}-%{version}-example.p ## Install Requirements Requires: %{name}-kmod = %{version} @@ -223,7 +227,7 @@ fi %if %dkms %{__make} usr %else -%{__make} KERNELSRC=/lib/modules/%{kernel}/build +%{__make} %endif %endif @@ -234,16 +238,31 @@ fi %ifnarch noarch %if %dkms -%{__make} install-usr install-doc install-etc KERNELSRC=/lib/modules/%{kernel}/build DISTDIR=%{buildroot} +%{__make} install-usr install-doc install-etc DISTDIR=%{buildroot} DESTDIR=%{buildroot} %else -%{__make} install-files KERNELSRC=/lib/modules/%{kernel}/build DISTDIR=%{buildroot} +%{__make} install-usr install-doc install-etc install-kernel DISTDIR=%{buildroot} DESTDIR=%{buildroot} %{__rm} -f %{buildroot}/lib/modules/%{kernel}/modules.* +%if !%(test -d %{buildroot}%{moddir}/extra/iscsi; echo $?) +%define module %{moddir}/extra/iscsi/iscsi_trgt.ko +%else +%define module %{moddir}/kernel/iscsi/iscsi_trgt.ko +%endif %endif %if %is_redhat || %is_fedora -%{__mkdir} -p %{buildroot}/etc/rc.d -%{__mv} %{buildroot}/etc/init.d %{buildroot}/etc/rc.d +if [ -d %{buildroot}/etc/init.d ]; then + %{__mkdir} %{buildroot}/etc/rc.d + %{__mv} %{buildroot}/etc/init.d %{buildroot}/etc/rc.d +fi +%endif +%if !%(test -d %{buildroot}/etc/iet; echo $?) +%define ietd_conf %{_sysconfdir}/iet/ietd.conf +%define initiators_allow %{_sysconfdir}/iet/initiators.allow +%define targets_allow %{_sysconfdir}/iet/targets.allow +%else +%define ietd_conf %{_sysconfdir}/ietd.conf +%define initiators_allow %{_sysconfdir}/initiators.allow +%define targets_allow %{_sysconfdir}/initiators.deny %endif -%{__rm} -rf %{buildroot}/usr/share/doc/iscsitarget %elseif %dkms %{__mkdir} -p %{buildroot}/usr/src/%{name}-%{version} %{__cp} -r COPYING dkms.conf include kernel patches %{buildroot}/usr/src/%{name}-%{version} @@ -253,7 +272,7 @@ fi # Ugly hack to filter out unwanted dependencies %if %weak %global _use_internal_dependency_generator 0 -%if %(test -n "%{pro_filter}" && echo 1 || echo 0) +%if !%(test -n "%{pro_filter}"; echo $?) %define iet_provides %{_tmppath}/iet_provides-%{user} %{__cat} << EOF > %{iet_provides} %{__find_provides} "\$@" | %{__grep} -v %{pro_filter} @@ -262,7 +281,7 @@ EOF %{__chmod} 755 %{iet_provides} %define __find_provides %{iet_provides} %endif -%if %(test -n "%{req_filter}" && echo 1 || echo 0) +%if !%(test -n "%{req_filter}"; echo $?) %define iet_requires %{_tmppath}/iet_requires-%{user} %{__cat} << EOF > %{iet_requires} %{__find_requires} "\$@" | %{__grep} -v %{req_filter} @@ -273,6 +292,7 @@ EOF %endif %endif + ## Cleaning %clean %{__rm} -rf %{buildroot} @@ -363,13 +383,13 @@ fi %ifnarch noarch %files %defattr(-, root, root) -%{_sbindir}/* -%{_mandir}/man?/* -%{_initrddir}/* -%config(noreplace) %{_sysconfdir}/iet/ietd.conf -%config(noreplace) %{_sysconfdir}/iet/initiators.allow -%config(noreplace) %{_sysconfdir}/iet/targets.allow -%doc ChangeLog COPYING RELEASE_NOTES README README.vmware README.initiators +%{_sbindir} +%{_mandir}/man? +%{_initrddir} +%config(noreplace) %{ietd_conf} +%config(noreplace) %{initiators_allow} +%config(noreplace) %{targets_allow} +%doc %{_docdir} %endif @@ -378,7 +398,7 @@ fi %ifarch noarch %files -n dkms-%{name} %defattr(-, root, root) -/usr/src/%{name}-%{version}/* +/usr/src/%{name}-%{version} %endif %else %files -n kmod-%{name} @@ -388,6 +408,12 @@ fi %changelog +* Tue May 11 2010 Ross Walker <rswwalker at gmail dot com> - 1.4.20.2 +- fixed recursive KERNELSRC define problem on SLES +- updated SVN building to handle tagged builds +- updated iet_version for next release +- fixed install and file catalogs to work with previous versions + * Tue Mar 30 2010 Ross Walker <rswwalker at gmail dot com> - 1.4.20 - Changed DKMS module name to dkms-iscsitarget from kmod-iscsitarget - Added Provides: kernel-modules to DKMS module so multiple versions can ______________________________________________________________________ This e-mail, and any attachments thereto, is intended only for use by the addressee(s) named herein and may contain legally privileged and/or confidential information. If you are not the intended recipient of this e-mail, you are hereby notified that any dissemination, distribution or copying of this e-mail, and any attachments thereto, is strictly prohibited. If you have received this e-mail in error, please immediately notify the sender and permanently delete the original and any copy or printout thereof. |