From: Vladislav Shpilevoy <v.shpilevoy@tarantool.org> To: tarantool-patches@freelists.org Cc: kostja@tarantool.org Subject: [tarantool-patches] [PATCH v2 4/4] Extract 'coll' library from 'core' Date: Tue, 26 Feb 2019 15:11:36 +0300 [thread overview] Message-ID: <dae1fec2632ba4f5cf18a547f0e756ed942ea49e.1551182934.git.v.shpilevoy@tarantool.org> (raw) In-Reply-To: <cover.1551182934.git.v.shpilevoy@tarantool.org> In-Reply-To: <cover.1551182934.git.v.shpilevoy@tarantool.org> Core is supposed to be the most basic library, providing only really common features used everywhere like fiber, diag, memory, logging. Which can't be said about collations - they are used only by high level things - SQL, Lua utf8, comparators. Collations are built now as 'lib/coll' library. The patch is not necessary for anything, but it is a right thing to do, while some activity is happening there. --- src/CMakeLists.txt | 2 +- src/box/coll_id.c | 2 +- src/box/coll_id_def.h | 2 +- src/box/sql/expr.c | 2 +- src/box/sql/fk_constraint.c | 2 +- src/box/sql/func.c | 2 +- src/box/sql/select.c | 2 +- src/box/sql/vdbeaux.c | 2 +- src/box/sql/where.c | 2 +- src/box/sql/whereexpr.c | 2 +- src/box/tuple_compare.cc | 2 +- src/box/tuple_hash.cc | 2 +- src/lib/CMakeLists.txt | 1 + src/lib/coll/CMakeLists.txt | 2 ++ src/lib/{core => coll}/coll.c | 0 src/lib/{core => coll}/coll.h | 0 src/lib/{core => coll}/coll_def.c | 0 src/lib/{core => coll}/coll_def.h | 0 src/lib/core/CMakeLists.txt | 2 -- src/lua/utf8.c | 2 +- src/main.cc | 2 +- test/unit/CMakeLists.txt | 2 +- test/unit/coll.cpp | 4 ++-- 23 files changed, 20 insertions(+), 19 deletions(-) create mode 100644 src/lib/coll/CMakeLists.txt rename src/lib/{core => coll}/coll.c (100%) rename src/lib/{core => coll}/coll.h (100%) rename src/lib/{core => coll}/coll_def.c (100%) rename src/lib/{core => coll}/coll_def.h (100%) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index b115e14c9..481618f20 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -162,7 +162,7 @@ endif() set_source_files_compile_flags(${server_sources}) add_library(server STATIC ${server_sources}) -target_link_libraries(server core http_parser bit uri uuid ${ICU_LIBRARIES}) +target_link_libraries(server core coll http_parser bit uri uuid) # Rule of thumb: if exporting a symbol from a static library, list the # library here. diff --git a/src/box/coll_id.c b/src/box/coll_id.c index b56c74961..5abeaed21 100644 --- a/src/box/coll_id.c +++ b/src/box/coll_id.c @@ -30,7 +30,7 @@ */ #include "coll_id.h" #include "coll_id_def.h" -#include "coll.h" +#include "coll/coll.h" #include "error.h" #include "diag.h" diff --git a/src/box/coll_id_def.h b/src/box/coll_id_def.h index 489280c00..859209274 100644 --- a/src/box/coll_id_def.h +++ b/src/box/coll_id_def.h @@ -33,7 +33,7 @@ #include <stddef.h> #include <stdint.h> -#include <coll_def.h> +#include "coll/coll_def.h" #include "opt_def.h" /** Collation identifier definition. */ diff --git a/src/box/sql/expr.c b/src/box/sql/expr.c index c914cfb68..a75f23756 100644 --- a/src/box/sql/expr.c +++ b/src/box/sql/expr.c @@ -34,7 +34,7 @@ * for generating VDBE code that evaluates expressions in sql. */ #include "box/coll_id_cache.h" -#include "coll.h" +#include "coll/coll.h" #include "sqlInt.h" #include "tarantoolInt.h" #include "box/schema.h" diff --git a/src/box/sql/fk_constraint.c b/src/box/sql/fk_constraint.c index 93c01a0e7..4066b1cf1 100644 --- a/src/box/sql/fk_constraint.c +++ b/src/box/sql/fk_constraint.c @@ -33,7 +33,7 @@ * This file contains code used by the compiler to add foreign key * support to compiled SQL statements. */ -#include "coll.h" +#include "coll/coll.h" #include "sqlInt.h" #include "box/fk_constraint.h" #include "box/schema.h" diff --git a/src/box/sql/func.c b/src/box/sql/func.c index 79e2c0e18..775fc7cc1 100644 --- a/src/box/sql/func.c +++ b/src/box/sql/func.c @@ -37,7 +37,7 @@ #include "sqlInt.h" #include "vdbeInt.h" #include "version.h" -#include "coll.h" +#include "coll/coll.h" #include <unicode/ustring.h> #include <unicode/ucasemap.h> #include <unicode/ucnv.h> diff --git a/src/box/sql/select.c b/src/box/sql/select.c index 6a465a616..7c55f2e0b 100644 --- a/src/box/sql/select.c +++ b/src/box/sql/select.c @@ -33,7 +33,7 @@ * This file contains C code routines that are called by the parser * to handle SELECT statements in sql. */ -#include "coll.h" +#include "coll/coll.h" #include "sqlInt.h" #include "tarantoolInt.h" #include "vdbeInt.h" diff --git a/src/box/sql/vdbeaux.c b/src/box/sql/vdbeaux.c index e0f66ea1b..bb64dbdf7 100644 --- a/src/box/sql/vdbeaux.c +++ b/src/box/sql/vdbeaux.c @@ -34,7 +34,7 @@ * a VDBE (or an "sql_stmt" as it is known to the outside world.) */ #include "fiber.h" -#include "coll.h" +#include "coll/coll.h" #include "box/session.h" #include "box/schema.h" #include "box/tuple_format.h" diff --git a/src/box/sql/where.c b/src/box/sql/where.c index 1bba9d65c..f494ead4c 100644 --- a/src/box/sql/where.c +++ b/src/box/sql/where.c @@ -37,7 +37,7 @@ * so is applicable. Because this module is responsible for selecting * indices, you might also think of this module as the "query optimizer". */ -#include "coll.h" +#include "coll/coll.h" #include "sqlInt.h" #include "tarantoolInt.h" #include "vdbeInt.h" diff --git a/src/box/sql/whereexpr.c b/src/box/sql/whereexpr.c index fa906e305..6df28ad8a 100644 --- a/src/box/sql/whereexpr.c +++ b/src/box/sql/whereexpr.c @@ -38,7 +38,7 @@ * analyzing Expr objects in the WHERE clause. */ #include "box/coll_id_cache.h" -#include "coll.h" +#include "coll/coll.h" #include "sqlInt.h" #include "whereInt.h" diff --git a/src/box/tuple_compare.cc b/src/box/tuple_compare.cc index cbdd150b8..cf4519ccb 100644 --- a/src/box/tuple_compare.cc +++ b/src/box/tuple_compare.cc @@ -30,7 +30,7 @@ */ #include "tuple_compare.h" #include "tuple.h" -#include "coll.h" +#include "coll/coll.h" #include "trivia/util.h" /* NOINLINE */ #include <math.h> diff --git a/src/box/tuple_hash.cc b/src/box/tuple_hash.cc index 0aed4c14c..9ee435503 100644 --- a/src/box/tuple_hash.cc +++ b/src/box/tuple_hash.cc @@ -32,7 +32,7 @@ #include "tuple_hash.h" #include "tuple.h" #include "third_party/PMurHash.h" -#include "coll.h" +#include "coll/coll.h" #include <math.h> /* Tuple and key hasher */ diff --git a/src/lib/CMakeLists.txt b/src/lib/CMakeLists.txt index 9e90c75ab..39795bbae 100644 --- a/src/lib/CMakeLists.txt +++ b/src/lib/CMakeLists.txt @@ -9,6 +9,7 @@ add_subdirectory(uri) add_subdirectory(http_parser) add_subdirectory(core) add_subdirectory(uuid) +add_subdirectory(coll) if(ENABLE_BUNDLED_MSGPUCK) add_subdirectory(msgpuck EXCLUDE_FROM_ALL) endif() diff --git a/src/lib/coll/CMakeLists.txt b/src/lib/coll/CMakeLists.txt new file mode 100644 index 000000000..c01e608bb --- /dev/null +++ b/src/lib/coll/CMakeLists.txt @@ -0,0 +1,2 @@ +add_library(coll STATIC coll.c coll_def.c) +target_link_libraries(coll core ${ICU_LIBRARIES}) diff --git a/src/lib/core/coll.c b/src/lib/coll/coll.c similarity index 100% rename from src/lib/core/coll.c rename to src/lib/coll/coll.c diff --git a/src/lib/core/coll.h b/src/lib/coll/coll.h similarity index 100% rename from src/lib/core/coll.h rename to src/lib/coll/coll.h diff --git a/src/lib/core/coll_def.c b/src/lib/coll/coll_def.c similarity index 100% rename from src/lib/core/coll_def.c rename to src/lib/coll/coll_def.c diff --git a/src/lib/core/coll_def.h b/src/lib/coll/coll_def.h similarity index 100% rename from src/lib/core/coll_def.h rename to src/lib/coll/coll_def.h diff --git a/src/lib/core/CMakeLists.txt b/src/lib/core/CMakeLists.txt index 6238f3cee..eb10b11c3 100644 --- a/src/lib/core/CMakeLists.txt +++ b/src/lib/core/CMakeLists.txt @@ -24,8 +24,6 @@ set(core_sources util.c random.c trigger.cc - coll.c - coll_def.c mpstream.c port.c ) diff --git a/src/lua/utf8.c b/src/lua/utf8.c index 6d3e4d39a..a009a4655 100644 --- a/src/lua/utf8.c +++ b/src/lua/utf8.c @@ -30,7 +30,7 @@ */ #include <unicode/ucasemap.h> #include <unicode/uchar.h> -#include <coll.h> +#include "coll/coll.h" #include "lua/utils.h" #include "lua/utf8.h" #include "diag.h" diff --git a/src/main.cc b/src/main.cc index df7468907..39d5fb351 100644 --- a/src/main.cc +++ b/src/main.cc @@ -58,7 +58,7 @@ #include <say.h> #include <rmean.h> #include <limits.h> -#include "coll.h" +#include "coll/coll.h" #include "trivia/util.h" #include "backtrace.h" #include "tt_pthread.h" diff --git a/test/unit/CMakeLists.txt b/test/unit/CMakeLists.txt index 18118d374..04bc659e7 100644 --- a/test/unit/CMakeLists.txt +++ b/test/unit/CMakeLists.txt @@ -193,7 +193,7 @@ add_executable(vy_cache.test vy_cache.c ${ITERATOR_TEST_SOURCES}) target_link_libraries(vy_cache.test ${ITERATOR_TEST_LIBS}) add_executable(coll.test coll.cpp) -target_link_libraries(coll.test core unit ${ICU_LIBRARIES} misc) +target_link_libraries(coll.test coll unit misc) add_executable(tuple_bigref.test tuple_bigref.c) target_link_libraries(tuple_bigref.test tuple unit) diff --git a/test/unit/coll.cpp b/test/unit/coll.cpp index 94374a7b0..5a7f49195 100644 --- a/test/unit/coll.cpp +++ b/test/unit/coll.cpp @@ -7,8 +7,8 @@ #include <diag.h> #include <fiber.h> #include <memory.h> -#include "coll_def.h" -#include "coll.h" +#include "coll/coll_def.h" +#include "coll/coll.h" #include "unit.h" #include "third_party/PMurHash.h" -- 2.17.2 (Apple Git-113)
next prev parent reply other threads:[~2019-02-26 12:11 UTC|newest] Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-02-26 12:11 [tarantool-patches] [PATCH v2 0/4] Move 'core' lib to src/lib Vladislav Shpilevoy 2019-02-26 12:11 ` [tarantool-patches] [PATCH v2 1/4] Remove dead dependency of http_parser on httpc Vladislav Shpilevoy 2019-02-26 12:12 ` [tarantool-patches] " Vladislav Shpilevoy 2019-02-26 12:21 ` Konstantin Osipov 2019-02-26 12:11 ` [tarantool-patches] [PATCH v2 2/4] Move 'http_parser' to src/lib Vladislav Shpilevoy 2019-02-26 12:21 ` [tarantool-patches] " Konstantin Osipov 2019-02-26 16:57 ` Vladislav Shpilevoy 2019-02-26 12:11 ` [tarantool-patches] [PATCH v2 3/4] Move 'core' and 'uuid' libs " Vladislav Shpilevoy 2019-02-26 12:22 ` [tarantool-patches] " Konstantin Osipov 2019-02-26 16:57 ` Vladislav Shpilevoy 2019-02-26 12:11 ` Vladislav Shpilevoy [this message] 2019-02-26 12:23 ` [tarantool-patches] Re: [PATCH v2 4/4] Extract 'coll' library from 'core' Konstantin Osipov 2019-02-26 12:37 ` Vladislav Shpilevoy 2019-02-26 12:55 ` Konstantin Osipov 2019-02-26 13:09 ` Vladislav Shpilevoy 2019-02-26 13:17 ` Konstantin Osipov 2019-02-26 13:43 ` Vladislav Shpilevoy 2019-02-27 15:07 ` Vladislav Shpilevoy 2019-02-26 16:55 ` [tarantool-patches] [PATCH 1/1] Move 'info' library to src/lib Vladislav Shpilevoy 2019-02-26 22:08 ` [tarantool-patches] " Konstantin Osipov 2019-02-27 15:07 ` Vladislav Shpilevoy
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=dae1fec2632ba4f5cf18a547f0e756ed942ea49e.1551182934.git.v.shpilevoy@tarantool.org \ --to=v.shpilevoy@tarantool.org \ --cc=kostja@tarantool.org \ --cc=tarantool-patches@freelists.org \ --subject='Re: [tarantool-patches] [PATCH v2 4/4] Extract '\''coll'\'' library from '\''core'\''' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox