Build static library libctx-server.a instead of libctx-server.so 17/64617/1
authorMu-Woong Lee <muwoong.lee@samsung.com>
Mon, 4 Apr 2016 08:22:22 +0000 (17:22 +0900)
committerMu-Woong Lee <muwoong.lee@samsung.com>
Mon, 4 Apr 2016 08:22:22 +0000 (17:22 +0900)
The library is only being used by contextd, thus it does not need to be a shared object.

Change-Id: I8005d50fe12d719d7ae447215a3827d79a5382bb
Signed-off-by: Mu-Woong Lee <muwoong.lee@samsung.com>
CMakeLists.txt
packaging/context-common.spec
src/server/CMakeLists.txt
src/shared/CMakeLists.txt

index 35db32f..42cc9e2 100644 (file)
@@ -6,7 +6,8 @@ INCLUDE(FindPkgConfig)
 INCLUDE_DIRECTORIES(
        ${CMAKE_CURRENT_SOURCE_DIR}/include
 )
-ADD_DEFINITIONS(-g -O2 -Wall -fPIC -Wl,--as-needed)
+ADD_DEFINITIONS(-O2 -Wall -fPIC -fdata-sections -ffunction-sections)
+SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fPIC -Wl,--as-needed -Wl,--gc-section -Wl,--print-gc-section")
 
 # Install
 INSTALL(
index 42969b3..792884d 100644 (file)
@@ -14,6 +14,8 @@ BuildRequires: pkgconfig(dlog)
 BuildRequires: pkgconfig(capi-base-common)
 BuildRequires: pkgconfig(alarm-service)
 
+%define keepstatic 1
+
 %description
 Context-Service Shared Library
 
@@ -26,8 +28,8 @@ MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
 export   CFLAGS+=" -Wextra -Wcast-align -Wshadow -Wwrite-strings -Wswitch-default -Wno-unused-parameter"
 export CXXFLAGS+=" -Wextra -Wcast-align -Wshadow -Wwrite-strings -Wswitch-default -Wno-unused-parameter"
 
-export   CFLAGS+=" -Wno-empty-body -fno-omit-frame-pointer -fno-optimize-sibling-calls"
-export CXXFLAGS+=" -Wno-empty-body -fno-omit-frame-pointer -fno-optimize-sibling-calls"
+export   CFLAGS+=" -Wno-empty-body -fomit-frame-pointer -fno-optimize-sibling-calls"
+export CXXFLAGS+=" -Wno-empty-body -fomit-frame-pointer -fno-optimize-sibling-calls"
 
 export   CFLAGS+=" -fno-strict-aliasing -fno-unroll-loops -fsigned-char -fstrict-overflow"
 export CXXFLAGS+=" -fno-strict-aliasing -fno-unroll-loops -fsigned-char -fstrict-overflow"
@@ -76,4 +78,5 @@ Context-Service Shared Library (DEV)
 %files devel
 %defattr(-,root,root,-)
 %{_includedir}/context-service/internal/*.h
+%{_libdir}/libctx-server.a
 %{_libdir}/pkgconfig/*.pc
index 93ead06..64e3a81 100644 (file)
@@ -14,14 +14,14 @@ FOREACH(flag ${lib_pkg_CFLAGS})
    SET(LIB_EXTRA_CFLAGS "${LIB_EXTRA_CFLAGS} ${flag}")
 ENDFOREACH(flag)
 
-ADD_LIBRARY(${target} SHARED ${SRCS})
+ADD_LIBRARY(${target} STATIC ${SRCS})
 TARGET_LINK_LIBRARIES(${target} ${lib_pkg_LDFLAGS})
 SET_TARGET_PROPERTIES(${target} PROPERTIES COMPILE_FLAGS ${LIB_EXTRA_CFLAGS})
 SET_TARGET_PROPERTIES(${target} PROPERTIES COMPILE_DEFINITIONS "LOG_TAG=\"CONTEXT\"")
 SET_TARGET_PROPERTIES(${target} PROPERTIES SOVERSION ${MAJORVER})
 SET_TARGET_PROPERTIES(${target} PROPERTIES VERSION ${FULLVER})
 
-INSTALL(TARGETS ${target} DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT RuntimeLibraries)
+INSTALL(TARGETS ${target} DESTINATION ${CMAKE_INSTALL_LIBDIR})
 
 SET(PC_NAME "libcontext-server")
 SET(VERSION ${FULLVER})
index 899a9c8..34c9fb4 100644 (file)
@@ -21,7 +21,7 @@ SET_TARGET_PROPERTIES(${target} PROPERTIES COMPILE_DEFINITIONS "LOG_TAG=\"CONTEX
 SET_TARGET_PROPERTIES(${target} PROPERTIES SOVERSION ${MAJORVER})
 SET_TARGET_PROPERTIES(${target} PROPERTIES VERSION ${FULLVER})
 
-INSTALL(TARGETS ${target} DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT RuntimeLibraries)
+INSTALL(TARGETS ${target} DESTINATION ${CMAKE_INSTALL_LIBDIR})
 
 SET(PC_NAME "libcontext-shared")
 SET(VERSION ${FULLVER})