Sisyphus repository
Last update: 1 october 2023 | SRPMs: 18631 | Visits: 37501496
en ru br
ALT Linux repos
S:1.6b15-alt1
5.0: 1.5p6-alt1
4.1: 1.5p5-alt3
4.0: 1.5p5-alt3
3.0: 1.5p4-alt1

Group :: System/Servers
RPM: mathopd

 Main   Changelog   Spec   Patches   Sources   Download   Gear   Bugs and FR  Repocop 

Name: mathopd
Version: 1.5p6
Release: alt1.qa1

Summary: Fast, lightweight, non-forking HTTP server for UN*X systems.
License: GPL
Group: System/Servers

Url: http://www.%name.org/

Source: %url/dist/%name-%version.tar.gz
Source1: %name.8.gz
Source2: %name.conf.5.gz
Source3: %name.init
Source4: %name.conf
Source5: %name.logrotate
Source6: %url/dist/dir_cgi.c.txt
Source7: %name.cron
Source9: TODO
Source10: %name.sysconfig

Patch: %name-1.5p5-alt-pidfile.patch
Patch1: %name-alt-dircgi.patch
Patch2: %name.getline.patch

#equires: logrotate

Requires: crontabs, gzip, findutils

%define mylogdir %_logdir/%name
%define logrotate_dir %_sysconfdir/logrotate.d
%define crondaily_dir   %_sysconfdir/cron.daily

Summary(ru_RU.KOI8-R): Компактный быстрый HTTP-сервер для Юникс-систем

%description
Mathopd is a very small, yet very fast HTTP server for UN*X systems.

Mathopd supports useful features of HTTP/1.1, such as persistent connections,
partial responses and pipelining. It does not support things like content
negotation. The latest version of the software (1.5) also supports CGI/1.1.

Mathopd was designed specifically to run as a single process,
and to never grow in size. When this software was first written (early 1996)
this is something that other HTTP servers were not very good at.

For preventing conflicts with another HTTP-services Mathopd in ALTLinux
listens on port 8000 instead of standard port 80.

%description -l ru_RU.KOI8-R
Mathopd - это очень компактный и быстрый сервер HTTP для Юникс-систем.

Mathopd поддерживает многие возможности протокола HTTP/1.1,
такие как постоянные (persistent) соединения для серий запросов, конвейер
(приём новых запросов через постоянное соединение до того, как будут готовы
ответы на предыдущие), отправка данных по частям (partial responses)
и, начиная с версии 1.5 - запуск внешних приложений по протоколу CGI/1.1.

Mathopd выполняется как один-единственный процесс и никогда не запрашивает
для работы дополнительной памяти. Используйте его для простых задач
(статические страницы с документацией, файлопомойка с доступом по HTTP и т.д.),
для которых функциональность Веб-сервера Apache избыточна.

Чтобы не конфликтовать с другими HTTP-серверами, по умолчанию Mathopd
в ALTLinux ожидает подключений через порт 8000 вместо стандартного 80.

%prep
%setup -q
%patch0 -p1
%__cp -a %SOURCE6 ./dir_cgi.c
%patch1
%patch2 -p2

%build
%__cc -O3 -DFORMAT_V2=1 -o dir_cgi dir_cgi.c
cd src
%make_build

%install
%__mkdir -p %buildroot{%_bindir,%_sbindir,%_initdir,%_man5dir,%_man8dir,%mylogdir,%logrotate_dir,%crondaily_dir}

%makeinstall -C src SBINDIR=%buildroot%_sbindir PREFIX=%buildroot install
%__cp -a   %SOURCE1 %buildroot%_man8dir/
%__cp -a   %SOURCE2 %buildroot%_man5dir/
%__install %SOURCE3 %buildroot%_initdir/%name
%__cp -a   %SOURCE4 %buildroot%_sysconfdir/
%__cp -a   %SOURCE5 %buildroot%logrotate_dir/%name
%__install -p  %SOURCE7  %buildroot%crondaily_dir/%name
%__install -pD -m600 %SOURCE10 %buildroot%_sysconfdir/sysconfig/%name
%__install -p  dir_cgi   %buildroot%_bindir/
/bin/touch %buildroot%mylogdir/{errorlog,childlog}

%files
%_bindir/*
%_sbindir/*
%_man8dir/*
%_man5dir/*
%attr(0700,root,root) %_initdir/%name
%exclude %mylogdir/*log*
%attr(0750,%name,%name) %mylogdir
%ghost %mylogdir/*log*
%config(noreplace) %_sysconfdir/%name.conf
%config(noreplace) %_sysconfdir/sysconfig/%name
%exclude %logrotate_dir/%name
%crondaily_dir/%name
%doc doc/* README COPYING

%pre
id -un %name >/dev/null 2>&1 || /usr/sbin/useradd -s /dev/null -d %mylogdir -r %name

%post
%post_service %name

%preun
%preun_service %name
echo "NOTE: %name account still exist, remove it manually if you need"

%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