]> git.pld-linux.org Git - packages/varnish.git/blobdiff - varnish.spec
up to 3.0.7
[packages/varnish.git] / varnish.spec
index 1bf5921e51853fee115f8d310ba797ad5804c9b4..20019d41056797a55b1b2f879765c7acf1a2eab6 100644 (file)
@@ -1,28 +1,46 @@
+# TODO
+# - make tests use secure dir, not /tmp, see varnish-2.0.6/bin/varnishtest
+# - hungs ac builders: tests/a00009.vtc
+
+# Conditional build:
+%bcond_without doc             # build documentation
+%bcond_without tests   # build without tests. binds daemon on 127.0.0.1 9080, 9081, 9001 ports
+%bcond_without source  # build source package
+
 Summary:       Varnish - a high-performance HTTP accelerator
 Summary(pl.UTF-8):     Varnish - wydajny akcelerator HTTP
 Name:          varnish
-Version:       2.0.6
-Release:       3
+Version:       3.0.7
+Release:       1
 License:       BSD
 Group:         Networking/Daemons/HTTP
-Source0:       http://downloads.sourceforge.net/varnish/%{name}-%{version}.tar.gz
-# Source0-md5: d91dc21c636db61c69b5e8f061c5bb95
+Source0:       http://repo.varnish-cache.org/source/%{name}-%{version}.tar.gz
+# Source0-md5: aa63a7808d775c005d020c41f152b7af
 Source1:       %{name}.init
-Source2:       %{name}log.init
 Source3:       %{name}ncsa.init
 Source4:       %{name}.sysconfig
 Source5:       %{name}ncsa.sysconfig
 Source6:       %{name}.logrotate
-Source7:       %{name}.conf
+Source8:       %{name}.tmpfiles
 #Patch100:     branch.diff
-Patch0:                %{name}-build.patch
+Patch0:                no-ccache.patch
+Patch1:                no-sysctl.patch
+Patch2:                ac.patch
 URL:           http://www.varnish-cache.org/
 BuildRequires: autoconf
 BuildRequires: automake
-BuildRequires: groff
 BuildRequires: libstdc++-devel
-BuildRequires: libtool >= 2:1.5
+BuildRequires: libtool >= 2:2.0
 BuildRequires: ncurses-devel
+BuildRequires: pcre-devel
+BuildRequires: pkgconfig
+BuildRequires: rpmbuild(macros) >= 1.647
+BuildRequires: sed >= 4.0
+%if %{with doc}
+BuildRequires: docutils
+BuildRequires: groff
+BuildRequires: libxslt-progs
+%endif
 Requires(postun):      /usr/sbin/groupdel
 Requires(postun):      /usr/sbin/userdel
 Requires(pre): /bin/id
@@ -85,14 +103,28 @@ Static varnish library.
 %description static -l pl.UTF-8
 Statyczna biblioteka varnish.
 
+%package source
+Summary:       Source code of Varnish for building VMODs
+Group:         Documentation
+Requires:      %{name}-devel = %{version}-%{release}
+
+%description source
+Source code of Varnish for building VMODs.
+
 %prep
 %setup -q
 #%patch100 -p0
 %patch0 -p1
+%patch1 -p1
+%patch2 -p1
+
+#%{__sed} -i -e 's,$(srcdir)/,,' bin/varnishtest/Makefile.am
+
+%{__sed} -i -e '1s,^#!.*python,#!%{__python},' lib/libvmod_std/vmod.py
 
 %build
 export CPPFLAGS="-I/usr/include/ncurses"
-%{__aclocal}
+%{__aclocal} -I m4
 %{__libtoolize}
 %{__autoheader}
 %{__automake}
@@ -104,33 +136,62 @@ export CPPFLAGS="-I/usr/include/ncurses"
 
 %{__make}
 
+%if %{with tests}
+%{__make} check \
+       LD_LIBRARY_PATH="../../lib/libvarnish/.libs:../../lib/libvarnishcompat/.libs:../../lib/libvarnishapi/.libs:../../lib/libvcl/.libs"
+%endif
+
 %install
 rm -rf $RPM_BUILD_ROOT
-
 %{__make} install \
+       INSTALL="install -p" \
        DESTDIR=$RPM_BUILD_ROOT
 
 # make dirs after make install to know which ones needs spec and which ones make install
 install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{logrotate.d,rc.d/init.d,sysconfig},/var/{run,lib}/varnish} \
-       $RPM_BUILD_ROOT/var/log/{archive/,}varnish
-
-install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/varnish
-install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/varnishlog
-install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/varnishncsa
-install %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/varnish
-install %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/varnishncsa
-install %{SOURCE6} $RPM_BUILD_ROOT/etc/logrotate.d/varnish
-install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/default.vcl
+       $RPM_BUILD_ROOT/var/log/{archive/,}varnish \
+       $RPM_BUILD_ROOT%{systemdtmpfilesdir}
+
+install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/varnish
+install -p %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/varnishncsa
+cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/varnish
+cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/sysconfig/varnishncsa
+cp -p %{SOURCE6} $RPM_BUILD_ROOT/etc/logrotate.d/varnish
+cp -p %{SOURCE8} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
+touch $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/secret
+
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/*.la
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/%{name}/vmods/*.la
+
+%if %{with source}
+# prepare tree for VMOD build
+install -d $RPM_BUILD_ROOT%{_usrsrc}/%{name}-%{version}/{include,bin/{varnishtest,varnishd},lib/libvmod_std}
+
+# add extra headers
+cp -pn include/*.h $RPM_BUILD_ROOT%{_usrsrc}/%{name}-%{version}/include
+cp -p bin/varnishd/*.h $RPM_BUILD_ROOT%{_usrsrc}/%{name}-%{version}/bin/varnishd
+
+for a in $RPM_BUILD_ROOT%{_includedir}/%{name}/*.h; do
+       f=${a#$RPM_BUILD_ROOT}
+       ln -sf $f $RPM_BUILD_ROOT%{_usrsrc}/%{name}-%{version}/include
+done
+
+ln -s %{_bindir}/varnishtest $RPM_BUILD_ROOT%{_usrsrc}/%{name}-%{version}/bin/varnishtest
+ln -s %{_sbindir}/varnishd $RPM_BUILD_ROOT%{_usrsrc}/%{name}-%{version}/bin/varnishd
+cp -p lib/libvmod_std/vmod.py $RPM_BUILD_ROOT%{_usrsrc}/%{name}-%{version}/lib/libvmod_std
+
+# add pkg config variable for eash access
+%{__sed} -i -e '/^vmoddir/a srcdir=%{_usrsrc}/%{name}-%{version}' \
+       $RPM_BUILD_ROOT%{_pkgconfigdir}/varnishapi.pc
+%endif
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %post
 /sbin/chkconfig --add varnish
-/sbin/chkconfig --add varnishlog
 /sbin/chkconfig --add varnishncsa
 %service varnish restart
-%service varnishlog restart
 %service varnishncsa restart
 
 %pre
@@ -143,14 +204,11 @@ if [ "$1" = "0" ]; then
        %groupremove %{name}
 fi
 
-
 %preun
 if [ "$1" = "0" ]; then
        %service -q varnish stop
-       %service -q varnishlog stop
        %service -q varnishncsa stop
        /sbin/chkconfig --del varnish
-       /sbin/chkconfig --del varnishlog
        /sbin/chkconfig --del varnishncsa
 fi
 
@@ -160,38 +218,75 @@ fi
 %files
 %defattr(644,root,root,755)
 %doc LICENSE README ChangeLog etc/*.vcl
-%dir %{_sysconfdir}/%{name}
+%dir %attr(750,root,root) %{_sysconfdir}/%{name}
 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/default.vcl
 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/varnish
 %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/varnishncsa
+%ghost %attr(600,root,root) %{_sysconfdir}/%{name}/secret
 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/varnish
 %attr(754,root,root) /etc/rc.d/init.d/varnish
-%attr(754,root,root) /etc/rc.d/init.d/varnishlog
 %attr(754,root,root) /etc/rc.d/init.d/varnishncsa
 %attr(755,root,root) %{_sbindir}/varnishd
-%attr(755,root,root) %{_bindir}/varnish*
-%{_mandir}/man1/*
-%{_mandir}/man7/*
-/var/lib/varnish
-/var/run/varnish
+%attr(755,root,root) %{_bindir}/varnishadm
+%attr(755,root,root) %{_bindir}/varnishhist
+%attr(755,root,root) %{_bindir}/varnishlog
+%attr(755,root,root) %{_bindir}/varnishncsa
+%attr(755,root,root) %{_bindir}/varnishreplay
+%attr(755,root,root) %{_bindir}/varnishsizes
+%attr(755,root,root) %{_bindir}/varnishstat
+%attr(755,root,root) %{_bindir}/varnishtest
+%attr(755,root,root) %{_bindir}/varnishtop
+%dir %{_libdir}/%{name}
+%attr(755,root,root) %{_libdir}/%{name}/libvarnish.so
+%attr(755,root,root) %{_libdir}/%{name}/libvarnishcompat.so
+%attr(755,root,root) %{_libdir}/%{name}/libvcl.so
+%attr(755,root,root) %{_libdir}/%{name}/libvgz.so
+%dir %{_libdir}/%{name}/vmods
+%attr(755,root,root) %{_libdir}/%{name}/vmods/libvmod_std.so
+%{_mandir}/man1/varnishadm.1*
+%{_mandir}/man1/varnishd.1*
+%{_mandir}/man1/varnishhist.1*
+%{_mandir}/man1/varnishlog.1*
+%{_mandir}/man1/varnishncsa.1*
+%{_mandir}/man1/varnishreplay.1*
+%{_mandir}/man1/varnishsizes.1*
+%{_mandir}/man1/varnishstat.1*
+%{_mandir}/man1/varnishtest.1*
+%{_mandir}/man1/varnishtop.1*
+%{_mandir}/man3/vmod_std.3*
+%{_mandir}/man7/varnish-cli.7*
+%{_mandir}/man7/varnish-counters.7*
+%{_mandir}/man7/vcl.7*
+%dir /var/lib/varnish
+%dir /var/run/varnish
+%{systemdtmpfilesdir}/%{name}.conf
 
 %dir %attr(751,root,root) /var/log/varnish
 %dir %attr(750,root,root) /var/log/archive/varnish
 
 %files libs
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libvarnish*.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libvarnish*.so.1
-%attr(755,root,root) %{_libdir}/libvcl.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libvcl.so.1
+%attr(755,root,root) %{_libdir}/libvarnishapi.so.*.*.*
+%ghost %{_libdir}/libvarnishapi.so.1
 
 %files devel
 %defattr(644,root,root,755)
 %{_includedir}/varnish
-%attr(755,root,root) %{_libdir}/*.so
-%{_libdir}/*.la
-%{_pkgconfigdir}/*.pc
+%{_libdir}/libvarnishapi.la
+%{_libdir}/libvarnishapi.so
+%{_pkgconfigdir}/varnishapi.pc
 
 %files static
 %defattr(644,root,root,755)
-%{_libdir}/*.a
+%{_libdir}/libvarnishapi.a
+%{_libdir}/%{name}/libvarnish.a
+%{_libdir}/%{name}/libvarnishcompat.a
+%{_libdir}/%{name}/libvcl.a
+%{_libdir}/%{name}/libvgz.a
+%{_libdir}/%{name}/vmods/libvmod_std.a
+
+%if %{with source}
+%files source
+%defattr(644,root,root,755)
+%{_usrsrc}/%{name}-%{version}
+%endif
This page took 0.108038 seconds and 4 git commands to generate.