OpenHarmony下gn相关使用
引言
为了提高OpenHarmony下移植vivante gpu的成功率,先得把准备工作做足了,这样后续就好搞了。所以本文档的核心工作介绍GN构建工具在OpenHarmony中的常见使用方法,指导三方库由cmake或者其它的脚本构建到GN构建的转换!
一.GN常用的内置变量
名称 |
描述 |
current_cpu |
当前工具链的处理器架构 |
current_os |
当前工具链的操作系统类型 |
current_toolchain |
表示当前使用的工具链 |
default_toolchain |
表示默认使用的工具链 |
target_cpu |
表示目标平台的CPU类型 |
target_os |
表示目标平台的操作系统类型 |
root_build_dir |
表示根目录的构建目录 |
root_gen_dir |
表示根目录的生成目录 |
root_out_dir |
表示根目录的输出目录 |
target_out_dir |
表示目标文件的输出目录 |
target_gen_dir |
表示中间文件的生成目录 |
defines |
表示当前目标的预定义宏列表 |
include_dirs |
表示当前目标的头文件搜索路径列表 |
cflags |
表示当前目标的C语言编译选项列表 |
cxxflags |
表示当前目标的C++语言编译选项列表 |
ldflags |
表示当前目标的连接选项列表 |
asmflags |
表示当前目标的汇编语言编译选项列表 |
libs |
表示当前目标依赖的库文件列表 |
二.GN常用的内置函数
名称 |
描述 |
assert() |
断言函数,如果条件不成立,则会抛出一个异常 |
defined() |
判断变量是否已经定义 |
exec_script() |
执行一个Python脚本 |
get_label_info() |
获取标签信息,例如标签的名称、路径、类型等等 |
get_path_info() |
获取路径信息,例如路径是否存在、是否是目录、是否是文件等等 |
group() |
将一组目标文件组合成一个库文件 |
import() |