V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zycpp
V2EX  ›  程序员

请问那种好几千行的 CMakeLists 是手写的吗?

  •  
  •   zycpp · 2020-05-29 08:56:42 +08:00 via Android · 2173 次点击
    这是一个创建于 1647 天前的主题,其中的信息可能已经有所发展或是发生改变。
    还是有什么自动生成软件?
    后续维护更新也是人工的吗?
    grpc 的 CMakeLists 都一万多行了,给跪了。
    5 条回复    2021-10-20 08:03:01 +08:00
    dilu
        1
    dilu  
       2020-05-29 09:17:16 +08:00
    我也很好奇,看一些 C 项目的时候,那 Makefile 多的也有三四百行了,全靠人工?求 C/C++大佬解惑
    reus
        2
    reus  
       2020-05-29 09:20:58 +08:00
    看一下历史不就知道了: https://github.com/grpc/grpc/commits/master/CMakeLists.txt

    代码几千几万行有什么奇怪的?还是你认为构建文件不配称作代码?
    zengguibo
        3
    zengguibo  
       2020-05-29 09:40:37 +08:00
    真是手写的,又不是一天内写的,都是好几年的产物了
    icylogic
        4
    icylogic  
       2020-05-29 10:11:29 +08:00
    - 一个项目总共成千上万行不奇怪,cmake 作为一种极其难用又没啥库的脚本语言,写得很啰嗦是很容易的,而且完全可以写一大段删掉也不会影响最终编译结果的东西。
    - 不过 cmake 又是一种难读难改难维护的配置文件,我一般习惯到了一定规模就抽出来一部分模块化,不然几千行的 cmake 真是一种 san check,不可直视,不可调试。
    - 可是因为 cmake 的 function 没有返回值,语法设计奇诡,又让分离模块这件事本身变得很痛苦……

    整到最后,主要目的不过是为了生成一堆正确的 `gcc -isystem xxx fxxk.cpp -l yyy`
    所以结论是,远离 cmake,远离艹
    waruqi
        5
    waruqi  
       2021-10-20 08:03:01 +08:00 via Android
    可以用 xmake 更简单
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2604 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 06:25 · PVG 14:25 · LAX 22:25 · JFK 01:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.