• Luca Boccassi's avatar
    Problem: CMake build uses library version as the ABI version · abeaba15
    Luca Boccassi authored
    Solution: set SOVERSION in CMakeLists to match the SONAME generated
    by libtool so that there is no mismatch between the output of the
    *NIX build systems.
    
    Before:
    $ ls -l
    total 2696
    lrwxrwxrwx 1 luca luca      15 Dec  1 22:36 libzmq.so -> libzmq.so.4.2.0
    lrwxrwxrwx 1 luca luca      15 Dec  1 22:36 libzmq.so.4.2.0 -> libzmq.so.4.2.1
    -rwxr-xr-x 1 luca luca  906168 Dec  1 22:36 libzmq.so.4.2.1
    $ readelf -d libzmq.so.4.2.1 | grep SONAME
     0x000000000000000e (SONAME)    Library soname: [libzmq.so.4.2.0]
    
    After:
    $ ls -l
    total 2700
    lrwxrwxrwx 1 luca luca      15 Dec  1 22:31 libzmq.so -> libzmq.so.5.1.0
    -rwxr-xr-x 1 luca luca  906168 Dec  1 22:31 libzmq.so.4.2.1
    lrwxrwxrwx 1 luca luca      15 Dec  1 22:31 libzmq.so.5.1.0 -> libzmq.so.4.2.1
    $ readelf -d libzmq.so.4.2.1 | grep SONAME
     0x000000000000000e (SONAME)    Library soname: [libzmq.so.5.1.0]
    abeaba15
CMakeLists.txt 31 KB