Make so versioning forward compatibile 82/293582/1 accepted/tizen_6.5_unified tizen_6.5 accepted/tizen/6.5/unified/20230612.123200 accepted/tizen/7.0/unified/20230606.142246 accepted/tizen/8.0/unified/20231005.093600 accepted/tizen/unified/20230606.140933 tizen_8.0_m2_release
authorKrzysztof Jackiewicz <k.jackiewicz@samsung.com>
Wed, 31 May 2023 08:45:14 +0000 (10:45 +0200)
committerKrzysztof Jackiewicz <k.jackiewicz@samsung.com>
Wed, 31 May 2023 08:45:14 +0000 (10:45 +0200)
The commit 317ef5442d048a5b0701748aaae1fd92e6169d97 modified the so
versioning while keeping backward compatibility.

It turns out that we also have to keep it forward compatible as apps
built with latest dcm may be installed on older images. Currently it's
not possible as the lib*.so.0 used by newly built apps is absent on old
images.

This commit sets the SO VERSION to 2.0 to provide forward compatibility.

Old dcm:
- main rpm: lib*.so.2.0
- devel rpm: lib*.so -> lib*.so.2.0

Backward compatible dcm:
- main rpm:
  - lib*.so.2.1.2
  - lib*.so.0 -> lib*.so.2.1.2
  - lib*.so.2.0 -> lib*.so.2.1.2 (link added manually in spec)
- devel rpm: lib*.so -> lib*.so.0

Forward & backward compatible dcm (this commit):
- main rpm:
  - lib*.so.2.1.2
  - lib*.so.2.0 -> lib*.so.2.1.2
- devel rpm: lib*.so -> lib*.so.2.0

Change-Id: I1bec54fc62eecec56e54f64e3acd6bb1b7217336

packaging/device-certificate-manager.spec
src/dcm-client/CMakeLists.txt

index f9c689e0b057663d8338b30fab852bfd1e20c0e0..d8cac6b30ffc5defc8dffa369a2b85232ec45d41 100644 (file)
@@ -99,7 +99,6 @@ make %{?jobs:-j%jobs}
 %install
 %make_install
 %install_service sockets.target.wants device-certificate-manager.socket
-ln -s lib%{name}.so.%{version} %{buildroot}%{_libdir}/lib%{name}.so.2.0
 
 %post
 /sbin/ldconfig
index 3274165ede82b26261678bc56364b19e56f46d4f..a5b11bd58f1a4a62dd611f6041fafa7ab2af4edb 100644 (file)
@@ -35,7 +35,7 @@ SET(TARGET_CLIENT "device-certificate-manager")
 SET(TARGET_CLIENT_EXT "device-certificate-manager-ext")
 
 SET(_LIB_VERSION_ "${PROJECT_VERSION}")
-SET(_LIB_SOVERSION_ "0")
+SET(_LIB_SOVERSION_ "2.0")
 
 ADD_LIBRARY(${TARGET_CLIENT}
        SHARED