首页
/ 探索高效构建:Dragon——你的快速、易用的扩展型构建系统

探索高效构建:Dragon——你的快速、易用的扩展型构建系统

2024-06-08 14:51:23作者:虞亚竹Luna

Logo

Dragon,一个专为速度和易用性而设计的可扩展构建系统,将为你的软件开发工作带来前所未有的效率提升。其设计理念简洁明了:让开发者无需深入Python就能轻松添加工具支持。现在是时候让你的构建过程更加简单、灵活且强大。

项目简介

Dragon的核心由两大部分组成:生成器与工具包。它最初是一个ninja-build文件生成器,随着时间的发展,现在已经涵盖了更多平台上的特定开发需求。无论你是新手还是经验丰富的开发者,都能在Dragon中找到合适的构建解决方案。

项目技术分析

  • 生成器
    Dragon的生成器旨在通过预设模板简化构建文件的创建。强大的预设系统允许你在不编写复杂脚本的情况下扩展其功能。通过设定不同级别的预设(默认预设、包级预设、项目级预设),你可以自由地调整项目配置,实现最小化配置的项目构建。

  • 工具包
    虽然目前主要针对Darwin平台,但Dragon工具包的目标是成为一个独立且不限制于特定平台的开发辅助工具。随着项目的发展,这个工具包将成为跨平台开发的强大助力。

应用场景

Dragon适用于各种开发场景,尤其是那些需要高效构建流程的大型项目。你可以利用它来构建C/C++库,管理复杂的依赖关系,以及自定义编译规则等。它特别适合那些希望简化内部构建系统,并提高团队生产力的开发者或组织。

项目特点

  1. 易于扩展 - 通过预设系统,Dragon允许开发者以类继承的方式叠加和覆盖配置,大大减少了手动编写构建脚本的工作量。
  2. 轻量配置 - 即使是基础项目,也能仅用几行YAML配置完成构建设置。
  3. 速度优化 - 基于ninja-build的底层架构,确保了快速的构建速度。
  4. 跨平台目标 - 尽管当前专注于Darwin平台,但有计划扩展到其他平台,提供更广泛的兼容性。

通过 sbinger's arm64e toolchain,你可以体验到对最新硬件架构的支持。

安装Dragon只需一行命令:

pip3 install dragon

现在就开始你的Dragon之旅,打造更高效的开发环境,让构建过程变得得心应手!

登录后查看全文

项目优选

收起
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
511
551
docsdocs
暂无描述
Markdown
852
5.69 K
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
1.05 K
2.49 K
kernelkernel
deepin linux kernel
C
33
16
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
839
1.28 K
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
847
1.7 K
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.25 K
1.38 K
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.17 K
857
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
503
346
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
787
415