Adding support for in-place use of ProducerConsumerQueue.
[folly.git] / folly / README
1 Folly: Facebook Open-source LibrarY
2 -----------------------------------
3
4 Folly is an open-source C++ library developed and used at Facebook.
5
6 Dependencies
7 ------------
8
9 - double-conversion (http://code.google.com/p/double-conversion/)
10
11     By default, the build tooling for double-conversion does not build
12     any libraries, which folly requires.  To build the necessary libraries
13     copy folly/SConstruct.double-conversion to your double-conversion
14     source directory before building:
15
16       [double-conversion/] scons -f SConstruct.double-conversion
17
18     Then set CPPFLAGS/LDFLAGS so that folly can find your double-conversion
19     build:
20
21       [folly/] LDFLAGS=-L<double-conversion>/ CPPFLAGS=-I<double-conversion>/src/
22         configure ...
23
24 - googletest (Google C++ Testing Framework)
25
26   Grab gtest 1.6.0 from:
27   http://googletest.googlecode.com/files/gtest-1.6.0.zip
28
29   Unzip it inside of the test/ subdirectory.
30
31 - additional platform specific dependencies:
32
33   Ubuntu 12.04 64-bit
34     - g++
35     - automake
36     - autoconf
37     - libtool
38     - libboost1.46-all-dev
39     - libgoogle-glog-dev
40         This package has been removed from 12.04 -- use the one from 11.10
41     - gflags (packages need to be downloaded from below)
42         http://gflags.googlecode.com/files/libgflags-dev_2.0-1_amd64.deb
43         http://gflags.googlecode.com/files/libgflags0_2.0-1_amd64.deb
44     - scons (for double-conversion)
45
46   Fedora 17 64-bit
47     - gcc
48     - gcc-c++
49     - autoconf
50     - automake
51     - boost-devel
52     - libtool
53     - glog-devel
54     - gflags-devel
55     - scons (for double-conversion)