]> git.pld-linux.org Git - packages/passenger.git/blame - apache-mod_rails.spec
- rel 2
[packages/passenger.git] / apache-mod_rails.spec
CommitLineData
6cb57b65
BZ
1#
2# TODO:
3# - separate -devel with ExtUtils::Embed and friends?
4# - how to pass CXXFLAGS to Rakefile?
76045959 5# - pass %{__cxx}
6cb57b65 6
2a03dcd6 7%define apxs /usr/sbin/apxs
a6dd913b 8%define mod_name rails
6cb57b65
BZ
9%define apacheconfdir %(%{apxs} -q SYSCONFDIR 2>/dev/null)/conf.d
10%define apachelibdir %(%{apxs} -q LIBEXECDIR 2>/dev/null)
2a03dcd6
JR
11%define apacheprefix %(%{apxs} -q PREFIX 2>/dev/null)
12%define apachelibdir2 %(%{apxs} -q LIBEXECDIR 2>/dev/null | %{__sed} 's|%{apacheprefix}||')
6cb57b65 13
a6dd913b 14Summary: A module to bridge Ruby on Rails to Apache
15Name: apache-mod_rails
681e9caf 16Version: 3.0.0
db3db01f 17Release: 2
a6dd913b 18License: Apache
c3715c90 19Group: Networking/Daemons/HTTP
2a03dcd6 20Source0: http://rubygems.org/downloads/passenger-%{version}.gem
681e9caf 21# Source0-md5: 1135431e5e655fb1e1173757827b0d9d
2a03dcd6 22Source1: %{name}.conf
9ffe5700
JR
23Patch0: %{name}-nogems.patch
24Patch1: %{name}-graceful.patch
a6dd913b 25URL: http://www.modrails.com
6cb57b65 26BuildRequires: apache-base >= 2.0.55-1
a6dd913b 27BuildRequires: apache-devel >= 2.0.55-1
6cb57b65 28BuildRequires: apache-tools >= 2.0.55-1
a6dd913b 29BuildRequires: apr-util-devel >= 1:1.0.0
681e9caf 30BuildRequires: curl-devel
76045959 31BuildRequires: libstdc++-devel
6cb57b65 32BuildRequires: pkgconfig
76045959 33BuildRequires: rpm-pythonprov
a6dd913b 34BuildRequires: rpmbuild(macros) >= 1.268
35BuildRequires: ruby-devel
50225bc6 36BuildRequires: ruby-rake >= 0.8.0
6cb57b65 37BuildRequires: sed >= 4.0
a6dd913b 38Provides: apache(mod_rails)
39BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
40
a6dd913b 41%description
42Phusion Passenger — a.k.a. mod_rails — makes deployment of
43applications built on the revolutionary Ruby on Rails web framework a
44breeze. It follows the usual Ruby on Rails conventions, such as
45“Don’t-Repeat-Yourself”.
46
2a03dcd6
JR
47%package rdoc
48Summary: HTML documentation for %{pkgname}
49Summary(pl.UTF-8): Dokumentacja w formacie HTML dla %{pkgname}
50Group: Documentation
51Requires: ruby >= 1:1.8.7-4
52
53%description rdoc
54HTML documentation for %{pkgname}.
55
56%description rdoc -l pl.UTF-8
57Dokumentacja w formacie HTML dla %{pkgname}.
58
59%package ri
60Summary: ri documentation for %{pkgname}
61Summary(pl.UTF-8): Dokumentacja w formacie ri dla %{pkgname}
62Group: Documentation
63Requires: ruby
64
65%description ri
66ri documentation for %{pkgname}.
67
68%description ri -l pl.UTF-8
69Dokumentacji w formacie ri dla %{pkgname}.
70
a6dd913b 71%prep
2a03dcd6
JR
72%setup -q -c
73%{__tar} xf %{SOURCE0} -O data.tar.gz | %{__tar} xz
74find -newer README -o -print | xargs touch --reference %{SOURCE0}
9ffe5700 75%patch0 -p1
a4a2ddb7 76%patch1 -p1
2a03dcd6 77
681e9caf 78# TODO : ugly method - but works
6cb57b65 79%{__sed} -i 's/CXXFLAGS = "/CXXFLAGS = "`pkg-config --cflags apr-util-1`/ ' Rakefile
a6dd913b 80
2a03dcd6
JR
81%{__sed} -i -e 's/rd.template/# rd.template/' Rakefile
82
c6fa4cf0 83%{__sed} -i -e 's!/usr/lib/!%{_libdir}/!g' ext/common/ResourceLocator.h
2a03dcd6 84
a6dd913b 85%build
681e9caf 86
87APXS2=%{apxs} rake apache2
50225bc6 88#APXS2=%{apxs} rake doc
2a03dcd6 89
681e9caf 90cd ext/ruby
91ruby extconf.rb
92%{__make}
93cd ../..
94
2a03dcd6 95rdoc --ri --op ri lib misc ext
681e9caf 96rm -r ri/{ConditionVariable,Exception,GC,IO,Mysql,Object,Signal}
2a03dcd6 97rm ri/created.rid
a6dd913b 98
99%install
100rm -rf $RPM_BUILD_ROOT
2a03dcd6
JR
101install -d $RPM_BUILD_ROOT{%{apachelibdir},%{apacheconfdir},%{_mandir}/man{1,8}} \
102 $RPM_BUILD_ROOT{%{ruby_rubylibdir},%{ruby_ridir},%{ruby_rdocdir}} \
681e9caf 103 $RPM_BUILD_ROOT%{_bindir} \
104 $RPM_BUILD_ROOT%{ruby_archdir} \
105 $RPM_BUILD_ROOT%{_libdir}/phusion-passenger/agents/apache2 \
106 $RPM_BUILD_ROOT%{_datadir}/phusion-passenger/helper-scripts
a6dd913b 107
108install ext/apache2/mod_passenger.so $RPM_BUILD_ROOT%{apachelibdir}
2a03dcd6 109
681e9caf 110install ext/ruby/passenger_native_support.so $RPM_BUILD_ROOT%{ruby_archdir}
2a03dcd6 111
681e9caf 112install bin/passenger-{config,make-enterprisey,memory-stats,status,stress-test} bin/passenger \
2a03dcd6
JR
113 $RPM_BUILD_ROOT%{_bindir}
114
681e9caf 115install agents/PassengerLoggingAgent agents/PassengerWatchdog $RPM_BUILD_ROOT%{_libdir}/phusion-passenger/agents
116install agents/apache2/PassengerHelperAgent $RPM_BUILD_ROOT%{_libdir}/phusion-passenger/agents/apache2
117
118install helper-scripts/* $RPM_BUILD_ROOT%{_datadir}/phusion-passenger/helper-scripts
119
2a03dcd6
JR
120cp -a lib/* $RPM_BUILD_ROOT%{ruby_rubylibdir}
121install man/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
122install man/*.8 $RPM_BUILD_ROOT%{_mandir}/man8
a6dd913b 123
2a03dcd6
JR
124cp -a doc/rdoc $RPM_BUILD_ROOT%{ruby_rdocdir}/%{name}-%{version}
125cp -a ri/* $RPM_BUILD_ROOT%{ruby_ridir}
126
127install %{SOURCE1} $RPM_BUILD_ROOT%{apacheconfdir}/75_mod_rails.conf
a6dd913b 128
129%clean
130rm -rf $RPM_BUILD_ROOT
131
132%post
133%service -q httpd restart
134
135%postun
136if [ "$1" = "0" ]; then
137 %service -q httpd restart
138fi
139
140%files
141%defattr(644,root,root,755)
2a03dcd6
JR
142%doc INSTALL README doc/*.txt
143%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{apacheconfdir}/*.conf
144%attr(755,root,root) %{apachelibdir}/*
6cb57b65 145%attr(755,root,root) %{_bindir}/passenger-*
681e9caf 146%attr(755,root,root) %{_bindir}/passenger*
147%attr(755,root,root) %{ruby_archdir}/*.so
148%dir %{_libdir}/phusion-passenger
149%dir %{_libdir}/phusion-passenger/agents
150%attr(755,root,root) %{_libdir}/phusion-passenger/agents/Passenger*
151%dir %{_libdir}/phusion-passenger/agents/apache2
152%attr(755,root,root) %{_libdir}/phusion-passenger/agents/apache2/Passenger*
2a03dcd6 153%{ruby_rubylibdir}/phusion_passenger
681e9caf 154%{ruby_rubylibdir}/phusion_passenger.rb
155%dir %{_datadir}/phusion-passenger
156%dir %{_datadir}/phusion-passenger/helper-scripts
157%attr(755,root,root) %{_datadir}/phusion-passenger/helper-scripts/*
2a03dcd6
JR
158%{_mandir}/man1/*
159%{_mandir}/man8/*
160
161%files rdoc
162%defattr(644,root,root,755)
163%{ruby_rdocdir}/%{name}-%{version}
164
165%files ri
166%defattr(644,root,root,755)
167%{ruby_ridir}/PhusionPassenger
This page took 0.103372 seconds and 4 git commands to generate.