%define name perl-Data-OptList %define version 1.0 %define release 1 Summary: This is what perl-Data-OptList does. Name: %{name} Version: %{version} Release: %{release}%{?dist} Source: %{name}-%{version}.tar.gz License: GNU GPL version 2 Group: SMEserver/addon BuildRoot: %{_tmppath}/%{name}-buildroot Prefix: %{_prefix} BuildArchitectures: noarch BuildRequires: smeserver-devtools Requires: smeserver-release >= 11.0 AutoReqProv: no %description Hashes are great for storing named data, but if you want more than one entry for a name, you have to use a list of pairs. Even then, this is really boring to write: $values = [ foo => undef, bar => undef, baz => undef, xyz => { ... }, ]; With Data::OptList, you can do this instead: $values = Data::OptList::mkopt([ qw(foo bar baz), xyz => { ... }, ]); This works by assuming that any defined scalar is a name and any reference following a name is its value. %changelog * Day MMMM DD YYYY 1.0-1.sme - Initial code - create RPM [SME:99999] %prep %setup -q %build %install rm -rf $RPM_BUILD_ROOT (cd root ; find . -depth -print | cpio -dump $RPM_BUILD_ROOT) rm -f %{name}-%{version}-filelist /sbin/e-smith/genfilelist $RPM_BUILD_ROOT \ > %{name}-%{version}-filelist #echo "%doc COPYING" >> %{name}-%{version}-filelist #--dir 'attr(755,user,grp)' \ #--file 'attr(755,root,root)' \ %clean cd .. rm -rf %{name}-%{version} %pre %preun %post %postun #uninstall %files -f %{name}-%{version}-filelist %defattr(-,root,root)