• T
    Separate compile and link for shared library · 7d5f5aa9
    Tudor Bosman 提交于
    Summary:
    Previously, the shared library (make shared_lib) was built with only one
    compile line, compiling all .cc files and linking the shared library in
    one step. That step would often take 10+ minutes on one machine, and
    could not take advantage of multiple CPUs (it's only one invocation of
    the compiler).
    
    This commit changes the shared_lib build to compile .o files
    individually (placing the resulting .o files in the directory
    shared-objects) and then link them into the shared library at the end,
    similarly to how the java static build (jls) does it.
    
    Tested by making sure that both static and shared libraries work, and by
    making sure that "make clean" cleans up the shared-objects directory.
    Closes https://github.com/facebook/rocksdb/pull/2165
    
    Differential Revision: D4897121
    
    Pulled By: yiwu-arbug
    
    fbshipit-source-id: 9811e043d1c01e10503593f3489d186c786ee7d7
    7d5f5aa9
Makefile 53.4 KB