Modify build configures of packages: sensord, sensord-dummy 33/285933/1 accepted/tizen/unified/20221227.170627
authorJunghak Sung <jh1009.sung@samsung.com>
Thu, 22 Dec 2022 01:28:02 +0000 (10:28 +0900)
committerSangYoun Kwak <sy.kwak@samsung.com>
Thu, 22 Dec 2022 11:25:35 +0000 (20:25 +0900)
Rename project names (sensor to sensor-dummy, sensor-genuine to sensor)
since ldconfig makes cache for the genuine library as "libsensor-genuine"
instead of "libsensor" and it causes a cache mismatch on dotnet applications.
According to the project name changes, the post scripts also are modified.
At the result, the files in /usr/lib would be like below.

After install sensor-dummy
    libsensor-dummy.so
    libsensor.so.1 -> libsensor.so.4.0.54
    libsensor.so.2 -> libsensor.so.4.0.54
    libsensor.so.4 -> libsensor.so.4.0.54
    libsensor.so.4.0.54 (softlink of libsensor-dummy.so)

After install sensor
    libsensor.so.4.0.54 (overwritten by genuine libsensor.so)

Change-Id: I10fa79422cc59579b5c6c4cde25f773318eb8b66
Signed-off-by: Junghak Sung <jh1009.sung@samsung.com>
[sy.kwak: remain chsmack from sensord.spec, remove "lwipc" from DEPENDENTS of cmake(client)]
Signed-off-by: SangYoun Kwak <sy.kwak@samsung.com>
packaging/sensord.spec
src/client-dummy/CMakeLists.txt
src/client/CMakeLists.txt
src/client/sensor.pc.in [moved from src/client-dummy/sensor.pc.in with 100% similarity]

index a814089..2852d0b 100644 (file)
@@ -90,7 +90,6 @@ ln -s libsensor.so.%{version} %{buildroot}/%{_libdir}/libsensor.so.1
 
 %post
 pushd %{_libdir}
-ln -sf libsensor-genuine.so.%{version} libsensor.so.%{version}
 chsmack -a "_" libsensor.so.%{version}
 popd
 /sbin/ldconfig
@@ -100,7 +99,7 @@ echo "You need to reinstall %{name}-dummy to keep using the APIs after uninstall
 
 %files
 %manifest packaging/sensord.manifest
-%{_libdir}/libsensor-genuine.so.*
+%{_libdir}/libsensor.so.%{version}
 %{_libdir}/libsensord-shared.so
 %{_libdir}/sensor/fusion/libsensor-fusion.so
 %{_libdir}/sensor/physical/libsensor-physical.so
@@ -114,11 +113,17 @@ echo "You need to reinstall %{name}-dummy to keep using the APIs after uninstall
 
 
 %post   dummy
+pushd %{_libdir}
+ln -sf libsensor-dummy.so libsensor.so.%{version}
+chsmack -a "_" libsensor.so.%{version}
+popd
 /sbin/ldconfig
 
 %files  dummy
 %manifest packaging/sensord.manifest
+%exclude %{_libdir}/libsensor.so.%{version}
 %{_libdir}/libsensor.so.*
+%{_libdir}/libsensor-dummy.so
 %license LICENSE.APLv2
 
 
index 76d393f..919f81e 100644 (file)
@@ -1,23 +1,5 @@
 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(sensor CXX)
-
-SET(DEPENDENTS "glib-2.0 gio-2.0 dlog vconf hal-api-common hal-api-sensor")
-SET(VERSION ${FULLVER})
-SET(PREFIX ${CMAKE_INSTALL_PREFIX})
-
-SET(PC_NAME ${PROJECT_NAME})
-SET(PC_DESCRIPTION "Sensor Client library")
-SET(PC_INCLUDEDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}/sensor")
-SET(PC_REQUIRES "${DEPENDENTS}")
-SET(PC_LIBDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_LIBDIR}")
-SET(PC_LDFLAGS "-l${PROJECT_NAME}")
-
-INCLUDE(FindPkgConfig)
-PKG_CHECK_MODULES(DUMMY_PKGS REQUIRED ${DEPENDENTS})
-
-FOREACH(flag ${DUMMY_PKGS_CFLAGS})
-       SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${flag}")
-ENDFOREACH(flag)
+PROJECT(sensor-dummy CXX)
 
 SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility=hidden -fvisibility-inlines-hidden -g -fPIC")
 
@@ -30,10 +12,5 @@ FILE(GLOB_RECURSE SRCS *.cpp)
 
 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
 
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${DUMMY_PKGS_LDFLAGS})
-SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${MAJORVER})
-SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION ${FULLVER})
-
-CONFIGURE_FILE(${PROJECT_NAME}.pc.in ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_NAME}.pc @ONLY)
-INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT RuntimeLibraries)
-INSTALL(FILES ${PROJECT_NAME}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+TARGET_LINK_LIBRARIES(${PROJECT_NAME})
+INSTALL(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} NAMELINK_SKIP)
index 9131d8d..b9b7c7c 100644 (file)
@@ -1,7 +1,17 @@
 CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
-PROJECT(sensor-genuine CXX)
+PROJECT(sensor CXX)
 
-SET(DEPENDENTS "vconf glib-2.0 gio-2.0 dlog")
+SET(DEPENDENTS "vconf glib-2.0 gio-2.0 dlog hal-api-sensor")
+SET(VERSION ${FULLVER})
+SET(PREFIX ${CMAKE_INSTALL_PREFIX})
+SET(EXEC_PREFIX ${CMAKE_INSTALL_PREFIX})
+
+SET(PC_NAME ${PROJECT_NAME})
+SET(PC_DESCRIPTION "Sensor Client library")
+SET(PC_INCLUDEDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_INCLUDEDIR}/sensor")
+SET(PC_REQUIRES "${DEPENDENTS}")
+SET(PC_LIBDIR "${CMAKE_INSTALL_LIBDIR}")
+SET(PC_LDFLAGS "-l${PC_NAME}")
 
 INCLUDE(FindPkgConfig)
 PKG_CHECK_MODULES(CLIENT_PKGS REQUIRED ${DEPENDENTS})
@@ -22,7 +32,8 @@ FILE(GLOB_RECURSE SRCS *.cpp)
 ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS})
 
 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${CLIENT_PKGS_LDFLAGS} "sensord-shared")
-SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${MAJORVER})
-SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION ${FULLVER})
+SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${MAJORVER} VERSION ${FULLVER})
+INSTALL(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT RuntimeLibraries)
 
-INSTALL(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} NAMELINK_SKIP)
+CONFIGURE_FILE(${PC_NAME}.pc.in ${CMAKE_CURRENT_SOURCE_DIR}/${PC_NAME}.pc @ONLY)
+INSTALL(FILES ${PC_NAME}.pc DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)