Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37047500
en ru br
ALT Linux repos
S:1.1.40-alt2
5.0: 1.1.16-alt1

Group :: Databases
RPM: tokyotyrant

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

%def_disable debug
%def_disable devel
%def_disable profile
%def_enable shared
#----------------------------------------------------------------------

%define Name Tokyo Tyrant
%define sname ttserver
Name: tokyotyrant
%define lname lib%name
Summary: A network interface of Tokyo Cabinet
Version: 1.1.40
Release: alt2
License: %lgpl2plus
Group: System/Libraries
Group: Databases
URL: http://1978th.net/%name
Source0: %url/%name-%version.tar
Source1: %name.init
Source2: %name.sysconfig
Patch: %name-%version-alt.patch
Provides: %name-server = %version-%release
Provides: %sname = %version-%release
Requires: %lname = %version-%release
Requires: libtokyocabinet >= 1.4.35

BuildRequires(pre): rpm-build-licenses

BuildRequires: libtokyocabinet-devel >= 1.4.35
BuildRequires: zlib-devel

%description
%Name is a network interface for Tokyo Cabinet.
This package contains %Name server.


%package utils
Summary: Command line tools for managing %Name
Group: Databases
Requires: %lname = %version-%release

%description utils
%Name is a network interface for Tokyo Cabinet.
This package contains command line tools for managing %Name.


%if_enabled shared
%package -n %lname
Summary: %Name library
Group: System/Libraries

%description -n %lname
%Name is a network interface for Tokyo Cabinet.
This package contains %Name sharerd library.
%endif


%package -n %lname-devel
Summary: Headers for developing programs that will use %lname
Group: Development/C
Requires: %lname%{?_disable_shared:-devel-static} = %version-%release

%description -n %lname-devel
%Name is a network interface for Tokyo Cabinet.
This package contains the libraries and header files needed for
developing with %lname.


%package doc
Summary: Documentation for %Name
Group: Documentation
BuildArch: noarch
Provides: %name-devel-man = %version-%release

%description doc
%Name is a network interface for Tokyo Cabinet.
This package contains documentation for developers.


%prep
%setup
%patch -p1


%build
%define _optlevel 3
%autoreconf
%configure \
   %{subst_enable debug} \
   %{subst_enable devel} \
   %{subst_enable profile} \
   %{subst_enable shared}
%make_build
bzip2 --best --keep --force -- ChangeLog


%install
%make_install DESTDIR=%buildroot install
rm -f %buildroot%_datadir/%name/COPYING
install -d -m 0755 %buildroot{%_docdir,%_sysconfdir/sysconfig,%_initdir,%_localstatedir/%name,%_logdir/%sname}
mv %buildroot{%_datadir/%name,%_docdir/%name-%version}
mv %buildroot{%_sbindir/*,%_docdir/%name-%version/}
install -m 0755 %SOURCE1 %buildroot%_initdir/%name
install -m 0644 %SOURCE2 %buildroot%_sysconfdir/sysconfig/%name

rm -fv %buildroot%_libdir/*.a


%pre
%_sbindir/groupadd -r -f _tyrant &>/dev/null ||:
%_sbindir/useradd -r -n -M -s /dev/null -d %_localstatedir/%name -g _tyrant \
   -c "Server of Tokyo Tyrant (%sname)" _tyrant &>/dev/null ||:


%post
%post_service %name ||:

%preun
%preun_service %name ||:


%files
%_bindir/%sname
%_man1dir/%sname.*
%_initdir/*
%config(noreplace) %_sysconfdir/sysconfig/*
%attr(770,root,_tyrant) %dir %_localstatedir/%name
%attr(770,root,_tyrant) %dir %_logdir/%sname


%files utils
%_bindir/*
%_man1dir/*
%exclude %_bindir/%sname
%exclude %_man1dir/%sname.*


%if_enabled shared
%files -n %lname
%_libdir/*.so.*
%endif


%files -n %lname-devel
%_includedir/*
%{?_enable_shared:%_libdir/*.so}
%_pkgconfigdir/*


%files doc
%_docdir/%name-%version
%_man3dir/*


%changelog

Full changelog you can see here

 
design & coding: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
current maintainer: Michael Shigorin