Class: Cxxproject::OsxSharedLibs
- Inherits:
-
SharedLibsHelper
- Object
- SharedLibsHelper
- Cxxproject::OsxSharedLibs
- Defined in:
- lib/cxxproject/buildingblocks/shared_libs_helper.rb
Instance Method Summary collapse
- #calc(linker, bb) ⇒ Object
-
#get_basic_name(linker, bb) ⇒ Object
For :major=>A, minor=>1.0.1, compatibility=>1.0.0 basic is 'libfoo.A.so'.
- #get_version_suffix(linker, bb) ⇒ Object
-
#post_link_hook(linker, bb) ⇒ Object
Some symbolic links ln -s foo.dylib foo.A.dylib.
Methods inherited from SharedLibsHelper
Instance Method Details
#calc(linker, bb) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/cxxproject/buildingblocks/shared_libs_helper.rb', line 14 def calc(linker, bb) flags = ['-install_name', bb.get_output_name(linker)] if bb.compatibility != nil flags << '-compatibility_version' flags << bb.compatibility end if bb.minor != nil flags << '-current_version' flags << bb.minor end flags end |
#get_basic_name(linker, bb) ⇒ Object
For :major=>A, minor=>1.0.1, compatibility=>1.0.0 basic is 'libfoo.A.so'
28 29 30 31 32 33 |
# File 'lib/cxxproject/buildingblocks/shared_libs_helper.rb', line 28 def get_basic_name(linker, bb) prefix = bb.get_output_prefix(linker) name = bb.name dylib = bb.shared_suffix linker return "#{prefix}#{name}#{dylib}" end |
#get_version_suffix(linker, bb) ⇒ Object
43 44 45 |
# File 'lib/cxxproject/buildingblocks/shared_libs_helper.rb', line 43 def get_version_suffix(linker, bb) bb.major ? ".#{bb.major}" : '' end |
#post_link_hook(linker, bb) ⇒ Object
Some symbolic links ln -s foo.dylib foo.A.dylib
38 39 40 41 |
# File 'lib/cxxproject/buildingblocks/shared_libs_helper.rb', line 38 def post_link_hook(linker, bb) basic_name = get_basic_name(linker, bb) symlink_lib_to(basic_name, bb) end |