From 039917f9793abfaa2cf131aaaf40f96bc4eb70ac Mon Sep 17 00:00:00 2001 From: wenxingsen Date: Tue, 22 Nov 2022 02:37:54 +0000 Subject: [PATCH] fix make DESTDIR=./ install problem --- CMakeLists.txt | 18 +++++++++++++++ build.sh | 2 +- cmake/RPM.cmake | 61 ++++++++++++++++++++++++------------------------- 3 files changed, 49 insertions(+), 32 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index e01248139..63b0e716f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -118,6 +118,24 @@ cmake_dependent_option( "NOT OB_BUILD_RPM" OFF) option(OB_BUILD_TEST "" OFF) +# OB_BUILD_RPM => build sql proxy parser +cmake_dependent_option( + OB_BUILD_LIBOB_SQL_PROXY_PARSER "Build lib_sql_proxy_parser" OFF + "NOT OB_BUILD_RPM" ON +) + +# OB_BUILD_RPM => build OB_BUILD_LIBOBTABLE +cmake_dependent_option( + OB_BUILD_LIBOBTABLE "Build liboblog" OFF + "NOT OB_BUILD_RPM" ON +) + +# OB_BUILD_RPM => build OB_BUILD_OBADMIN +cmake_dependent_option( + OB_BUILD_OBADMIN "Build ob_admin" OFF + "NOT OB_BUILD_RPM" ON +) + include(CTest) if (OB_BUILD_UNITTEST) add_subdirectory(unittest) diff --git a/build.sh b/build.sh index 2e64aad78..e94fa2c88 100755 --- a/build.sh +++ b/build.sh @@ -198,7 +198,7 @@ function build ;; xrpm) STATIC_LINK_LGPL_DEPS_OPTION=OFF - do_build "$@" -DCMAKE_BUILD_TYPE=RelWithDebInfo -DOB_USE_LLD=$LLD_OPTION -DENABLE_FATAL_ERROR_HANG=OFF -DENABLE_AUTO_FDO=ON -DOB_STATIC_LINK_LGPL_DEPS=$STATIC_LINK_LGPL_DEPS_OPTION + do_build "$@" -DOB_BUILD_RPM=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DOB_USE_LLD=$LLD_OPTION -DENABLE_FATAL_ERROR_HANG=OFF -DENABLE_AUTO_FDO=ON -DOB_STATIC_LINK_LGPL_DEPS=$STATIC_LINK_LGPL_DEPS_OPTION ;; xenable_smart_var_check) do_build "$@" -DCMAKE_BUILD_TYPE=Debug -DOB_USE_LLD=$LLD_OPTION -DENABLE_SMART_VAR_CHECK=ON -DOB_ENABLE_AVX2=ON diff --git a/cmake/RPM.cmake b/cmake/RPM.cmake index 58f76dd53..55abea83e 100644 --- a/cmake/RPM.cmake +++ b/cmake/RPM.cmake @@ -75,7 +75,7 @@ install( COMPONENT server) ## oceanbase-cdc -if (NOT OB_SO_CACHE) +if (NOT OB_SO_CACHE AND OB_BUILD_CDC) include(GNUInstallDirs) install( TARGETS obcdc obcdc_tailf @@ -103,11 +103,13 @@ install( endif() ## oceanbase-sql-parser -install(PROGRAMS - ${CMAKE_BINARY_DIR}/src/sql/parser/libob_sql_proxy_parser_static.a - DESTINATION lib - COMPONENT sql-parser - ) +if (OB_BUILD_LIBOB_SQL_PROXY_PARSER) + install(PROGRAMS + ${CMAKE_BINARY_DIR}/src/sql/parser/libob_sql_proxy_parser_static.a + DESTINATION lib + COMPONENT sql-parser + ) +endif() install(FILES src/objit/include/objit/common/ob_item_type.h @@ -119,13 +121,6 @@ install(FILES DESTINATION include COMPONENT sql-parser) -## oceanbase-sql-parser -install(PROGRAMS - ${CMAKE_BINARY_DIR}/src/sql/parser/libob_sql_proxy_parser_static.a - DESTINATION lib - COMPONENT sql-parser - ) - install(FILES src/objit/include/objit/common/ob_item_type.h deps/oblib/src/common/sql_mode/ob_sql_mode.h @@ -296,20 +291,22 @@ install(FILES COMPONENT table) install(FILES - src/libtable//examples/ob_pstore_example.cpp - src/libtable//examples/ob_kvtable_example.cpp - src/libtable//examples/ob_table_example.cpp - src/libtable//examples/example_makefile.mk + src/libtable/examples/ob_pstore_example.cpp + src/libtable/examples/ob_kvtable_example.cpp + src/libtable/examples/ob_table_example.cpp + src/libtable/examples/example_makefile.mk DESTINATION examples COMPONENT table) -install(PROGRAMS - ${CMAKE_BINARY_DIR}/src/libtable/src/libobtable.so - ${CMAKE_BINARY_DIR}/src/libtable/src/libobtable.so.1 - ${CMAKE_BINARY_DIR}/src/libtable/src/libobtable.so.1.0.0 - ${CMAKE_BINARY_DIR}/src/libtable/src/libobtable_static.a - DESTINATION lib - COMPONENT table) +if (OB_BUILD_LIBOBTABLE) + install(PROGRAMS + ${CMAKE_BINARY_DIR}/src/libtable/src/libobtable.so + ${CMAKE_BINARY_DIR}/src/libtable/src/libobtable.so.1 + ${CMAKE_BINARY_DIR}/src/libtable/src/libobtable.so.1.0.0 + ${CMAKE_BINARY_DIR}/src/libtable/src/libobtable_static.a + DESTINATION lib + COMPONENT table) +endif() ## oceanbase-libs install(PROGRAMS @@ -321,13 +318,15 @@ install(PROGRAMS DESTINATION lib COMPONENT libs ) -## oceanbase-utils -install(PROGRAMS - ${CMAKE_BINARY_DIR}/tools/ob_admin/ob_admin - ${CMAKE_BINARY_DIR}/tools/ob_error/src/ob_error - DESTINATION /usr/bin - COMPONENT utils -) +if(OB_BUILD_OBMAIN) + ## oceanbase-utils + install(PROGRAMS + ${CMAKE_BINARY_DIR}/tools/ob_admin/ob_admin + ${CMAKE_BINARY_DIR}/tools/ob_error/src/ob_error + DESTINATION /usr/bin + COMPONENT utils + ) + endif() # install cpack to make everything work include(CPack)