代码拉取完成,页面将自动刷新
local FRAMEWORK_DIR_LIST = {
"application", "app_config", "checkpoint", "container_manager", "metadata", "logger", "go_pipeline", "monitor", "monitor/metric_constants", "monitor/metric_models", "monitor/profile_sender", "models",
"config", "config/watcher", "constants",
"collection_pipeline", "collection_pipeline/batch", "collection_pipeline/limiter", "collection_pipeline/plugin", "collection_pipeline/plugin/creator", "collection_pipeline/plugin/instance", "collection_pipeline/plugin/interface", "collection_pipeline/queue", "collection_pipeline/route", "collection_pipeline/serializer",
"task_pipeline",
"runner", "runner/sink/http",
"protobuf/sls", "protobuf/models",
"file_server", "file_server/event", "file_server/event_handler", "file_server/event_listener", "file_server/reader", "file_server/polling",
"prometheus", "prometheus/labels", "prometheus/schedulers", "prometheus/async", "prometheus/component",
"ebpf", "ebpf/handler",
"parser",
"host_monitor", "host_monitor/collector"
}
local COMMON_DIR_LIST = {
"common", "common/xxhash", "common/compression", "common/http", "common/timer", "common/memory"
}
local PLUGIN_DIR_LIST = {
"plugin/input", "plugin/processor", "plugin/processor/inner", "plugin/flusher/blackhole",
"plugin/flusher/file", "plugin/flusher/sls"
}
local PROVIDER_DIR_LIST = {
"monitor/profile_sender", "config/feedbacker", "config/provider", "config/common_provider", "protobuf/config_server/v1", "protobuf/config_server/v2"
}
function get_sourse_files(dir)
-- print("get_sourse_files: " .. dir)
local cpp_files = os.files(dir .. "/*.cpp")
local c_files = os.files(dir .. "/*.c")
local ccc_files = os.files(dir .. "/*.cc")
local files = {}
for _, file in ipairs(cpp_files) do
table.insert(files, file)
end
for _, file in ipairs(c_files) do
table.insert(files, file)
end
for _, file in ipairs(ccc_files) do
table.insert(files, file)
end
return files
end
function add_framwork_files(target, header_only)
for _, dir in ipairs(FRAMEWORK_DIR_LIST) do
if not header_only then
local files = get_sourse_files(path.join(os.projectdir(), dir))
for _, file in ipairs(files) do
target:add("files", file)
end
end
target:add("includedirs", dir, {public = true})
end
target:remove("files", "go_pipeline/LogtailPluginAdapter.cpp")
target:remove("files", "file_server/event_listener/*_Windows.cpp")
target:add("packages", "jsoncpp", "protobuf-cpp", "boost", "leveldb", "spdlog",
"gflags", "libcurl", "gperftools", "yaml-cpp", "re2", "rapidjson",
{public = true}
)
end
function add_common_files(target, header_only)
for _, dir in ipairs(COMMON_DIR_LIST) do
if not header_only then
local files = get_sourse_files(path.join(os.projectdir(), dir))
for _, file in ipairs(files) do
target:add("files", file)
end
end
target:add("includedirs", dir, {public = true})
end
target:remove("files", "common/BoostRegexValidator.cpp")
target:remove("files", "common/GetUUID.cpp")
if not target:is_arch("x64", "x86_64") then
target:remove("files", "common/xxhash/xxh_x86dispatch.c")
end
target:add("packages", "libuuid", "lz4", "libunwind", "zstd", {public = true})
end
function add_plugin_files(target, header_only)
for _, dir in ipairs(PLUGIN_DIR_LIST) do
if not header_only then
local files = get_sourse_files(path.join(os.projectdir(), dir))
for _, file in ipairs(files) do
target:add("files", file)
end
end
target:add("includedirs", dir, {public = true})
end
if (has_config("WITHOUT_SPL")) then
target:remove("files", "plugin/processor/ProcessorSPL.cpp")
end
end
function add_provider_files(target)
for _, dir in ipairs(PROVIDER_DIR_LIST) do
local files = get_sourse_files(path.join(os.projectdir(), dir))
for _, file in ipairs(files) do
target:add("files", file)
end
target:add("includedirs", dir, {public = true})
end
for _, dir in ipairs(FRAMEWORK_DIR_LIST) do
target:add("includedirs", dir)
end
target:add("packages", "boost", "protobuf-cpp", "jsoncpp", "spdlog", "gflags",
"yaml-cpp", "libcurl",
{public = true}
)
end
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。