]> git.pld-linux.org Git - packages/apache-mod_pagespeed.git/blame - apache-mod_pagespeed.spec
prefer gclient from PATH
[packages/apache-mod_pagespeed.git] / apache-mod_pagespeed.spec
CommitLineData
757b3ba5
ER
1#
2# Conditional build:
42a31ab3 3%bcond_without verbose # verbose build (V=1)
757b3ba5 4
b6a5d8d0 5# NOTE
757b3ba5 6# - http://code.google.com/p/modpagespeed/wiki/HowToBuild
eb743e9a 7# - http://wiki.mediatemple.net/w/(dv)_HOWTO:_Install_mod_pagespeed
b6a5d8d0 8# TODO
757b3ba5 9# - add unit tests running
b6a5d8d0
ER
10# - possible sysdeps (uses release tags)
11# "serf_src": "http://serf.googlecode.com/svn/tags/0.3.1",
b6a5d8d0
ER
12# "gflags_root": "http://google-gflags.googlecode.com/svn/tags/gflags-1.3/src",
13# "google_sparsehash_root": "http://google-sparsehash.googlecode.com/svn/tags/sparsehash-1.8.1/src",
b74b29a5 14# protobuf_lite
24f1647c
ER
15
16%if "%{pld_release}" == "ac"
17# add suffix, but allow ccache, etc in ~/.rpmmacros
18%{expand:%%define __cc %(echo '%__cc' | sed -e 's,-gcc,-gcc4,')}
19%{expand:%%define __cxx %(echo '%__cxx' | sed -e 's,-g++,-g++4,')}
20%{expand:%%define __cpp %(echo '%__cpp' | sed -e 's,-gcc,-gcc4,')}
21%endif
22
08710a2f 23%define mod_name pagespeed
cad452c8 24%define apxs %{_sbindir}/apxs
08710a2f
ER
25Summary: Apache module for rewriting web pages to reduce latency and bandwidth
26Name: apache-mod_%{mod_name}
ce5a7d18 27Version: 1.5.27.2
9c41f6b1 28Release: 3
08710a2f
ER
29License: Apache v2.0
30Group: Networking/Daemons/HTTP
4623c72a 31Source0: modpagespeed-%{version}.tar.xz
ce5a7d18 32# Source0-md5: fa8d6a80fc4ca7f929910fa4eeb4a941
b74b29a5 33Source1: get-source.sh
5a3e561c 34Source2: gclient.conf
42a31ab3
ER
35Patch0: system-libs.patch
36Patch1: gcc-headers.patch
1a9213c5 37Patch2: bug-632.patch
b6382d61 38Patch3: opencv.patch
cad452c8 39Patch4: no-dev-stdout.patch
b74b29a5 40URL: https://developers.google.com/speed/pagespeed/
08710a2f
ER
41BuildRequires: %{apxs}
42BuildRequires: apache-devel >= 2.2
42a31ab3 43BuildRequires: glib2-devel
3f27b998 44BuildRequires: gperf
42a31ab3 45BuildRequires: libselinux-devel
b74b29a5 46BuildRequires: libstdc++-devel >= 5:4.1
4623c72a 47BuildRequires: opencv-devel >= 2.3.1
42a31ab3 48BuildRequires: openssl-devel
3f27b998 49BuildRequires: pkgconfig
757b3ba5 50BuildRequires: python-devel >= 1:2.6
4623c72a
ER
51# This version of gyp is new enough that it knows to use make for Linux 3.x
52# and FreeBSD, but old enough that 'type': 'settings' works and
53# LINKER_SUPPORTS_ICF hasn't been removed yet.
3fbdacfc 54BuildRequires: python-gyp >= 0.1-0.svn1602.1
08710a2f 55BuildRequires: rpmbuild(macros) >= 1.268
4623c72a 56BuildRequires: tar >= 1:1.22
2ddcd200 57BuildRequires: util-linux
4623c72a 58BuildRequires: xz
42a31ab3 59BuildRequires: zlib-devel
24f1647c
ER
60# gcc4 might be installed, but not current __cc
61%if "%(echo %{cc_version} | cut -d. -f1,2)" < "4.0"
62BuildRequires: __cc >= 4.0
63%endif
08710a2f 64Requires: apache(modules-api) = %apache_modules_api
e5171f2e 65Requires: apache-mod_authz_host
3f27b998 66Requires: apache-mod_headers
b6a5d8d0 67Suggests: apache-mod_deflate
08710a2f
ER
68BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
69
70%define _pkglibdir %(%{apxs} -q LIBEXECDIR 2>/dev/null)
06daee42
ER
71%define _pkgrootdir %(%{apxs} -q SYSCONFDIR 2>/dev/null)
72%define _sysconfdir %{_pkgrootdir}/conf.d
73%define htdocsdir %(%{apxs} -q htdocsdir 2>/dev/null)
74%define cachedir %(%{apxs} -q proxycachedir 2>/dev/null)/mod_%{mod_name}
08710a2f
ER
75
76%description
77mod_pagespeed automates the application of those rules in an Apache
78server. HTML, CSS, JavaScript, and images are changed dynamically
79during the web serving process, so that the best practices recommended
80by Page Speed can be used without having to change the way the web
81site is maintained.
82
83%prep
5bdfa704
ER
84%setup -q -n modpagespeed-%{version}
85%patch0 -p2
86%patch1 -p2
ce5a7d18 87%patch2 -p1
b6382d61 88%patch3 -p3
9c41f6b1 89%patch4 -p1
08710a2f
ER
90
91%build
eb743e9a 92# re-gen makefiles
e62ba6cb
ER
93CC="%{__cc}" \
94CXX="%{__cxx}" \
5bdfa704
ER
95%{__python} build/gyp_chromium \
96 --format=make \
97 --depth=. \
98 build/all.gyp \
42a31ab3
ER
99 -Duse_openssl=1 \
100 -Duse_system_apache_dev=1 \
101 -Duse_system_libjpeg=1 \
102 -Duse_system_libpng=1 \
103 -Duse_system_opencv=1 \
104 -Duse_system_zlib=1 \
b2f50394
ER
105 -Dsystem_include_path_apr=%{_includedir}/apr \
106 -Dsystem_include_path_aprutil=%{_includedir}/apr-util \
107 -Dsystem_include_path_httpd=%{_includedir}/apache \
42a31ab3
ER
108 %{nil}
109
1a9213c5 110%{__make} mod_pagespeed js_minify css_minify_main \
08710a2f
ER
111 BUILDTYPE=%{!?debug:Release}%{?debug:Debug} \
112 %{?with_verbose:V=1} \
113 CC="%{__cc}" \
114 CXX="%{__cxx}" \
115 CC.host="%{__cc}" \
116 CXX.host="%{__cxx}" \
117 LINK.host="%{__cxx}" \
118 CFLAGS="%{rpmcflags} %{rpmcppflags}" \
119 CXXFLAGS="%{rpmcxxflags} %{rpmcppflags}" \
5bdfa704 120 %{nil}
08710a2f
ER
121
122%install
123rm -rf $RPM_BUILD_ROOT
1a9213c5
ER
124install -d $RPM_BUILD_ROOT{%{_pkglibdir},%{_sysconfdir},%{_bindir},%{cachedir}}
125
5bdfa704 126%{__make} -j1 -C install staging_except_module \
06daee42 127 APACHE_ROOT=%{_pkgrootdir} \
3f27b998 128 APACHE_MODULES=modules \
06daee42 129 APACHE_DOC_ROOT=%{htdocsdir} \
5bdfa704
ER
130 MOD_PAGESPEED_CACHE=%{cachedir} \
131 MOD_PAGESPEED_STATS_LOG=/var/log/httpd/mod_pagespeed_stats.log \
06daee42
ER
132 STAGING_DIR=staging
133
1a9213c5
ER
134out=out/%{!?debug:Release}%{?debug:Debug}
135install -p $out/libmod_%{mod_name}.so $RPM_BUILD_ROOT%{_pkglibdir}/mod_%{mod_name}.so
136install -p $out/js_minify $RPM_BUILD_ROOT%{_bindir}/pagespeed_js_minify
137install -p $out/css_minify_main $RPM_BUILD_ROOT%{_bindir}/pagespeed_css_minify
138
5bdfa704 139cd install/staging
06daee42
ER
140cat > $RPM_BUILD_ROOT%{_sysconfdir}/90_mod_%{mod_name}.conf <<EOF
141LoadModule %{mod_name}_module modules/mod_%{mod_name}.so
142
143$(cat pagespeed.conf)
144EOF
08710a2f 145
1a9213c5
ER
146cp -p pagespeed_libraries.conf $RPM_BUILD_ROOT%{_sysconfdir}/91_mod_%{mod_name}_libraries.conf
147
3f27b998
ER
148install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
149cp -a mod_pagespeed_example/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
150
08710a2f
ER
151%clean
152rm -rf $RPM_BUILD_ROOT
153
154%post
155%service -q httpd restart
156
157%postun
158if [ "$1" = "0" ]; then
159 %service -q httpd restart
160fi
161
162%files
163%defattr(644,root,root,755)
08710a2f 164%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*_mod_%{mod_name}.conf
1a9213c5
ER
165%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/*_mod_%{mod_name}_libraries.conf
166%attr(755,root,root) %{_bindir}/pagespeed_css_minify
167%attr(755,root,root) %{_bindir}/pagespeed_js_minify
b6a5d8d0 168%attr(755,root,root) %{_pkglibdir}/mod_%{mod_name}.so
3f27b998 169%{_examplesdir}/%{name}-%{version}
5bdfa704 170%dir %attr(770,root,http) %{cachedir}
This page took 0.1408 seconds and 4 git commands to generate.