diff --git a/build.sh b/build.sh index 6d1485fd9eb992906460298e7d8d1d770109e069..40e362ebd71ad3e7a65e613bd28a35bacdc9cb8c 100755 --- a/build.sh +++ b/build.sh @@ -116,7 +116,7 @@ function build do_build "$@" -DCMAKE_BUILD_TYPE=Debug ;; xrpm) - do_build "$@" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DOB_USE_CCACHE=OFF -DOB_COMPRESS_DEBUG_SECTIONS=ON -DOB_STATIC_LINK_LGPL_DEPS=OFF + do_build "$@" -DOB_BUILD_LIBOBLOG=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DOB_USE_CCACHE=OFF -DOB_COMPRESS_DEBUG_SECTIONS=ON -DOB_STATIC_LINK_LGPL_DEPS=OFF ;; *) BUILD_ARGS=(debug "${BUILD_ARGS[@]}") diff --git a/cmake/RPM.cmake b/cmake/RPM.cmake index edf133d2eca16c37c24c44e70429b66ad2c8b7f9..5699edc71e30e684618b88b0cea5413633a8ca62 100644 --- a/cmake/RPM.cmake +++ b/cmake/RPM.cmake @@ -50,16 +50,10 @@ install(FILES ## oceanbase-devel # liboblog.so and libob_sql_proxy_parser_static.a -install(PROGRAMS - ${CMAKE_BINARY_DIR}/src/liboblog/src/liboblog.so - ${CMAKE_BINARY_DIR}/src/liboblog/src/liboblog.so.1 - ${CMAKE_BINARY_DIR}/src/liboblog/src/liboblog.so.1.0.0 +set(OCEANBASE_DEVEL_LIB_FILES ${CMAKE_BINARY_DIR}/src/sql/parser/libob_sql_proxy_parser_static.a - DESTINATION lib - COMPONENT devel) - -install(FILES - src/liboblog/src/liboblog.h +) +set(OCEANBASE_DEVEL_INCLUDE_FILES deps/oblib/src/lib/ob_errno.h deps/oblib/src/common/sql_mode/ob_sql_mode.h src/sql/parser/ob_item_type.h @@ -67,13 +61,42 @@ install(FILES src/sql/parser/parse_malloc.h src/sql/parser/parser_proxy_func.h src/sql/parser/parse_node.h - DESTINATION include - COMPONENT devel) +) +set(OCEANBASE_DEVEL_BIN_FILES "") + +if (OB_BUILD_LIBOBLOG) + # lib + list(APPEND OCEANBASE_DEVEL_LIB_FILES ${CMAKE_BINARY_DIR}/src/liboblog/src/liboblog.so) + list(APPEND OCEANBASE_DEVEL_LIB_FILES ${CMAKE_BINARY_DIR}/src/liboblog/src/liboblog.so.1) + list(APPEND OCEANBASE_DEVEL_LIB_FILES ${CMAKE_BINARY_DIR}/src/liboblog/src/liboblog.so.1.0.0) + + # include + list(APPEND OCEANBASE_DEVEL_INCLUDE_FILES src/liboblog/src/liboblog.h) + + # bin + list(APPEND OCEANBASE_DEVEL_BIN_FILES ${CMAKE_BINARY_DIR}/src/liboblog/tests/oblog_tailf) +endif() + +set(CPACK_RPM_DEVEL_DEFAULT_USER "root") +set(CPACK_RPM_DEVEL_DEFAULT_GROUP "root") install(PROGRAMS - ${CMAKE_BINARY_DIR}/src/liboblog/tests/oblog_tailf - DESTINATION bin - COMPONENT devel) + ${OCEANBASE_DEVEL_LIB_FILES} + DESTINATION /usr/lib + COMPONENT devel +) + +install(FILES + ${OCEANBASE_DEVEL_INCLUDE_FILES} + DESTINATION /usr/include + COMPONENT devel +) + +install(PROGRAMS + ${OCEANBASE_DEVEL_BIN_FILES} + DESTINATION /usr/bin + COMPONENT devel +) ## oceanbase-libs install(PROGRAMS @@ -87,6 +110,9 @@ install(PROGRAMS ) # utils +set(CPACK_RPM_UTILS_DEFAULT_USER "root") +set(CPACK_RPM_UTILS_DEFAULT_GROUP "root") + install(PROGRAMS ${CMAKE_BINARY_DIR}/tools/ob_admin/ob_admin ${CMAKE_BINARY_DIR}/tools/ob_error/src/ob_error diff --git a/src/liboblog/CMakeLists.txt b/src/liboblog/CMakeLists.txt index 5c1296de7d86644f6661547e03d6c64b1b604ef3..5688f216bfb3b26358084a067eee97b23f25624e 100644 --- a/src/liboblog/CMakeLists.txt +++ b/src/liboblog/CMakeLists.txt @@ -2,11 +2,11 @@ message(STATUS "OB_BUILD_LIBOBLOG ${OB_BUILD_LIBOBLOG}") if (OB_BUILD_LIBOBLOG) find_package(Git QUIET) if (GIT_FOUND) - execute_process(COMMAND ${GIT_EXECUTABLE} submodule update --init + execute_process(COMMAND ${GIT_EXECUTABLE} submodule update --remote WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} RESULT_VARIABLE GIT_SUBMOD_RESULT) if (NOT GIT_SUBMOD_RESULT EQUAL "0") - message(FATAL_ERROR "git submodule update --init failed with ${GIT_SUBMOD_RESULT}, please checkout submodules") + message(FATAL_ERROR "git submodule update --remote failed with ${GIT_SUBMOD_RESULT}, please checkout submodules") endif() add_subdirectory(${PROJECT_SOURCE_DIR}/deps/logmessage ${PROJECT_BINARY_DIR}/deps/logmessage EXCLUDE_FROM_ALL) add_definitions(-D_GLIBCXX_USE_CXX11_ABI=0)