Add static library for who don't want a lot of dependecies 39/183039/2 accepted/tizen/4.0/unified/20180702.105558 submit/tizen_4.0/20180702.042309
authorSungbae Yoo <sungbae.yoo@samsung.com>
Mon, 2 Jul 2018 02:30:52 +0000 (11:30 +0900)
committerSungbae Yoo <sungbae.yoo@samsung.com>
Mon, 2 Jul 2018 02:36:35 +0000 (02:36 +0000)
Signed-off-by: Sungbae Yoo <sungbae.yoo@samsung.com>
Change-Id: Idcfd4ffe56d60c33c698fe5f2248ae2aaf59ab42

CMakeLists.txt
klay-static.pc.in [new file with mode: 0644]
packaging/klay.spec
src/CMakeLists.txt

index fccbd8642e554e1ab97e7b0009365f2b0b4ec8f1..03c57022085be5f909d1ee349192309863f60395 100755 (executable)
@@ -71,4 +71,6 @@ ADD_SUBDIRECTORY(${KLAY_SRC})
 ADD_SUBDIRECTORY(${KLAY_TEST})
 
 CONFIGURE_FILE(${PROJECT_NAME}.pc.in ${CMAKE_BINARY_DIR}/${PROJECT_NAME}.pc @ONLY)
+CONFIGURE_FILE(${PROJECT_NAME}-static.pc.in ${CMAKE_BINARY_DIR}/${PROJECT_NAME}-static.pc @ONLY)
 INSTALL(FILES ${CMAKE_BINARY_DIR}/${PROJECT_NAME}.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
+INSTALL(FILES ${CMAKE_BINARY_DIR}/${PROJECT_NAME}-static.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
diff --git a/klay-static.pc.in b/klay-static.pc.in
new file mode 100644 (file)
index 0000000..40f1b3e
--- /dev/null
@@ -0,0 +1,12 @@
+# Package Information for pkg-config
+
+prefix=@CMAKE_INSTALL_PREFIX@
+exec_prefix=@CMAKE_INSTALL_PREFIX@
+libdir=@LIB_INSTALL_DIR@
+includedir=@INCLUDE_INSTALL_DIR@
+
+Name: klay-static
+Description: Tizen Klay static library and header files
+Version: @VERSION@
+Libs: -L${libdir} -lklay-static
+Cflags: -I${includedir}/klay
index 5aa569ade8bb867d9ee6aa04b6126a2229a06cf0..4945f7353527e5593037c7cee1b51ee5923fc94c 100755 (executable)
@@ -1,3 +1,4 @@
+%define keepstatic 1
 Name:    klay
 Version: 0.0.1
 Release: 0
@@ -69,6 +70,7 @@ developing with the Klay library.
 %manifest %name.manifest
 %defattr(644,root,root,755)
 %{_libdir}/libklay.so
+%{_libdir}/*.a
 %{_libdir}/pkgconfig/*.pc
 %{_includedir}/klay
 
index d8adabde6e1b16bb8b24f0bf94f5b34d24c04087..ab1cbe29fb45a4aa861e28a047280c1326ab4dc6 100755 (executable)
@@ -64,6 +64,10 @@ ADD_LIBRARY(${PROJECT_NAME} SHARED ${KLAY_SOURCES})
 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${LIB_SOVERSION})
 SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION   ${LIB_VERSION})
 
+ADD_LIBRARY(${PROJECT_NAME}-static STATIC ${KLAY_SOURCES})
+SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES SOVERSION ${LIB_SOVERSION})
+SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES VERSION   ${LIB_VERSION})
+
 PKG_CHECK_MODULES(KLAY_DEPS REQUIRED   gio-2.0
                                                                                libxml-2.0
                                                                                sqlite3
@@ -76,6 +80,8 @@ INCLUDE_DIRECTORIES(SYSTEM    ${KLAY_INCLUDE}
 )
 
 TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${KLAY_DEPS_LIBRARIES} ${LFS_LDFLAGS} ${LFS_LIBS})
+TARGET_LINK_LIBRARIES(${PROJECT_NAME}-static ${KLAY_DEPS_LIBRARIES} ${LFS_LDFLAGS} ${LFS_LIBS})
 
 INSTALL(TARGETS        ${PROJECT_NAME}                 DESTINATION     ${LIB_INSTALL_DIR}      COMPONENT DevelopmentLibraries)
+INSTALL(TARGETS        ${PROJECT_NAME}-static  DESTINATION     ${LIB_INSTALL_DIR}      COMPONENT DevelopmentLibraries)
 INSTALL(DIRECTORY ${KLAY_INCLUDE}/             DESTINATION ${INCLUDE_INSTALL_DIR})