Adding a unit test for HHWheelTimer exercising the default timeout functionality.
[folly.git] / README.md
index 7225d474c102346362129f2fcdbc16249fcb643d..fb6c124331f6fa2f94ac671ed7fd3046c721bdbf 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-Folly: Facebook Open-source LibrarY
+Folly: Facebook Open-source Library
 -----------------------------------
 
 Folly is an open-source C++ library developed and used at Facebook.
@@ -18,6 +18,13 @@ Please download googletest from
 https://googletest.googlecode.com/files/gtest-1.7.0.zip and unzip it in the
 folly/test subdirectory.
 
+Ubuntu 12.04
+------------
+
+This release is old, requiring many upgrades. However, since Travis CI runs
+on 12.04, `folly/build/deps_ubuntu_12.04.sh` is provided, and upgrades all
+the required packages.
+
 Ubuntu 13.10
 ------------
 
@@ -67,20 +74,61 @@ In the folly directory, run
   sudo make install
 ```
 
-OS X
+OS X (Homebrew)
 ----
-There is a bootstrap script if you use Homebrew (http://brew.sh/). At the time
-of writing (OS X Yosemite 10.10.1) the default compiler (clang) has some
-issues building, but gcc 4.9.2 from Homebrew works fine. (This is taken care
-of by the bootstrap script.)
+folly is available as a Formula and releases may be built via `brew install folly`.
+
+You may also use `folly/build/bootstrap-osx-homebrew.sh` to build against `master`:
 
 ```
   cd folly
-  ./bootstrap-osx-homebrew.sh
+  ./build/bootstrap-osx-homebrew.sh
   make
   make check
 ```
 
+OS X (MacPorts)
+----
+Install the required packages from MacPorts:
+
+```
+  sudo port install \
+    autoconf \
+    automake \
+    boost \
+    gflags \
+    git \
+    google-glog \
+    libevent \
+    libtool \
+    lz4 \
+    lzma \
+    scons \
+    snappy \
+    zlib
+```
+
+Download and install double-conversion:
+
+```
+  git clone https://github.com/google/double-conversion.git
+  cd double-conversion
+  cmake -DBUILD_SHARED_LIBS=ON .
+  make
+  sudo make install
+```
+
+Download and install folly with the parameters listed below:
+
+```
+  git clone https://github.com/facebook/folly.git
+  cd folly/folly
+  autoreconf -ivf
+  ./configure CPPFLAGS="-I/opt/local/include" LDFLAGS="-L/opt/local/lib"
+  make
+  sudo make install
+```
+
 Other Linux distributions
 -------------------------
 
@@ -91,13 +139,13 @@ Other Linux distributions
 
   [double-conversion/] `ln -s src double-conversion`
 
-  [folly/] `./configure LDFLAGS=-L$DOUBLE_CONVERISON_HOME/ CPPFLAGS=-I$DOUBLE_CONVERISON_HOME/`
+  [folly/] `./configure LDFLAGS=-L$DOUBLE_CONVERSION_HOME/ CPPFLAGS=-I$DOUBLE_CONVERSION_HOME/`
 
-  [folly/] `LD_LIBRARY_PATH=$DOUBLE_CONVERISON_HOME/ make`
+  [folly/] `LD_LIBRARY_PATH=$DOUBLE_CONVERSION_HOME/ make`
 
 - additional platform specific dependencies:
 
-  Fedora 17 64-bit
+  Fedora 21 64-bit
     - gcc
     - gcc-c++
     - autoconf
@@ -111,4 +159,7 @@ Other Linux distributions
     - zlib-devel
     - glog-devel
     - gflags-devel
-    - scons (for double-conversion)
+    - scons
+    - double-conversion-devel
+    - openssl-devel
+    - libevent-devel