Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
tag: release-2.1.1
Fetching contributors…

Cannot retrieve contributors at this time

90 lines (65 sloc) 2.331 kb
= Developers information
== Required software
The tests need the following software installed:
* All the usual Phusion Passenger dependencies.
* Ruby on Rails 2.0.1 (*exactly* 2.0.1)
* rspec >= 1.1.2
* mime-types >= 1.15
The following software is optional:
* RCov, for code coverage
* RDoc, for generating HTML Ruby API documentation
* Doxygen, for generating HTML C++ API documentation
* dot (part of Graphviz), for generating diagrams in HTML API documentation
* The font "Bitstream Vera Sans", used in the class diagrams. See http://www.gnome.org/fonts
* AsciiDoc >= 8.2.5, for converting various doc/*.txt documents to HTML
== Compiling Phusion Passenger
Run the following command to compile everything:
rake
== Directory structure
The most important directories are:
[ lib/phusion_passenger ]
The source code for the spawn server, which is written in Ruby.
[ ext/phusion_passenger ]
Native extensions for Ruby, used by the spawn server.
[ ext/apache2 ]
The Phusion Passenger Apache 2 module (mod_passenger).
[ bin ]
Executables.
[ doc ]
Various documentation.
[ test ]
Unit tests and integration tests.
[ test/support ]
Support/utility code, used in the tests.
[ test/stub ]
Stub code, used in the tests.
Less important directories:
[ lib/rake ]
Rake tasks.
[ ext/boost ]
A stripped-down and customized version of the Boost C++ library
(www.boost.org).
[ ext/oxt ]
The "OS eXtensions for boosT" library, which provides various important
functionality necessary for writing robust server software. It provides
things like support for interruptable system calls and portable backtraces
for C++. Boost was modified to make use of the functionality provided by OXT.
[ benchmark ]
Benchmark tools.
[ misc ]
Miscellaneous tools.
== Tests
Run all tests:
rake
Run just the tests for the Apache 2 module:
rake test:apache2
Run just the unit tests for the Ruby spawn server:
rake test:ruby
Run just the integration tests:
rake test:integration
*Note*: some tests, such as the ones that test privilege lowering, require
root privileges. Those will only be run if Rake is run as root.
== Documentation
Various developer documents can be found in 'doc/*.html'.
The Ruby part's API reference is located in 'doc/rdoc/'.
The C++ part's API reference is located in 'doc/cxxapi/'.
Jump to Line
Something went wrong with that request. Please try again.