forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Package-Manager: Portage-2.3.40, Repoman-2.3.9
- Loading branch information
Showing
2 changed files
with
128 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,2 @@ | ||
DIST passenger-5.3.2.tar.gz 7039759 BLAKE2B be10b368530b8560d7d93664bbf91711ace0cadb0d1e15a978c0a52311a626ea2e1c6d05e507ef488b384e4a7ccc4b02da35bd5bd5878788b036401e06a33b5f SHA512 97900a0e0de67cc3c3770c291c85c6fe937fceab5632c9832bc5c461d3b4e586a47c9733a1a50a805834f591e5af90651789ed74bf74e0eed4d6ce8084c51967 | ||
DIST passenger-5.3.3.tar.gz 7040055 BLAKE2B 1a9caa34dd809f96da84e9e3c00f365fd5a5e80c5134c25be810ad2bd9e1f01d0f64c6323211f28121590ac4d4593572c5f4392e1be2bc87d78741a0fdd73885 SHA512 ae0b4a2681e7877c7a57d236139033f17782f3d0d891ac58bbfec211e77e3ada9d36c250c9c9234d853c666d1501ccc0e2d5997c247f10985cad936ad97a741e |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,127 @@ | ||
# Copyright 1999-2018 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
|
||
EAPI=6 | ||
USE_RUBY="ruby23 ruby24 ruby25" | ||
|
||
inherit apache-module flag-o-matic multilib ruby-ng toolchain-funcs | ||
|
||
DESCRIPTION="Passenger makes deployment of Ruby on Rails applications a breeze" | ||
HOMEPAGE="https://www.phusionpassenger.com/" | ||
SRC_URI="https://s3.amazonaws.com/phusion-passenger/releases/${P}.tar.gz" | ||
|
||
LICENSE="GPL-2" | ||
SLOT="0" | ||
KEYWORDS="~amd64 ~x86" | ||
IUSE="apache2 debug" | ||
|
||
ruby_add_bdepend "dev-ruby/rake" | ||
|
||
ruby_add_rdepend " | ||
>=dev-ruby/rack-1.0.0:* | ||
>=dev-ruby/rake-0.8.1" | ||
|
||
# libev is bundled but with adapations that do not seem to be accepted | ||
# upstream, so we must use the bundled version :-( | ||
CDEPEND=" | ||
>=dev-libs/libuv-1.8.0 | ||
net-misc/curl[ssl] | ||
apache2? ( 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" | ||
|
||
want_apache2 | ||
|
||
pkg_setup() { | ||
use debug && append-flags -DPASSENGER_DEBUG | ||
depend.apache_pkg_setup | ||
} | ||
|
||
all_ruby_prepare() { | ||
epatch "${FILESDIR}"/${PN}-5.1.11-gentoo.patch | ||
eapply "${FILESDIR}"/${PN}-5.1.1-isnan.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/ s/=.*$/= '$(tc-getCXX)'/" \ | ||
-e 's/PlatformInfo.debugging_cflags//' build/basics.rb || die | ||
|
||
# Avoid fixed debugging CFLAGs. | ||
sed -e '/debugging_cflags/areturn ""' -i src/ruby_supportlib/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/phusion-passenger/agents:/usr/libexec/phusion-passenger/agents:" \ | ||
src/ruby_supportlib/phusion_passenger.rb || die | ||
sed -i -e "s:/usr/lib/phusion-passenger/agents:/usr/libexec/phusion-passenger/agents:" src/cxx_supportlib/ResourceLocator.h || die | ||
|
||
# Don't install a tool that won't work in our setup. | ||
sed -i -e '/passenger-install-apache2-module/d' src/ruby_supportlib/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 where possible | ||
rm -rf src/cxx_supportlib/vendor-copy/libuv || die "Unable to remove vendored code." | ||
|
||
# Avoid building documentation to avoid a dependency on mizuho. | ||
#sed -i -e 's/, :doc//' build/packaging.rb || die | ||
touch doc/*.html || die | ||
|
||
# Fix hard-coded use of AR | ||
sed -i -e "s/ar cru/"$(tc-getAR)" cru/" build/support/cplusplus.rb || die | ||
|
||
# Make sure apache support is not attempted with -apache2 | ||
if ! use apache2 ; then | ||
sed -i -e '/fakeroot/ s/:apache2, //' build/packaging.rb || die | ||
fi | ||
} | ||
|
||
all_ruby_compile() { | ||
if use apache2 ; then | ||
V=1 EXTRA_LDFLAGS="${LDFLAGS}" \ | ||
APXS2="${APXS}" \ | ||
HTTPD="${APACHE_BIN}" \ | ||
FS_LIBDIR='/usr/'$(get_libdir) \ | ||
USE_VENDORED_LIBUV="no" LIBUV_LIBS="-luv" \ | ||
ruby -S rake apache2 || die "rake failed" | ||
fi | ||
} | ||
|
||
each_ruby_compile() { | ||
append-flags -fno-strict-aliasing | ||
|
||
V=1 EXTRA_LDFLAGS="${LDFLAGS}" \ | ||
APXS2="${APXS}" \ | ||
HTTPD="${APACHE_BIN}" \ | ||
FS_LIBDIR='/usr/'$(get_libdir) \ | ||
USE_VENDORED_LIBUV="no" LIBUV_LIBS="-luv" \ | ||
${RUBY} -S rake native_support || die "rake failed" | ||
} | ||
|
||
all_ruby_install() { | ||
if use apache2 ; then | ||
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 | ||
fi | ||
|
||
dodoc CHANGELOG README.md | ||
} | ||
|
||
each_ruby_install() { | ||
DISTDIR="${D}" \ | ||
RUBYLIBDIR="$(ruby_rbconfig_value vendordir)" \ | ||
RUBYARCHDIR="$(ruby_rbconfig_value archdir)" \ | ||
APXS2="${APXS}" \ | ||
HTTPD="${APACHE_BIN}" \ | ||
FS_LIBDIR='/usr/'$(get_libdir) \ | ||
EXTRA_LDFLAGS="${LDFLAGS}" \ | ||
USE_VENDORED_LIBUV="no" LIBUV_LIBS="-luv" \ | ||
${RUBY} -S rake fakeroot || die "rake failed" | ||
} |