Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 521356 - dev-libs/leveldb: compiles multiple files with one gcc call
Summary: dev-libs/leveldb: compiles multiple files with one gcc call
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal QA
Assignee: Johan Bergström
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-08-28 09:51 UTC by Michał Górny
Modified: 2015-02-21 18:30 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2014-08-28 09:51:47 UTC
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.
Comment 1 SpanKY gentoo-dev 2015-02-21 18:30:58 UTC
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