Update readme, structure and formatting #25

Merged
merged 6 commits into from Aug 6, 2012
View
@@ -1,113 +0,0 @@
-Cherokee Web Server
-===================
-
-Web site
---------
- http://www.cherokee-project.com/
-
-
-License
--------
- Cherokee is released under GPL v2. Read the COPYING file for more
- information.
-
-
-Mailing lists
--------------
- There are a few mailing lists available. Please, do not hesitate to
- subscribe to any on them:
-
- http://lists.cherokee-project.com/
-
- This is the main mailing list, where questions are sent and general
- discussion takes place.
-
- There are also a few technical mailing lists. Developers and package
- maintainers usually subscribe to these mailing lists as well:
-
- http://lists.cherokee-project.com/listinfo/cherokee-dev
- http://lists.cherokee-project.com/listinfo/cherokee-commits
-
- The mailing lists' archives are available at:
-
- http://lists.cherokee-project.com/pipermail/cherokee/
-
-
-IRC channel
------------
- irc.freenode.net, channel #cherokee
-
-
-Building from a tar.gz file
----------------------------
- Run ./configure, with some options if you wish. The standard options
- are documented in the INSTALL file. The only interesting ones are
- the usual --prefix=/usr, --localstatedir=/var and --sysconfdir=/etc
-
- Do "make", and then do "make install" (possibly as root if the
- destination permissions require that).
-
- That's all.
-
-
-Building from the repository
-----------------------------
- Check out the code from Github, using e.g.
-
- git clone http://github.com/cherokee/webserver.git
-
- cd into the source directory and run ./autogen.sh to setup the
- environment (you need the standard autoconf tools to do so).
-
- Then, continue with the following instructions...
-
-
-FAQ
----
- Here is a list of the most frequently asked questions:
-
- How to compile it
- ------------------
- ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
- make
-
- How to create dynamic modules
- -----------------------------
- It's the default way.
-
- How to configure the module xyz to be linked statically
- -------------------------------------------------------
- ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-static-module=xyz
-
- How to build everyhing statically
- ---------------------------------
- ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-static-module=all
-
- How to create a self signed certificate for TLS
- -----------------------------------------------
- openssl req -days 1000 -new -x509 -nodes -out /etc/cherokee/ssl/cherokee.pem -keyout /etc/cherokee/ssl/cherokee.pem
-
- How to compile it on Windows
- ----------------------------
- ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-static-module=all --enable-static --enable-shared=no --enable-beta --enable-trace
-
- How to build a MacOS X binary package
- -----------------------------------
- ./autogen.sh --prefix=/usr/local --with-wwwroot=/Library/WebServer/Documents --with-wwwuser=www --with-wwwgroup=www --with-mysql=no --with-ffmpeg=no --with-ldap=no --enable-beta
- make -j8
- packages/osx/build.py
-
- Development
- -----------
- ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-static-module=all --enable-static --enable-shared=no --with-mysql=no --with-ffmpeg=no --with-ldap=no --enable-beta --enable-trace --enable-backtraces --enable-maintainer-mode
- make CFLAGS="-ggdb3 -O0" -j8
-
- How to cross compile the Win32 version
- --------------------------------------
- From Linux: http://alobbs.com/news/1201
- From MacOS: http://alobbs.com/news/1299
- From Win32: http://unixwars.com/2008/07/17/c/
-
---
-Alvaro Lopez Ortega
-alvaro@alobbs.com
View
@@ -0,0 +1,194 @@
+Cherokee Web Server
+===================
+
+Web site
+--------
+
+Visit our main website for the latest updates: http://www.cherokee-project.com/
+
+Compiling from source
+---------------------
+
+Building from the repository
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+To build from the repository, you will require ``autoconf``, ``automake``, and
+``libtool`` tools to be available, typically available on your distribution
+either by default or by running the following on Debian-based systems::
+
+ sudo apt-get install autoconf automake libtool
+
+or, for Yum-based systems, such as RedHat, CentOS or Fedora::
+
+ sudo yum install autoconf automake libtool
+
+To check out the code from GitHub, including all dependencies that are
+specified as Git submodules, do the following::
+
+ git clone --recursive http://github.com/cherokee/webserver.git
+
+or, if using a version of Git < 1.6.5, run::
+
+ git clone http://github.com/cherokee/webserver.git
+ git submodule update --init
+
+Once cloned, ``cd`` into the resulting source directory and run
+``./autogen.sh`` to set up the environment and generate ``./configure``::
+
+ cd webserver
+ ./autogen.sh [options]
+ make
+ make install
+
+``./autogen.sh`` will accept any optional parameters otherwise typically passed
+to ``./configure``; in doing so you can avoid needing to run ``./configure``
+separately.
+
+Several examples of using ``./autogen.sh`` follow shortly in the
+`Frequently Asked Questions (FAQ)`_ section.
+
+Building from a tar.gz file
+^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+After downloading (likely from http://www.cherokee-project.com/downloads.html)
+and extracting, you should run ``./configure``, with options as appropriate.
+The standard options are documented in the ``INSTALL`` file. Typically,
+the most interesting options are:
+
+* the usual ``--prefix=/usr``
+* ``--localstatedir=/var``
+* ``--sysconfdir=/etc``
+
+After running ``./configure``, issues the ``make`` command, and then ``make
+install`` (excuting this last command as root if the destination permissions
+require that).
+
+Tying this all together will result in commands like the following::
+
+ wget http://www.cherokee-project.com/download/trunk/cherokee-latest-snapshot.tar.gz
+ tar xf cherokee-latest-snapshot.tar.gz
+ cd cherokee-latest-snapshot
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
+ make
+ sudo make install
+
+The exact options passed to ``./configure`` can vary based upon your
+configuration.
+
+
+License
+-------
+
+Cherokee is released under GPL v2. Read the ``COPYING`` file for more
+information.
+
+
+Mailing lists
+-------------
+
+There are several mailing lists available for Cherokee and they are listed
+at:
+
+ http://lists.cherokee-project.com/
+
+The main mailing list, where questions should be sent and general
+discussion takes place, is:
+
+ http://lists.cherokee-project.com/listinfo/cherokee
+
+There are also a few technical mailing lists. Developers and package
+maintainers should subscribe to these mailing lists as well as the main mailing
+list:
+
+ http://lists.cherokee-project.com/listinfo/cherokee-dev
+
+ http://lists.cherokee-project.com/listinfo/cherokee-commits
+
+The mailing lists' archives are available at:
+
+ http://lists.cherokee-project.com/pipermail/cherokee/
+
+Don't hesitate to subscribe and contribute to any of the mailing lists!
+
+
+IRC channel
+-----------
+
+Communicate with the Cherokee community via `IRC
+<irc://irc.freenode.net/#cherokee>`_:
+
+ irc.freenode.net, channel #cherokee
+
+
+Frequently Asked Questions (FAQ)
+--------------------------------
+
+Here is a list of the most frequently asked questions regarding
+compilation and similar topics:
+
+How to compile it
+^^^^^^^^^^^^^^^^^
+
+::
+
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
+ make
+
+How to create dynamic modules
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+Modules are created dynamically by default.
+
+How to configure the module xyz to be linked statically
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+::
+
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-static-module=xyz
+
+How to build everyhing statically
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+::
+
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-static-module=all
+
+
+How to compile it on Windows
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+::
+
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-static-module=all --enable-static --enable-shared=no --enable-beta --enable-trace
+
+How to build a MacOS X binary package
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+::
+
+ ./autogen.sh --prefix=/usr/local --with-wwwroot=/Library/WebServer/Documents --with-wwwuser=www --with-wwwgroup=www --with-mysql=no --with-ffmpeg=no --with-ldap=no --enable-beta
+ make -j8
+ packages/osx/build.py
+
+Development
+^^^^^^^^^^^
+
+::
+
+ ./autogen.sh --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-static-module=all --enable-static --enable-shared=no --with-mysql=no --with-ffmpeg=no --with-ldap=no --enable-beta --enable-trace --enable-backtraces --enable-maintainer-mode
+ make CFLAGS="-ggdb3 -O0" -j8
+
+How to cross compile the Win32 version
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+* From Linux: http://alobbs.com/news/1201
+* From MacOS: http://alobbs.com/news/1299
+* From Win32: http://unixwars.com/2008/07/17/c/
+
+How to create a self signed certificate for TLS
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+::
+
+ openssl req -days 1000 -new -x509 -nodes -out /etc/cherokee/ssl/cherokee.pem -keyout /etc/cherokee/ssl/cherokee.pem
+
@@ -32,13 +32,23 @@ Finally, if you are a developer or simply want to test out the bleeding edge
version, you can access our Git repository. Be advised, this is the
development branch, so use it at your own risk!
-To download simply use:
+To take a copy of our source code repository, simply use:
+
+---------------------------------------------------------------------------
+git clone --recursive https://github.com/cherokee/webserver.git
+---------------------------------------------------------------------------
+
+This will also retrieve the relevant Git submodules we use for this project.
+If you are using a version of Git that is earlier than version 1.6.5, then
+you will need to use the following commands:
---------------------------------------------------------------------------
git clone https://github.com/cherokee/webserver.git
+cd webserver
+git submodule update --init
---------------------------------------------------------------------------
-You can also download a package with the latest GIT contents:
+You can also download a package with the latest contents of the Git repository:
---------------------------------------------------------------------------
wget https://github.com/cherokee/webserver/zipball/dev
Oops, something went wrong. Retry.