diff options
author | 2015-03-14 06:08:10 +0000 | |
---|---|---|
committer | 2015-03-14 06:08:10 +0000 | |
commit | a5919f70f3bd3da5874f3c82c52daa8e4efa964e (patch) | |
tree | d11d8f406341a481d8e47614afb40d44ce238e4b /www-apache | |
parent | Move to EAPI=5 (bug #543172). Remove old (diff) | |
download | gentoo-2-a5919f70f3bd3da5874f3c82c52daa8e4efa964e.tar.gz gentoo-2-a5919f70f3bd3da5874f3c82c52daa8e4efa964e.tar.bz2 gentoo-2-a5919f70f3bd3da5874f3c82c52daa8e4efa964e.zip |
Version bump, fixing bug 543072.
(Portage version: 2.2.14/cvs/Linux x86_64, signed Manifest commit with key 0x8883FA56A308A8D7!)
Diffstat (limited to 'www-apache')
-rw-r--r-- | www-apache/passenger/ChangeLog | 8 | ||||
-rw-r--r-- | www-apache/passenger/files/30_mod_passenger-5.0.0.conf | 63 | ||||
-rw-r--r-- | www-apache/passenger/files/passenger-5.0.4-gentoo.patch | 30 | ||||
-rw-r--r-- | www-apache/passenger/passenger-5.0.4.ebuild | 114 |
4 files changed, 214 insertions, 1 deletions
diff --git a/www-apache/passenger/ChangeLog b/www-apache/passenger/ChangeLog index b7e64d05bfdd..3997f6ec8bbf 100644 --- a/www-apache/passenger/ChangeLog +++ b/www-apache/passenger/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for www-apache/passenger # Copyright 1999-2015 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/www-apache/passenger/ChangeLog,v 1.109 2015/03/14 05:36:17 graaff Exp $ +# $Header: /var/cvsroot/gentoo-x86/www-apache/passenger/ChangeLog,v 1.110 2015/03/14 06:08:10 graaff Exp $ + +*passenger-5.0.4 (14 Mar 2015) + + 14 Mar 2015; Hans de Graaff <graaff@gentoo.org> +passenger-5.0.4.ebuild, + +files/30_mod_passenger-5.0.0.conf, +files/passenger-5.0.4-gentoo.patch: + Version bump, fixing bug 543072. 14 Mar 2015; Hans de Graaff <graaff@gentoo.org> -passenger-3.0.21-r1.ebuild: Cleanup. diff --git a/www-apache/passenger/files/30_mod_passenger-5.0.0.conf b/www-apache/passenger/files/30_mod_passenger-5.0.0.conf new file mode 100644 index 000000000000..f218b59ca412 --- /dev/null +++ b/www-apache/passenger/files/30_mod_passenger-5.0.0.conf @@ -0,0 +1,63 @@ +<IfDefine PASSENGER> +LoadModule passenger_module modules/mod_passenger.so + +# The location to the Phusion Passenger root directory. This configuration +# option is essential to Phusion Passenger. The correct value is given by the +# installer, and should usually not be changed manually. +PassengerRoot /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini + +# This option allows one to specify how much information Phusion Passenger +# should write to the Apache error log file. A higher log level value means +# that more information will be logged. +# +# Possible values are: +# +# 0: Show only errors and warnings. +# 1: Show the most important debugging information. This might be useful for +# system administrators who are trying to figure out the cause of a +# problem. +# 2: Show more debugging information. This is typically only useful for +# developers. +# 3: Show even more debugging information. +PassengerLogLevel 0 + +# This option specifies the default global version of Ruby to use. +PassengerDefaultRuby /usr/bin/ruby + +# This option allows one to specify the Ruby interpreter to use for +# specific instances. +# PassengerRuby /usr/bin/ruby + +# The maximum number of Ruby on Rails application instances that may be +# simultaneously active. A larger number results in higher memory usage, but +# improved ability to handle concurrent HTTP clients. +PassengerMaxPoolSize 20 + +# The maximum number of seconds that a Ruby on Rails application instance may +# be idle. That is, if an application instance hasn't done anything after the +# given number of seconds, then it will be shutdown in order to conserve +# memory. +PassengerPoolIdleTime 120 + +# The maximum number of application instances that may be simultaneously active +# for a single application. This helps to make sure that a single application +# will not occupy all available slots in the application pool. +# +# This value must be less than PassengerMaxPoolSize. A value of 0 means that +# there is no limit placed on the number of instances a single application may +# use, i.e. only the global limit of PassengerMaxPoolSize will be enforced. +PassengerMaxInstancesPerApp 0 + +# When the PassengerUserSwitching option is enabled a Rails application is started +# as the owner of the file config/environment.rb. So if +# /home/webapps/foo/config/environment.rb is owned by joe, then Passenger will +# launch the corresponding Rails application as joe as well. +PassengerUserSwitching On + +# Under no circumstances will Rails applications be run as root. If +# environment.rb is owned by root or by an unknown user, then the Rails +# application will run as the user specified by PassengerDefaultUser. +PassengerDefaultUser apache +</IfDefine> + +# vim: ts=4 filetype=apache diff --git a/www-apache/passenger/files/passenger-5.0.4-gentoo.patch b/www-apache/passenger/files/passenger-5.0.4-gentoo.patch new file mode 100644 index 000000000000..713deb070324 --- /dev/null +++ b/www-apache/passenger/files/passenger-5.0.4-gentoo.patch @@ -0,0 +1,30 @@ +--- build/packaging.rb.orig 2015-03-14 06:52:27.284475606 +0100 ++++ build/packaging.rb 2015-03-14 06:52:35.128268388 +0100 +@@ -513,7 +513,7 @@ + psg_ruby_extension_source_dir = "#{fs_datadir}/#{GLOBAL_NAMESPACE_DIRNAME}/ruby_extension_source" + psg_nginx_module_source_dir = "#{fs_datadir}/#{GLOBAL_NAMESPACE_DIRNAME}/ngx_http_passenger_module" + +- fakeroot = "pkg/fakeroot" ++ fakeroot = ENV['DISTDIR'] + fake_rubylibdir = "#{fakeroot}#{psg_rubylibdir}" + fake_nodelibdir = "#{fakeroot}#{psg_nodelibdir}" + fake_libdir = "#{fakeroot}#{psg_libdir}" +@@ -531,7 +531,6 @@ + + packaging_method = ENV['NATIVE_PACKAGING_METHOD'] || ENV['PACKAGING_METHOD'] || "deb" + +- sh "rm -rf #{fakeroot}" + sh "mkdir -p #{fakeroot}" + + # Ruby sources +@@ -622,10 +621,6 @@ + end + end + +- # Apache 2 module +- sh "mkdir -p #{File.dirname(fake_apache2_module_path)}" +- sh "cp #{APACHE2_MODULE} #{fake_apache2_module_path}" +- + # Ruby extension sources + sh "mkdir -p #{fake_ruby_extension_source_dir}" + sh "cp -R #{PhusionPassenger.ruby_extension_source_dir}/* #{fake_ruby_extension_source_dir}" diff --git a/www-apache/passenger/passenger-5.0.4.ebuild b/www-apache/passenger/passenger-5.0.4.ebuild new file mode 100644 index 000000000000..16bbc7118654 --- /dev/null +++ b/www-apache/passenger/passenger-5.0.4.ebuild @@ -0,0 +1,114 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/www-apache/passenger/passenger-5.0.4.ebuild,v 1.1 2015/03/14 06:08:10 graaff Exp $ + +EAPI=5 +USE_RUBY="ruby19 ruby20 ruby21 ruby22" + +inherit apache-module flag-o-matic multilib ruby-ng toolchain-funcs + +DESCRIPTION="Passenger (a.k.a. mod_rails) makes deployment of Ruby on Rails applications a breeze" +HOMEPAGE="http://modrails.com/" +SRC_URI="http://s3.amazonaws.com/phusion-passenger/releases/${P}.tar.gz" + +LICENSE="GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="debug" + +ruby_add_bdepend "dev-ruby/rake" + +ruby_add_rdepend " + >=dev-ruby/rack-1.0.0 + >=dev-ruby/rake-0.8.1" + +CDEPEND=">=dev-libs/libev-4.15 net-misc/curl[ssl] + www-servers/apache[apache2_modules_unixd(+)]" + +RDEPEND="${RDEPEND} ${CDEPEND}" +DEPEND="${DEPEND} ${CDEPEND}" + +APACHE2_MOD_CONF="30_mod_${PN}-5.0.0 30_mod_${PN}" +APACHE2_MOD_DEFINE="PASSENGER" + +need_apache2 + +pkg_setup() { + use debug && append-flags -DPASSENGER_DEBUG +} + +all_ruby_prepare() { + epatch "${FILESDIR}"/${PN}-5.0.4-gentoo.patch + + # Change these with sed instead of a patch so that we can easily use + # the toolchain-funcs methods. + sed -i -e "/^CC/ s/=.*$/= '$(tc-getCC)'/" \ + -e "/^CXX/ s/=.*$/= '$(tc-getCXX)'/" \ + -e 's/PlatformInfo.debugging_cflags//' build/basics.rb || die + + # Avoid fixed debugging CFLAGs. + sed -e '/debugging_cflags/areturn ""' -i lib/phusion_passenger/platform_info/compiler.rb || die + + # Use sed here so that we can dynamically set the documentation directory. + sed -i -e "s:/usr/share/doc/passenger:/usr/share/doc/${P}:" \ + -e "s:/usr/lib/apache2/modules/mod_passenger.so:${APACHE_MODULESDIR}/mod_passenger.so:" \ + -e "s:/usr/lib/phusion-passenger/agents:/usr/libexec/phusion-passenger/agents:" \ + lib/phusion_passenger.rb || die + sed -i -e "s:/usr/lib/phusion-passenger/agents:/usr/libexec/phusion-passenger/agents:" ext/common/ResourceLocator.h || die + + # Don't install a tool that won't work in our setup. + sed -i -e '/passenger-install-apache2-module/d' lib/phusion_passenger/packaging.rb || die + rm -f bin/passenger-install-apache2-module || die "Unable to remove unneeded install script." + + # Make sure we use the system-provided version. + rm -rf ext/libev || die "Unable to remove vendored libev." + + # Avoid building documentation to avoid a dependency on mizuho. + #sed -i -e 's/, :doc//' build/packaging.rb || die + touch doc/*.html || die + + # Use the correct arch-specific lib directory + sed -i -e 's:/usr/lib/:/usr/'$(get_libdir)'/:' build/packaging.rb || die + + # Fix hard-coded use of AR + sed -i -e "s/ar cru/"$(tc-getAR)" cru/" build/cplusplus_support.rb || die +} + +all_ruby_compile() { + V=1 EXTRA_LDFLAGS="${LDFLAGS}" \ + APXS2="${APXS}" \ + HTTPD="${APACHE_BIN}" \ + USE_VENDORED_LIBEV="no" LIBEV_LIBS="-lev" \ + ruby -S rake apache2 || die "rake failed" +} + +each_ruby_compile() { + append-flags -fno-strict-aliasing + + V=1 EXTRA_LDFLAGS="${LDFLAGS}" \ + APXS2="${APXS}" \ + HTTPD="${APACHE_BIN}" \ + USE_VENDORED_LIBEV="no" LIBEV_LIBS="-lev" \ + ${RUBY} -S rake native_support || die "rake failed" +} + +all_ruby_install() { + APACHE2_MOD_FILE="${S}/buildout/apache2/mod_${PN}.so" + apache-module_src_install + + # Patch in the correct libdir + sed -i -e 's:/usr/lib/:/usr/'$(get_libdir)'/:' "${D}${APACHE_MODULES_CONFDIR}/30_mod_${PN}.conf" || die + + dodoc CHANGELOG README.md +} + +each_ruby_install() { + DISTDIR="${D}" \ + RUBYLIBDIR="$(ruby_rbconfig_value vendordir)" \ + RUBYARCHDIR="$(ruby_rbconfig_value archdir)" \ + APXS2="${APXS}" \ + HTTPD="${APACHE_BIN}" \ + EXTRA_LDFLAGS="${LDFLAGS}" \ + USE_VENDORED_LIBEV="no" LIBEV_LIBS="-lev" \ + ${RUBY} -S rake fakeroot || die "rake failed" +} |