mirror of https://github.com/facebook/rocksdb.git
7a23e4d8ca
This commit adds two new targets to the Makefile: rocksdb.cc and rocksdb.h These files, when combined with the c.h header, are a self-contained RocksDB source distribution called an amalgamation. (The name comes from SQLite's, which is similar in concept.) The main benefit of an amalgamation is that it's very easy to drop into a new project. It also compiles faster compared to compiling individual source files and potentially gives the compiler more opportunity to make optimizations since it can see all functions at once. rocksdb.cc and rocksdb.h are generated by a new script, amalgamate.py. A detailed description of how amalgamate.py works is in a comment at the top of the file. There are also some small changes to existing files to enable the amalgamation: * Use quotes for includes in unity build * Fix an old header inclusion in util/xfunc.cc * Move some includes outside ifdef in util/env_hdfs.cc * Separate out tool sources in Makefile so they won't be included in unity.cc * Unity build now produces a static library Closes #733 |
||
---|---|---|
.. | ||
amalgamate.py | ||
build_detect_platform | ||
dockerbuild.sh | ||
fb_compile_mongo.sh | ||
fbcode_config.sh | ||
fbcode_config4.8.1.sh | ||
format-diff.sh | ||
make_new_version.sh | ||
make_package.sh | ||
regression_build_test.sh | ||
rocksdb-lego-determinator | ||
run_ci_db_test.ps1 | ||
version.sh |