x86_64-pc-linux-gnu-g++-4.9.1 -Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu -pthread -shared -Wl,-soname -Wl,libleveldb.so.1 -march=k8-sse3 -mcx16 -msahf --param l1-cache-size=64 --param l1-cache-line-size=64 --param l2-cache-size=512 -O2 -pipe -frecord-gcc-switches -I. -I./include -pthread -DOS_LINUX -DLEVELDB_PLATFORM_POSIX -DNDEBUG -fPIC db/builder.cc db/c.cc db/dbformat.cc db/db_impl.cc db/db_iter.cc db/filename.cc db/log_reader.cc db/log_writer.cc db/memtable.cc db/repair.cc db/table_cache.cc db/version_edit.cc db/version_set.cc db/write_batch.cc table/block_builder.cc table/block.cc table/filter_block.cc table/format.cc table/iterator.cc table/merger.cc table/table_builder.cc table/table.cc table/two_level_iterator.cc util/arena.cc util/bloom.cc util/cache.cc util/coding.cc util/comparator.cc util/crc32c.cc util/env.cc util/env_posix.cc util/filter_policy.cc util/hash.cc util/histogram.cc util/logging.cc util/options.cc util/status.cc port/port_posix.cc -o libleveldb.so.1.9 That's kinda lot of C++ that would be much better compiled a-file-at-one-time. Especially with slow machines relying on distcc.
compiling multiple files in one go also allows for better optimization in the final object either way, this would be something for upstream to decide: https://github.com/google/leveldb/issues