From e802d0c995d5eae323ee07fda3997bd300a75f5d Mon Sep 17 00:00:00 2001 From: wyc <1104749580@qq.com> Date: Tue, 7 Jul 2026 11:40:57 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B8=B8=E8=A7=84=E5=8D=87=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CMakeLists.txt | 10 ++++++++-- README.md | 2 ++ main.cmake | 28 ---------------------------- third_party/init.ps1 | 2 +- 4 files changed, 11 insertions(+), 31 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index e4a5498..8720aed 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -8,10 +8,16 @@ if (${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_LIST_DIR}) include(third_party/build_infra/start.cmake) include(third_party/CPP_Core/main.cmake) include(third_party/SSR/main.cmake) - include(${CMAKE_SOURCE_DIR}/main.cmake) + set(ecap_rely drogon libarchive SQLiteCpp) + library_is_installed_with_rely(global ok ${ecap_rely}) + if (${ok}) + include(${CMAKE_SOURCE_DIR}/main.cmake) + else () + message("ECAP_Server 依赖未安装! 请运行 ecap_server_env 目标安装所需第三方依赖") + endif () + rcl_add_dependency_action_targets("ecap_server_env" ${ecap_rely}) include(third_party/build_infra/end.cmake) else () - endif () diff --git a/README.md b/README.md index 6f85a74..f92c808 100644 --- a/README.md +++ b/README.md @@ -5,5 +5,7 @@ # 构建步骤 进入third_party执行init.bash 或者 init.ps1 +然后运行cmake目标 ecap_server_env 安装第三方依赖 + 然后使用CMakeLists.txt执行构建即可 diff --git a/main.cmake b/main.cmake index 85aed40..0b67ce9 100644 --- a/main.cmake +++ b/main.cmake @@ -1,53 +1,35 @@ get_filename_component(name ${CMAKE_CURRENT_LIST_DIR} NAME) - set(rely libarchive SQLiteCpp) rcl_load_dependency_environment(drogon ${rely}) - - find_package(Drogon) find_package(SQLiteCpp CONFIG REQUIRED) - - set(Core Core_Static) - if (1) set(md "${CMAKE_CURRENT_LIST_DIR}/module") - - if (WIN32) set(cfg_dir ${CMAKE_CURRENT_LIST_DIR}/config) - else () set(cfg_dir ${CMAKE_CURRENT_LIST_DIR}/config/x86_linux) endif () - - _create("dll" dll_source) _create("exe" data_process) _attach_include_dir(dll_source "${md}") _attach_source_dir(dll_source "${md}/dll_source") _attach_include_dir(data_process "${md}") _attach_source_dir(data_process "${md}/dll_source") - - _depend(dll_source ${Core}) _depend(data_process ${Core}) _attach_post_build_file(dll_source ${cfg_dir}/data_progress_config.json # "${CMAKE_CURRENT_LIST_DIR}/data/BIN_Blank_Text/ADS-B_195_0205.txt" ) - - _create("dll" mlat_source) _attach_include_dir(mlat_source "${md}") _attach_source_dir(mlat_source "${md}/mlat_source") _depend(mlat_source ${Core}) - _create("exe" mlat_source_exe) _attach_include_dir(mlat_source_exe "${md}") _attach_source_dir(mlat_source_exe "${md}/mlat_source") _depend(mlat_source_exe ${Core}) - - _create("exe" ecap_server) _depend(ecap_server SSR) _attach_include_dir(ecap_server "${md}") @@ -57,19 +39,14 @@ if (1) target_link_libraries(ecap_server PRIVATE SQLiteCpp) target_link_libraries(ecap_server PRIVATE ${ZLIB_LIBRARY}) target_include_directories(ecap_server PRIVATE ${ZLIB_INCLUDE_DIR}) - message("LibArchive_SUB_LIBRARIES {${LibArchive_SUB_LIBRARIES}}") target_link_libraries(ecap_server PRIVATE LibArchive::LibArchive ${LibArchive_SUB_LIBRARIES} - ) target_compile_definitions(ecap_server PRIVATE LIBARCHIVE_STATIC) - - _attach_source_file(ecap_server "${md}/Local_Server_main.cpp") _attach_post_build_file(ecap_server ${cfg_dir}/config.json) - if (UNIX AND NOT APPLE) # 添加进程间通信系统库 target_compile_options(ecap_server PRIVATE -g -gstrict-dwarf -gdwarf-4 -fvar-tracking-assignments) @@ -100,7 +77,6 @@ if (1) ${CMAKE_COMMAND} -E tar cf "${PACKAGE_ZIP}" --format=zip -- . COMMENT "Build frontend" USES_TERMINAL - VERBATIM ) add_dependencies(ecap_server_package ecap_server) @@ -112,17 +88,13 @@ if (1) endif () add_dependencies(ecap_server dll_source) if (WIN32) - endif () _create("exe" test_drogon) _attach_include_dir(test_drogon "${md}") _attach_source_dir(test_drogon "${md}/test_drogon") target_link_libraries(test_drogon PRIVATE Drogon::Drogon) endif () - rcl_unload_dependency_environment(drogon ${rely}) - - #include("${CMAKE_SOURCE_DIR}/0_cmake_library/ninja_build_analyze/export.cmake") # #register_ninja_build_analyze_target( diff --git a/third_party/init.ps1 b/third_party/init.ps1 index 8fc8141..4e065f7 100644 --- a/third_party/init.ps1 +++ b/third_party/init.ps1 @@ -31,7 +31,7 @@ function Fetch-RepoEx param( [string]$Name ) - $repo = "http://192.168.1.75:3000/psc/$Name" + $repo = "http://10.10.10.1:3000/ae/$Name" $branch = "master" Fetch-Repo -Repo $repo -Branch $branch -Dir "third_party/$Name" }