The process of making RPM packages on line Redis:
# check for status of man pages# http://code.google.com/p/redis/issues/ Detail?id=202name: redisversion: 2.8.17Release: 3%{?dist}Summary: A persistent key-value databasegroup: applications/databaseslicense: bsdurl: &NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;&NBSP;HTTP://REDIS.IOSOURCE0: %{name}-%{version}.tar.gz#source1 Startup files for Redis #source2 configuration file for Redis Source1: redissource2: redis.conf_2.8buildroot: %{_ tmppath}/%{name}-%{version}-%{release}-root-% (%{__id_u} -n) BUILDREQUIRES:&NBSP;&NBSP;&NBSP;&NBSP;TCL >= 8.5ExcludeArch: ppc64#Requires: logrotaterequires (POST): chkconfigrequires (Postun): Initscriptsrequires (PRE): shadow-utilsrequires (Preun): chkconfigrequires ( Preun): initscripts%descriptionredis is an advanced key-value store. It is similar to memcached but the dataset is not volatile, and values can be strings, exactly like in memcached, butalso lists, sets, and ordered sets. all this data types Can be manipulated withatomic operations to push/pop elements, add/remove elements, perform Server sideunion, intersection, difference between sets, and so forth. redis supportsdifferent kind of sorting abilities.%prep%setup -q%buildmake %{?_smp_mflags} debug= ' cflags= '%{optflags} ' V=1 all#%check#make test%installrm -fr %{buildroot}make install prefix= %{buildroot}%{_prefix}# install misc other#install -p -d -m 644 %{name }.conf %{buildroot}%{_sysconfdir}/%{name}.confinstall -p -d -m 755 %{source1} %{buildroot}%{_sysconfdir}/init.d/%{name}install -p -d -m 644 %{source2} % {buildroot}%{_sysconfdir}/%{name}.confinstall -d -m 755 %{buildroot}%{_localstatedir}/lib/ %{name}install -d -m 755 %{buildroot}%{_localstatedir}/log/%{name}install -d -m 755 %{ Buildroot}%{_localstatedir}/run/%{name} #install -d -m 755 %{buildroot}%{_localstatedir}/ run/%{name}# fix non-standard-executable-perm errorchmod 755 %{buildroot}%{_bindir}/% {NAME}-*#&NBSP;ENSURE&NBSP;REDIS-SERVER&NBSP;LOCATION&NBSP;DOESN ' t changemkdir -p %{buildroot}% {_SBINDIR}MV&NBSP;%{BUILDROOT}%{_BINDIR}/%{NAME}-SERVER&NBSP;%{BUILDROOT}%{_SBINDIR}/%{NAME}-SERVER%CLEANRM -fr %{buildroot}%post/sbin/chkconfig --add redis%pregetent group redis &> /dev/null | | groupadd -r redis &> /dev/nullgetent passwd redis &> /dev/null | | useradd -r -g redis -d %{_sharedstatedir}/redis -s /sbin/nologin -c ' Redis server ' redis &> /dev/nullexit 0%preunif [ $1 = 0 ]; then /sbin/service redis stop &> /dev/null /sbin/chkconfig --del redis &> /dev/nullfi% Files%defattr (-,root,root,-)%doc 00-releasenotes bugs contributing copying readme#% Config (noreplace) %{_sysconfdir}/logrotate.d/%{name}%config (noreplace) %{_sysconfdir}/%{name}.conf% Config (noreplace) %{_sysconfdir}/init.d/%{name}%dir %attr (0755, redis, root) %{_ Localstatedir}/lib/%{name}%dir %attr (0755, redis, root) %{_localstatedir}/log/%{name}%dir %attr (0755, redis, root) %{_localstatedir}/run/%{name}%{_bindir}/%{name}-*%{_sbindir}/%{ name}-*#%{_initrddir}/%{name}%changelog* sat mar 31 2014 yanliang wang < [email protected]> - 2.8.17-1- update to redis 2.8.17
Rpmbulid Learning Redis Packaging