title: what are bazel cc_library SONAME rules?
body: <p>I use bazel to build a so library using <code>cc_library</code>, and then use <code>cc_binary</code> to deps on it.
  but seems bazel change the name of the so library.
  below is an example by <code>readelf -d bazel-bin/cyber/mainboard</code></p>
  <pre><code> 0x0000000000000001 (NEEDED)             Shared library: [libstdc++.so.6]
   0x0000000000000001 (NEEDED)             Shared library: [libm.so.6]
   0x0000000000000001 (NEEDED)             Shared library: [libcyber_Slibcyber_Ucore.so]
   0x0000000000000001 (NEEDED)             Shared library: [libcyber_Sclass_Uloader_Slibclass_Uloader_Umanager.so]
   0x0000000000000001 (NEEDED)             Shared library: [libcyber_Scomponent_Slibtimer_Ucomponent.so]
   0x0000000000000001 (NEEDED)             Shared library: [libcyber_Sclass_Uloader_Slibclass_Uloader.so]
   0x0000000000000001 (NEEDED)             Shared library: [libcyber_Slibinit.so]
   0x0000000000000001 (NEEDED)             Shared library: [libcyber_Sproto_Slibclock_Uproto.so]
  </code></pre>
  <p>Because I want to export the software and package it as a DEB file, I need more general library files. So my question is how can I change the so library name <code>libcyber_Slibcyber_Ucore.so</code> to <code>libcyber_cyber_core.so</code>? Why bazel use such SONAME rule?</p>