OpenHarmony移植案例: build lite源码分析之hb命令__entry__.py

时间:2022-11-08 16:11:20
摘要:本文介绍了build lite 轻量级编译构建系统hb命令的源码,主要分析了_\entry__.py文件。

本文分享自华为云社区《移植案例与原理 - build lite源码分析 之 hb命令__entry__.py》,作者:zhushy 。

hb命令可以通过python pip包管理器进行安装,应该是OpenHarmony Build的缩写,在python包名称是ohos-build。hb作为编译构建子系统提供的命令行,用于编译构建产品、芯片厂商组件或者单个组件。我们来学习hb命令行工具的源码,本文主要分析下文件openharmony/build/lite/hb/__entry__.py。

1、find_top()函数

find_top()函数用于获取OpenHarmony源代码根目录,之前的系列文章分析过。代码也较简单,不再赘述。

def find_top():
 cur_dir = os.getcwd()
 while cur_dir != "/":
 hb_internal = os.path.join(cur_dir, 'build/lite/hb_internal')
 if os.path.exists(hb_internal):
 return cur_dir
 cur_dir = os.path.dirname(cur_dir)
 raise Exception("Please call hb utilities inside source root directory")