Blob Blame History Raw
# Generated from actionpack-1.13.5.gem by gem2rpm -*- rpm-spec -*-
%define gemdir %(ruby -rubygems -e 'puts Gem::dir' 2>/dev/null)
%define gemname actionpack
%define geminstdir %{gemdir}/gems/%{gemname}-%{version}

%define rubyabi 1.8

Summary: Web-flow and rendering framework putting the VC in MVC
Name: rubygem-%{gemname}
Epoch: 1
Version: 3.0.3
Release: 4%{?dist}
Group: Development/Languages
License: MIT
URL: http://www.rubyonrails.org
Source0: http://rubygems.org/downloads/actionpack-%{version}.gem

# The actionpack gem doesn't ship with the upstream Rakefile
Source1: http://github.com/rails/rails/raw/v%{version}/%{gemname}/Rakefile

# Also the actionpack gem doesn't ship with the test suite.
# You may check it out like so
# git clone http://github.com/rails/rails.git
# cd rails/actionpack/
# git checkout v3.0.3
# tar czvf actionpack-tests.tgz test/
Source2: actionpack-tests.tgz

Patch0:  rubygem-actionpack-enable-test.patch

# Remove a task which breaks the Rakefile due to the gemspec
# not being present in the gem
Patch1: actionpack-rakefile-fix.patch

# Removes code which breaks the test suite due to a
# dependency on a file in the greater rails proj
Patch2: actionpack-tests-fix.patch

Patch3: actionpack-downgrade-dependencies.patch

Patch4: actionpack-add-rack-mount-deps.patch

#
# Please someone fix the following Patch2!! (mtasaka)
#
#Patch2:  rubygem-actionpack-2.3.5-rack-compat.patch

Requires: rubygems
Requires: rubygem(activesupport) = %{version}
Requires: rubygem(activemodel) = %{version}
Requires: rubygem(builder) = 2.1.2
Requires: rubygem(i18n) = 0.4.2
Requires: rubygem(rack) >= 1.0.0
Requires: rubygem(rack-test)
Requires: rubygem(rack-mount)
Requires: rubygem(tzinfo) >= 0.3.23
Requires: rubygem(erubis) >= 2.6.5
Requires: rubygem(erubis) < 2.7.0
Requires: ruby(abi) = %{rubyabi}
BuildRequires: rubygems
BuildRequires: rubygem(rake)
BuildRequires: rubygem(mocha) >= 0.9.7
BuildRequires: rubygem(activesupport) = %{version}
BuildRequires: rubygem(activemodel)   = %{version}
BuildRequires: rubygem(activerecord)  = %{version}
BuildRequires: rubygem(sqlite3)
BuildRequires: rubygem(builder) = 2.1.2
BuildRequires: rubygem(i18n) = 0.4.2
BuildRequires: rubygem(rack) >= 1.0.0
BuildRequires: rubygem(rack-test)
BuildRequires: rubygem(rack-mount)
BuildRequires: rubygem(tzinfo) >= 0.3.23
BuildRequires: rubygem(erubis) >= 2.6.5
BuildRequires: rubygem(erubis) < 2.7.0
BuildArch: noarch
Provides: rubygem(%{gemname}) = %{version}

%description
Eases web-request routing, handling, and response as a half-way front,
half-way page controller. Implemented with specific emphasis on enabling easy
unit/integration testing that doesn't require a browser.


%prep
%setup -q -c -T
mkdir -p .%{gemdir}
gem install --local --install-dir .%{gemdir} \
            -V \
            --force --rdoc %{SOURCE0}

# forcely modify gemspec for rack dependency
sed -i -e '/rack/s|~>|>=|' \
	./%{gemdir}/specifications/*gemspec

# move the Rakefile in place
cp %{SOURCE1} .%{geminstdir}

# move the tests into place
tar xzvf %{SOURCE2} -C .%{geminstdir}

pushd .%{geminstdir}
%patch0 -p0
#%patch1 -p0
%patch2 -p0

# create missing symlink
pushd test/fixtures/layout_tests/layouts/
ln -sf ../../symlink_parent/ symlinked
popd

popd

pushd .%{gemdir}
%patch3 -p0
%patch4 -p0

# Remove backup files
# No! these are needed for rake test
# find ./%{geminstdir} -type f -name "*~" -delete

# Delete zero-length files
# No! these are also needed for rake test
# find ./%{geminstdir} -type f -size 0c -exec rm -rvf {} \;

# Fix anything executable that does not have a shebang
for file in `find ./%{geminstdir} -type f -perm /a+x`; do
    [ -z "`head -n 1 $file | grep \"^#!/\"`" ] && chmod -v 644 $file
done

# Find files with a shebang that do not have executable permissions
for file in `find ./%{geminstdir} -type f ! -perm /a+x -name "*.rb"`; do
    [ ! -z "`head -n 1 $file | grep \"^#!/\"`" ] && chmod -v 755 $file
done

%build

%install
mkdir -p %{buildroot}%{gemdir}
cp -a .%{gemdir}/* %{buildroot}%{gemdir}


%clean
rm -rf %{buildroot}

%check
# Don't pollute /tmp, it won't be cleaned up after build
rm -rf ./tmpdir
mkdir ./tmpdir
export TMPDIR=$(pwd)/tmpdir

pushd .%{geminstdir}

# dependency loop
# depends on actionmailer, while actionmailer has BR(check): actionpack
mv test/controller/assert_select_test.rb \
            test/controller/assert_select_test.rb.skip

# Now as far as I checked rake test succeeds.
rake test --trace

%files
%defattr(-, root, root, -)
%dir %{geminstdir}
%doc %{geminstdir}/CHANGELOG
%{geminstdir}/lib
%doc %{geminstdir}/MIT-LICENSE
%{geminstdir}/Rakefile
%doc %{geminstdir}/README.rdoc
%doc %{geminstdir}/test/
%doc %{gemdir}/doc/%{gemname}-%{version}
%{gemdir}/cache/%{gemname}-%{version}.gem
%{gemdir}/specifications/%{gemname}-%{version}.gemspec


%changelog
* Wed Feb 16 2011 Vít Ondruch <vondruch@redhat.com> - 1:3.0.3-4
- Relaxed erubis dependency
- Fixed build compatibility with RubyGems 1.5

* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1:3.0.3-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild

* Mon Feb 07 2011 Mohammed Morsi <mmorsi@redhat.com> - 1:3.0.3-2
- changelog fixes

* Mon Jan 10 2011 Mohammed Morsi <mmorsi@redhat.com> - 1:3.0.3-1
- Update to rails 3

* Thu Aug 12 2010 Mohammed Morsi <mmorsi@redhat.com> - 1:2.3.8-2
- Bumped actionpack rack dependency to version 1.1.0

* Mon Aug 09 2010 Mohammed Morsi <mmorsi@redhat.com> - 1:2.3.8-1
- Update to 2.3.8

* Mon May 17 2010 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1:2.3.5-2
- Set TMPDIR environment at %%check to make it sure all files created
  during rpmbuild are cleaned up

* Thu Jan 28 2010 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1:2.3.5-1
- Update to 2.3.5

* Fri Jan  8 2010 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 1:2.3.4-4
- Workaround patch to fix for rack 1.1.0 dependency (bug 552972)

* Thu Dec 10 2009 David Lutterkort <lutter@redhat.com> - 1:2.3.4-3
- Patch for CVE-2009-4214 (bz 542786)

* Wed Oct  7 2009 David Lutterkort <lutter@redhat.com> - 1:2.3.4-2
- Bump Epoch to ensure upgrade path from F-11

* Sun Sep 20 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 2.3.4-1
- Update to 2.3.4 (bug 520843, CVE-2009-3009)
- Fix tests

* Sun Aug  2 2009 Mamoru Tasaka <mtasaka@ioa.s.u-tokyo.ac.jp> - 2.3.3-1
- 2.3.3
- Enable test (some tests fail, please someone investigate!!)

* Sun Jul 26 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.3.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild

* Mon Mar 16 2009 Jeroen van Meeuwen <j.van.meeuwen@ogd.nl> - 2.3.2-1
- New upstream version

* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.2.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild

* Tue Dec 23 2008 David Lutterkort <lutter@redhat.com> - 2.2.2-1
- New version

* Tue Sep 16 2008 David Lutterkort <dlutter@redhat.com> - 2.1.1-1
- New version (fixes CVE-2008-4094)

* Thu Jul 31 2008 Michael Stahnke <stahnma@fedoraproject.org> - 2.1.0-1
- New Upstream

* Tue Apr  8 2008 David Lutterkort <dlutter@redhat.com> - 2.0.2-2
- Fix dependency

* Mon Apr 07 2008 David Lutterkort <dlutter@redhat.com> - 2.0.2-1
- New version

* Mon Dec 10 2007 David Lutterkort <dlutter@redhat.com> - 2.0.1-1
- New version

* Thu Nov 29 2007 David Lutterkort <dlutter@redhat.com> - 1.13.6-1
- New version

* Tue Nov 14 2007 David Lutterkort <dlutter@redhat.com> - 1.13.5-2
- Fix buildroot; mark docs in geminstdir cleanly

* Tue Oct 30 2007 David Lutterkort <dlutter@redhat.com> - 1.13.5-1
- Initial package