]> git.pld-linux.org Git - packages/bopm.git/blobdiff - bopm.spec
- added tmpfiles config for systemd
[packages/bopm.git] / bopm.spec
index a5b8333cd3733fd7b458aca6577fc915f805ca7b..b1a757f8432b1f8d6671e6ad282f7b6e768009d9 100644 (file)
--- a/bopm.spec
+++ b/bopm.spec
@@ -1,29 +1,45 @@
+# TODO
+# - ac that i don't know how to fix:
+#+ autoconf
+#configure.in:51: error: possibly undefined macro: AC_FUNC_SNPRINTF
+#      If this token and others are legitimate, please use m4_pattern_allow.
+#      See the Autoconf documentation.
+#
 #
 # Conditional build:
 %bcond_without tests   # do not perform "make test"
 #
 # Conditional build:
 %bcond_without tests   # do not perform "make test"
-#
-%include       /usr/lib/rpm/macros.perl
-%define                pnam    OPM
+%bcond_without supervise       # install initscript instead of supervise
 Summary:       Open proxy monitor and blocker, designed for use with ircds
 Summary:       Open proxy monitor and blocker, designed for use with ircds
-Summary(pl):   Monitorowanie i blokowanie otwartych proxy do u¿ywania z ircd
+Summary(pl.UTF-8):     Monitorowanie i blokowanie otwartych proxy do używania z ircd
 Name:          bopm
 Name:          bopm
-Version:       3.1.2
-Release:       0.19
+Version:       3.1.3
+Release:       3
 License:       GPL
 Group:         Applications/Communications
 Source0:       http://static.blitzed.org/www.blitzed.org/bopm/files/%{name}-%{version}.tar.gz
 License:       GPL
 Group:         Applications/Communications
 Source0:       http://static.blitzed.org/www.blitzed.org/bopm/files/%{name}-%{version}.tar.gz
-# Source0-md5: ab1b7494c4242eef957b5fca61c92b18
+# Source0-md5: 643c7090b32dfe09a38b5440b2c480e3
 Source1:       %{name}.init
 Source2:       %{name}.conf
 Source1:       %{name}.init
 Source2:       %{name}.conf
+Source3:       %{name}-supervise.tar.bz2
+# Source3-md5: 247c0438a5e2860097d09a374a521151
+Source4:       http://autoconf-archive.cryp.to/ac_func_snprintf.m4
+# Source4-md5: 9a21dbeadbd731b324e7f740aadea697
+Source5:       http://www.sfr-fresh.com/unix/www/cherokee-0.7.2.tar.gz:t/cherokee-0.7.2/m4/etr_socket_nsl.m4
+# Source5-md5: 137b516e92db49874d3ed1dcf45ea4a9
+Source6:       %{name}.tmpfiles
 Patch0:                %{name}-DESTDIR.patch
 Patch1:                %{name}-shared.patch
 Patch0:                %{name}-DESTDIR.patch
 Patch1:                %{name}-shared.patch
-URL:           http://www.blitzed.org/bopm/
+Patch2:                %{name}-cr-connect.patch
+Patch3:                http://www.nedworks.org/bopm/%{name}.whitelists.3.1.2.diff
+Patch4:                http://dgl.cx/2006/09/%{name}-conf-cmd.diff
+URL:           http://wiki.blitzed.org/BOPM
 BuildRequires: autoconf
 BuildRequires: automake
 BuildRequires: autoconf
 BuildRequires: automake
+BuildRequires: bison
+BuildRequires: flex
 BuildRequires: libtool
 BuildRequires: libtool
-BuildRequires: rpm-perlprov >= 4.1-13
 BuildRequires: rpmbuild(macros) >= 1.268
 BuildRequires: rpmbuild(macros) >= 1.268
-Requires(post,preun):  /sbin/chkconfig
+%{!?with_supervise:Requires(post,preun):       /sbin/chkconfig}
 Requires(postun):      /usr/sbin/groupdel
 Requires(postun):      /usr/sbin/userdel
 Requires(pre): /bin/id
 Requires(postun):      /usr/sbin/groupdel
 Requires(postun):      /usr/sbin/userdel
 Requires(pre): /bin/id
@@ -31,11 +47,15 @@ Requires(pre):      /usr/bin/getgid
 Requires(pre): /usr/sbin/groupadd
 Requires(pre): /usr/sbin/useradd
 Requires:      %{name}-libs = %{version}-%{release}
 Requires(pre): /usr/sbin/groupadd
 Requires(pre): /usr/sbin/useradd
 Requires:      %{name}-libs = %{version}-%{release}
-Requires:      rc-scripts >= 0.4.0.17
+%{?with_supervise:Requires:    daemontools >= 0.76-5}
+%{!?with_supervise:Requires:   rc-scripts >= 0.4.0.17}
 Provides:      group(%{name})
 Provides:      user(%{name})
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 Provides:      group(%{name})
 Provides:      user(%{name})
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
+%undefine      __cxx
+%define                _supervise      /etc/supervise/%{name}
+
 %description
 The Blitzed Open Proxy Monitor is designed to connect to an IRC server
 and become an IRC operator. It then watches connect notices in order
 %description
 The Blitzed Open Proxy Monitor is designed to connect to an IRC server
 and become an IRC operator. It then watches connect notices in order
@@ -49,63 +69,72 @@ against a DNS-Based Blacklist (similar to MAPS RBL) and can be
 configured to report new proxies back to the Blitzed Open Proxy
 Monitoring project.
 
 configured to report new proxies back to the Blitzed Open Proxy
 Monitoring project.
 
-%description -l pl
-Blitzed Open Proxy Monitor jest zaprojektowany tak, ¿e ³±czy siê z
-serwerem IRC i staje operatorem. Nastêpnie ogl±da informacje o
-po³±czeniach w celu skanowania wszystkich klientów pod k±tem otwartych
-(niebezpiecznych) proxy. Takie niebezpieczne proxy zwykle s± u¿ywane
-do spamowania, floodowania i innych nadu¿yæ.
-
-BOPM jest w stanie wykryæ WinGates, proxy HTTP, proxy SOCKS 4/5 oraz
-routery Cisco z domy¶lnymi has³ami. BOPM obs³uguje tak¿e sprawdzanie
-czarnych list opartych na DNS (takich jak MAPS RBL) i mo¿e byæ
-skonfigurowany do zg³aszania nowych proxy z powrotem do projektu
+%description -l pl.UTF-8
+Blitzed Open Proxy Monitor jest zaprojektowany tak, że łączy się z
+serwerem IRC i staje operatorem. Następnie ogląda informacje o
+połączeniach w celu skanowania wszystkich klientów pod kątem otwartych
+(niebezpiecznych) proxy. Takie niebezpieczne proxy zwykle są używane
+do spamowania, floodowania i innych nadużyć.
+
+BOPM jest w stanie wykryć WinGates, proxy HTTP, proxy SOCKS 4/5 oraz
+routery Cisco z domyślnymi hasłami. BOPM obsługuje także sprawdzanie
+czarnych list opartych na DNS (takich jak MAPS RBL) i może być
+skonfigurowany do zgłaszania nowych proxy z powrotem do projektu
 Blitzed Open Proxy Monitoring.
 
 %package libs
 Summary:       libopm open proxy scanning library
 Blitzed Open Proxy Monitoring.
 
 %package libs
 Summary:       libopm open proxy scanning library
+Summary(pl.UTF-8):     Biblioteka libopm do szukania otwartych proxy
 Group:         Libraries
 
 %description libs
 libopm open proxy scanning library.
 
 Group:         Libraries
 
 %description libs
 libopm open proxy scanning library.
 
+%description libs -l pl.UTF-8
+Biblioteka libopm do szukania otwartych proxy.
+
 %package devel
 Summary:       Header files for libopm library
 %package devel
 Summary:       Header files for libopm library
+Summary(pl.UTF-8):     Pliki nagłówkowe biblioteki libopm
 Group:         Development/Libraries
 Requires:      %{name}-libs = %{version}-%{release}
 
 %description devel
 This is the package containing the header files for libopm library.
 
 Group:         Development/Libraries
 Requires:      %{name}-libs = %{version}-%{release}
 
 %description devel
 This is the package containing the header files for libopm library.
 
+%description devel -l pl.UTF-8
+Ten pakiet zawiera pliki nagłówkowe biblioteki libopm.
+
 %package static
 %package static
-Summary:       Static ... library
+Summary:       Static libopm library
+Summary(pl.UTF-8):     Statyczna biblioteka libopm
 Group:         Development/Libraries
 Requires:      %{name}-devel = %{version}-%{release}
 
 %description static
 Static libopm library.
 
 Group:         Development/Libraries
 Requires:      %{name}-devel = %{version}-%{release}
 
 %description static
 Static libopm library.
 
-%package -n perl-%{pnam}
-Summary:       OPM - Perl interface to libopm open proxy scanning library
-Group:         Development/Languages/Perl
-Requires:      %{name}-libs = %{version}-%{release}
-# should here be Version: 0.01 due to "Provides: OPM.so perl(OPM) = 0.01"?
-
-%description -n perl-%{pnam}
-OPM - Perl interface to libopm open proxy scanning library.
+%description static -l pl.UTF-8
+Statyczna biblioteka libopm.
 
 %prep
 %setup -q
 %patch0 -p1
 %patch1 -p1
 
 %prep
 %setup -q
 %patch0 -p1
 %patch1 -p1
+%patch2 -p0
+%patch3 -p0
+cd src
+%patch4 -p0
 
 # we include contrib in %doc. cleanup it
 find -name CVS | xargs -r rm -rf
 rm -f contrib/bopm.spec
 
 %build
 
 # we include contrib in %doc. cleanup it
 find -name CVS | xargs -r rm -rf
 rm -f contrib/bopm.spec
 
 %build
+install %{SOURCE4} .
+install %{SOURCE5} .
 %{__libtoolize}
 %{__libtoolize}
-%{__aclocal}
+%{__aclocal} -I .
 %{__autoconf}
 %{__autoheader}
 %{__automake}
 %{__autoconf}
 %{__autoheader}
 %{__automake}
@@ -115,31 +144,37 @@ rm -f contrib/bopm.spec
 
 %{__make}
 
 
 %{__make}
 
-cd src/libopm/OPM
-%{__perl} Makefile.PL \
-       INSTALLDIRS=vendor
-%{__make} \
-       OPTIMIZE="%{rpmcflags}"
-%{?with_tests:%{__make} test}
-
 %install
 rm -rf $RPM_BUILD_ROOT
 %install
 rm -rf $RPM_BUILD_ROOT
-install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,/var/{run,log}/%{name}}
+install -d $RPM_BUILD_ROOT/var/log/%{name}
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT
 
-install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
+%if %{with supervise}
+install -d $RPM_BUILD_ROOT%{_supervise} \
+       $RPM_BUILD_ROOT/usr/lib/tmpfiles.d
+
+tar xf %{SOURCE3} -C $RPM_BUILD_ROOT%{_supervise}
+
+install -d $RPM_BUILD_ROOT%{_supervise}/{,log/}supervise
+touch $RPM_BUILD_ROOT%{_supervise}/{,log/}supervise/lock
+touch $RPM_BUILD_ROOT%{_supervise}/{,log/}supervise/status
+mkfifo $RPM_BUILD_ROOT%{_supervise}/{,log/}supervise/control
+mkfifo $RPM_BUILD_ROOT%{_supervise}/{,log/}supervise/ok
+
+%else
+install -D %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
+%endif
+
+install -d $RPM_BUILD_ROOT/var/run/%{name}
 install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf
 > $RPM_BUILD_ROOT/var/log/%{name}/bopm.log
 > $RPM_BUILD_ROOT/var/log/%{name}/scan.log
 
 install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}.conf
 > $RPM_BUILD_ROOT/var/log/%{name}/bopm.log
 > $RPM_BUILD_ROOT/var/log/%{name}/scan.log
 
-cd src/libopm/OPM
-%{__make} pure_install \
-       DESTDIR=$RPM_BUILD_ROOT
-rm -f $RPM_BUILD_ROOT%{perl_vendorarch}/auto/%{pnam}/.packlist
-install -d $RPM_BUILD_ROOT%{_examplesdir}/perl-%{pnam}-%{version}
-mv $RPM_BUILD_ROOT{%{perl_vendorarch},%{_examplesdir}/perl-%{pnam}-%{version}}/bopchecker.pl
+install %{SOURCE6} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf
+
+rm $RPM_BUILD_ROOT%{_datadir}/bopm.conf.blitzed
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -149,13 +184,30 @@ rm -rf $RPM_BUILD_ROOT
 %useradd -u 151 -c "BOPM Daemon" -g %{name} %{name}
 
 %post
 %useradd -u 151 -c "BOPM Daemon" -g %{name} %{name}
 
 %post
+%if %{with supervise}
+if [ -d /service/%{name}/supervise ]; then
+       svc -t /service/%{name} /service/%{name}/log
+fi
+if [ "$1" = 1 ]; then
+       ln -snf %{_supervise} /service/%{name}
+fi
+%else
 /sbin/chkconfig --add %{name}
 %service %{name} restart "BOPM daemon"
 /sbin/chkconfig --add %{name}
 %service %{name} restart "BOPM daemon"
+%endif
 
 %preun
 if [ "$1" = "0" ]; then
 
 %preun
 if [ "$1" = "0" ]; then
+%if %{with supervise}
+       if [ -d /service/%{name}/supervise ]; then
+               cd /service/%{name}
+               rm /service/%{name}
+               svc -dx . log
+       fi
+%else
        %service %{name} stop
        /sbin/chkconfig --del %{name}
        %service %{name} stop
        /sbin/chkconfig --del %{name}
+%endif
 fi
 
 %postun
 fi
 
 %postun
@@ -169,12 +221,25 @@ fi
 
 %files
 %defattr(644,root,root,755)
 
 %files
 %defattr(644,root,root,755)
-%doc ChangeLog INSTALL README bopm.conf.sample
+%doc ChangeLog INSTALL README bopm.conf.sample bopm.conf.blitzed
 %doc contrib/ network-bopm/
 %attr(640,root,bopm) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}.conf
 %doc contrib/ network-bopm/
 %attr(640,root,bopm) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}.conf
-%attr(754,root,root) /etc/rc.d/init.d/%{name}
 %attr(755,root,root) %{_sbindir}/%{name}
 
 %attr(755,root,root) %{_sbindir}/%{name}
 
+%if %{with supervise}
+%attr(1755,root,root) %dir %{_supervise}
+%attr(755,root,root) %{_supervise}/run
+%attr(700,root,root) %dir %{_supervise}/supervise
+
+%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_supervise}/supervise/*
+%attr(1755,root,root) %dir %{_supervise}/log
+%attr(755,root,root) %{_supervise}/log/run
+%attr(700,root,root) %dir %{_supervise}/log/supervise
+%attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %ghost %{_supervise}/log/supervise/*
+%else
+%attr(754,root,root) /etc/rc.d/init.d/%{name}
+%endif
+/usr/lib/tmpfiles.d/%{name}.conf
 %attr(770,root,bopm) %dir /var/run/%{name}
 %attr(770,root,bopm) %dir /var/log/%{name}
 %attr(640,bopm,bopm) %ghost /var/log/%{name}/bopm.log
 %attr(770,root,bopm) %dir /var/run/%{name}
 %attr(770,root,bopm) %dir /var/log/%{name}
 %attr(640,bopm,bopm) %ghost /var/log/%{name}/bopm.log
@@ -183,6 +248,7 @@ fi
 %files libs
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libopm.so.*.*.*
 %files libs
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/libopm.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libopm.so.0
 
 %files devel
 %defattr(644,root,root,755)
 
 %files devel
 %defattr(644,root,root,755)
@@ -191,16 +257,8 @@ fi
 %{_includedir}/opm_error.h
 %{_includedir}/opm_types.h
 %{_libdir}/libopm.la
 %{_includedir}/opm_error.h
 %{_includedir}/opm_types.h
 %{_libdir}/libopm.la
+%{_libdir}/libopm.so
 
 %files static
 %defattr(644,root,root,755)
 %{_libdir}/libopm.a
 
 %files static
 %defattr(644,root,root,755)
 %{_libdir}/libopm.a
-
-%files -n perl-%{pnam}
-%defattr(644,root,root,755)
-%{perl_vendorarch}/OPM.pm
-%dir %{perl_vendorarch}/auto/OPM
-%{perl_vendorarch}/auto/OPM/OPM.bs
-%attr(755,root,root) %{perl_vendorarch}/auto/OPM/OPM.so
-%{_examplesdir}/perl-OPM-%{version}
-%{_mandir}/man3/OPM.3pm*
This page took 0.292105 seconds and 4 git commands to generate.