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