1.7 KiB
1.7 KiB
约定与注意事项
构建
- 统一使用 CMake,禁止再新增/依赖
.vcxproj、.sln(StartApp除外,见下)。 - 新增业务模块:在模块目录放
CMakeLists.txt,并在顶层SourceCode/Code2026/cmakelists.txt用add_custom_module(<相对目录> <FOLDER分组>)注册。 - 新增模块的
CMakeLists.txt参考现有模块(如HvacCmd/CMakeLists.txt)的模板:add_library(... SHARED ${SOURCES})add_def_file_name(SOURCES "<Name>")target_set_name_and_suffix(<t> "<Name>" ".arx")target_link_objectarx(<t> <XXX_EXPORT>)set_debug_post_build(<t> "<Name>" ".arx")
- 若模块需要授权双版本,参考
CoreCommand/cmakelists.txt的get_encryption_modes+set_encryption_definitions_and_output_path写法。
平台差异
- 用
IsZWCAD()判断目标平台;ZRX 产物后缀.zrx,链接ThirdParty::ZRX;ARX 链接ThirdParty::ARX。 - 编译宏:
ARX=<版本号>或ZWCAD。 - 部分 SDK 版本才有特定库(如
acdrawbridge需 >19,acpal/acgeoment需 >23)——已由ThirdPartyDeps.cmake处理。
授权 / 加密
- 正式版走
BAL_REMOTE(网络锁),试用版走TRIAL_YEAR;二者由同一套源码编译出两个目标。 - 加密依赖 BitAnswer;相关表由
utility/generateEncryptionTable生成。
不要提交的内容
.gitignore 已忽略:Arx/、cmake_output/、bin/、lib/、*.obj/*.pdb/*.user/.vs/ 等。
cmake_output/ 里 CMake 生成的 *.vcxproj 属于构建产物,不要误提交。
Git
- 远端
origin:ssh://gjm@47.93.46.28:1216/srv/git/new-start.git,主分支main。 - 提交信息使用中文描述。