From b0aa785cda7cbb56a95d2c476cc2eafe717df435 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=B0=8F=E8=82=89=E5=A4=B4=E5=90=9B?= Date: Mon, 15 May 2023 10:38:16 +0800 Subject: [PATCH] add harfbuzz MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 小肉头君 --- thirdparty/harfbuzz/HPKBUILD | 86 ++++++++++++++++ thirdparty/harfbuzz/README.OpenSource | 11 ++ thirdparty/harfbuzz/README_zh.md | 12 +++ thirdparty/harfbuzz/SHA512SUM | 1 + thirdparty/harfbuzz/docs/hap_integrate.md | 96 ++++++++++++++++++ .../docs/pic/harfbuzz_install_dir1.png | Bin 0 -> 18208 bytes .../docs/pic/harfbuzz_install_dir2.png | Bin 0 -> 10430 bytes .../harfbuzz/docs/pic/harfbuzz_test.png | Bin 0 -> 17036 bytes .../harfbuzz/docs/pic/harfbuzz_usage.png | Bin 0 -> 61290 bytes 9 files changed, 206 insertions(+) create mode 100644 thirdparty/harfbuzz/HPKBUILD create mode 100644 thirdparty/harfbuzz/README.OpenSource create mode 100644 thirdparty/harfbuzz/README_zh.md create mode 100644 thirdparty/harfbuzz/SHA512SUM create mode 100644 thirdparty/harfbuzz/docs/hap_integrate.md create mode 100644 thirdparty/harfbuzz/docs/pic/harfbuzz_install_dir1.png create mode 100644 thirdparty/harfbuzz/docs/pic/harfbuzz_install_dir2.png create mode 100644 thirdparty/harfbuzz/docs/pic/harfbuzz_test.png create mode 100644 thirdparty/harfbuzz/docs/pic/harfbuzz_usage.png diff --git a/thirdparty/harfbuzz/HPKBUILD b/thirdparty/harfbuzz/HPKBUILD new file mode 100644 index 00000000..a76d17bf --- /dev/null +++ b/thirdparty/harfbuzz/HPKBUILD @@ -0,0 +1,86 @@ +# Contributor: 小肉头君 +# Maintainer: 小肉头君 + +pkgname=harfbuzz +pkgver=7.1.0 +pkgrel=0 +pkgdesc="HarfBuzz text shaping engine." +url="https://github.com/harfbuzz/harfbuzz" +archs=("armeabi-v7a" "arm64-v8a") +license=("Old MIT") +depends=() +makedepends=() +source="https://github.com/$pkgname/$pkgname/archive/refs/tags/$pkgver.tar.gz" + +autounpack=true +downloadpackage=true +buildtools="configure" + +builddir=$pkgname-$pkgver +packagename=$builddir.tar.gz + +source envset.sh +autogenflag=true +host= + +prepare() { + mkdir -p $builddir/$ARCH-build + if [ $ARCH == "armeabi-v7a" ] + then + setarm32ENV + host=arm-linux + fi + if [ $ARCH == "arm64-v8a" ] + then + setarm64ENV + host=aarch64-linux + fi + if $autogenflag + then + cd $builddir + ./autogen.sh > `pwd`/build.log 2>&1 + cd $OLDPWD + autogenflag=false + fi +} + +build() { + cd $builddir/$ARCH-build + ../configure "$@" --host=$host --with-freetype=no --with-icu=no --with-glib=no -with-cairo=no --enable-static > `pwd`/build.log 2>&1 + make -j4 >> `pwd`/build.log 2>&1 + ret=$? + cd $OLDPWD + return $ret +} + +# 安装打包 +package() { + cd $builddir + make -C $ARCH-build install >> `pwd`/$ARCH-build/build.log 2>&1 + cd $OLDPWD +} + +# 测试,需要在 ohos 设备上进行 +check() { + cd $builddir/$ARCH-build/src + make test-algs test-array test-bimap test-iter test-machinery test-map test-multimap test-number test-ot-tag test-priority-queue test-set test-serialize test-unicode-ranges test-vector test-repacker test-classdef-graph \ + check-c-linkage-decls.py check-externs.py check-header-guards.py check-includes.py check-static-inits.py check-symbols.py check-libstdc++.py >> `pwd`/../build.log 2>&1 + if [ $ARCH == "armeabi-v7a" ] + then + unsetarm32ENV + fi + if [ $ARCH == "arm64-v8a" ] + then + unsetarm64ENV + fi + cd $OLDPWD + unset host + echo "The test must be on an OpenHarmony device!" + # real test CMD + # make -C src check-TESTS +} + +# 清理环境 +cleanbuild(){ + rm -rf ${PWD}/$builddir #${PWD}/$packagename +} \ No newline at end of file diff --git a/thirdparty/harfbuzz/README.OpenSource b/thirdparty/harfbuzz/README.OpenSource new file mode 100644 index 00000000..ebce3afd --- /dev/null +++ b/thirdparty/harfbuzz/README.OpenSource @@ -0,0 +1,11 @@ +[ + { + "Name": "harfbuzz", + "License": "Old MIT", + "License File": "LICENSES", + "Version Number": "7.1.0", + "Owner": "chenbaodi@huawei.com", + "Upstream URL": "https://github.com/harfbuzz/harfbuzz/archive/refs/tags/7.3.0.tar.gz", + "Description": "HarfBuzz text shaping engine" + } +] diff --git a/thirdparty/harfbuzz/README_zh.md b/thirdparty/harfbuzz/README_zh.md new file mode 100644 index 00000000..09832214 --- /dev/null +++ b/thirdparty/harfbuzz/README_zh.md @@ -0,0 +1,12 @@ +# harfbuzz三方库说明 +## 功能简介 +harfbuzz是一个有OpenType文本整形能力的库。 +## 使用约束 +- IDE版本:DevEco Studio 3.1 Beta2 +- SDK版本:ohos_sdk_public 3.2.11.9 (API Version 9 Release) +- 三方库版本:7.1.0 +- 当前适配的功能:支持OpenType文本整形能力 +- [Old MIT](https://github.com/harfbuzz/harfbuzz/blob/main/COPYING) + +## 集成方式 ++ [应用hap包集成](docs/hap_integrate.md) diff --git a/thirdparty/harfbuzz/SHA512SUM b/thirdparty/harfbuzz/SHA512SUM new file mode 100644 index 00000000..4ef71985 --- /dev/null +++ b/thirdparty/harfbuzz/SHA512SUM @@ -0,0 +1 @@ +aaef6801c73492624f19dececd956c03fda82a441b81553dfcd0bd47e5120b1d61acfef422a6cd0ded490d16ee4ee9088abdc0faba2a84884905e7cd63fe59d6 harfbuzz-7.1.0.tar.gz diff --git a/thirdparty/harfbuzz/docs/hap_integrate.md b/thirdparty/harfbuzz/docs/hap_integrate.md new file mode 100644 index 00000000..6abbe7e2 --- /dev/null +++ b/thirdparty/harfbuzz/docs/hap_integrate.md @@ -0,0 +1,96 @@ +# harfbuzz 集成到应用hap + +本库是在RK3568开发板上基于OpenHarmony3.2 Release版本的镜像验证的,如果是从未使用过RK3568,可以先查看[润和RK3568开发板标准系统快速上手](https://gitee.com/openharmony-sig/knowledge_demo_temp/tree/master/docs/rk3568_helloworld)。 + +## 开发环境 + +- ubuntu20.04 +- [OpenHarmony3.2Release镜像](https://gitee.com/link?target=https%3A%2F%2Frepo.huaweicloud.com%2Fopenharmony%2Fos%2F3.2-Release%2Fdayu200_standard_arm32.tar.gz) +- [ohos_sdk_public 3.2.11.9 (API Version 9 Release)](https://gitee.com/link?target=https%3A%2F%2Frepo.huaweicloud.com%2Fopenharmony%2Fos%2F3.2-Release%2Fohos-sdk-windows_linux-public.tar.gz) +- [DevEco Studio 3.1 Beta2](https://gitee.com/link?target=https%3A%2F%2Fcontentcenter-vali-drcn.dbankcdn.cn%2Fpvt_2%2FDeveloperAlliance_package_901_9%2Ff3%2Fv3%2FuJyuq3syQ2ak4hE1QZmAug%2Fdevecostudio-windows-3.1.0.400.zip%3FHW-CC-KV%3DV1%26HW-CC-Date%3D20230408T013335Z%26HW-CC-Expire%3D315360000%26HW-CC-Sign%3D96262721EDC9B34E6F62E66884AB7AE2A94C2A7B8C28D6F7FC891F46EB211A70) +- [准备三方库构建环境](../../../tools/README.md#编译环境准备) +- [准备三方库测试环境](../../../tools/README.md#ci环境准备) + +## 编译三方库 + +- 下载本仓库 + + ```shell + git clone https://gitee.com/openharmony-sig/tpc_c_cplusplus.git --depth=1 + ``` + +- 三方库目录结构 + + ``` + tpc_c_cplusplus/thirdparty/harfbuzz #三方库harfbuzz的目录结构如下 + ├── docs #三方库相关文档的文件夹 + ├── HPKBUILD #构建脚本 + ├── SHA512SUM #三方库校验文件 + ├── README.OpenSource #说明三方库源码的下载地址,版本,license等信息 + ├── README_zh.md + ``` + +- 将harfbuzz拷贝至tools/main目录下 + + ``` + cd tpc_c_cplusplus + cp thirdparty/harfbuzz tools/main -rf + ``` + +- 在tools目录下编译三方库 + + 编译环境的搭建参考[准备三方库构建环境](../../../tools/README.md#编译环境准备) + + ``` + cd tools + ./build.sh harfbuzz + ``` + +- 三方库头文件及生成的库 + + 在tools目录下会生成usr目录,该目录下存在已编译完成的32位和64位三方库 + + ``` + harfbuzz/arm64-v8a harfbuzz/armeabi-v7a + ``` + +- [测试三方库](#测试三方库) + +## 应用中使用三方库 + +- 在IDE的cpp目录下新增thirdparty目录,将编译生成的库拷贝到该目录下,如下图所示: + +  ![thirdparty_install_dir](pic/harfbuzz_install_dir1.png) + +- 拷贝动态库到`\\entry\libs\${OHOS_ARCH}\`目录: + + 动态库需要在`\\entry\libs\${OHOS_ARCH}\`目录,才能集成到hap包中,所以需要将对应的so文件拷贝到对应CPU架构的目录: + +  ![thirdparty_install_dir](pic/harfbuzz_install_dir2.png) + +- 在最外层(cpp目录下)CMakeLists.txt中添加如下语句: + + ``` + #将三方库加入工程中,harfbuzz是对应的三方库名 + target_link_libraries(entry PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/harfbuzz/${OHOS_ARCH}/lib/libharfbuzz.so.0) + #将三方库的头文件加入工程中,harfbuzz是对应的三方库名 + target_include_directories(entry PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/harfbuzz/${OHOS_ARCH}/include) + ``` + ![harfbuzz_usage](pic/harfbuzz_usage.png) + +## 测试三方库 + +三方库的测试使用原库自带的测试用例来做测试,[准备三方库测试环境](../../../tools/README.md#ci环境准备) + +进入到构建目录执行make check运行测试用例(arm64-v8a-build为构建64位的目录,armeabi-v7a-build为构建32位的目录) + +有7个测试用例没通过,是因为这7个测试用例强依赖python环境,ohos设备不支持,所以没通过。 + + ![harfbuzz_test](pic/harfbuzz_test.png) + +## 参考资料 + +- [润和RK3568开发板标准系统快速上手](https://gitee.com/openharmony-sig/knowledge_demo_temp/tree/master/docs/rk3568_helloworld) +- [OpenHarmony三方库地址](https://gitee.com/openharmony-tpc) +- [OpenHarmony知识体系](https://gitee.com/openharmony-sig/knowledge) +- [通过DevEco Studio开发一个NAPI工程](https://gitee.com/openharmony-sig/knowledge_demo_temp/blob/master/docs/napi_study/docs/hello_napi.md) \ No newline at end of file diff --git a/thirdparty/harfbuzz/docs/pic/harfbuzz_install_dir1.png b/thirdparty/harfbuzz/docs/pic/harfbuzz_install_dir1.png new file mode 100644 index 0000000000000000000000000000000000000000..c82ef7c6224587b17cb102c9c2a04f828163db81 GIT binary patch literal 18208 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 literal 0 HcmV?d00001 diff --git a/thirdparty/harfbuzz/docs/pic/harfbuzz_test.png b/thirdparty/harfbuzz/docs/pic/harfbuzz_test.png new file mode 100644 index 0000000000000000000000000000000000000000..1e5a0d18863fead0022d69d9b08f01ba9a254db4 GIT binary patch literal 17036 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 RPniHTuIpU;bj33G{{TP4uMq$M literal 0 HcmV?d00001 diff --git a/thirdparty/harfbuzz/docs/pic/harfbuzz_usage.png b/thirdparty/harfbuzz/docs/pic/harfbuzz_usage.png new file mode 100644 index 0000000000000000000000000000000000000000..2efe18a0069d54188bd179ed5a7b2285dbc3e4fd GIT binary patch literal 61290 zcmdRV1yCJ9x8}v&J-FM&-ICz$T)4Pg+}#Q8?he7-U4y#>cL**Q2@oKGkSzb(xBtIe zwN<wnx?%HPs5a6~F_*Q(;@Ux3&r?^E&Wh)Qrq{=pbZE)0h= zMO~#-y&3+i$Ex8FSVkI!R&iAblIb!_Nb<01=(YQP?)mgX)?dJf!wMC_!-V{|McDl? zLGXMjLGXWdD4%n&(*#Y%gxS({*#$$S941JesxoZy8DBn!2wiuepC)FyC?ctgddTPH zg1Bc&<#{}B?!)bUJmmDB%u&;C#nZz+Zrz?CQDEYIYcI1_iZ?vgbV{C`eKkcZi z#?WI(&MDT^zgf?>*@bG02E$&SLffc`f*7%V+Pstj#Pwxk-E8nM*NeY%`>|i1MLKUB<(D(D@K89 z`K4VrT=_a^BaZ3Dl#uWnmqN@)?Vq4rZa|KQHeYf0zq}r8y@1grfn)=TBYJY1ni)+6BA>|wb2HoJnL=obGi?cd zfsZJKBGUG%n-FVyGfl4@bOmH9nLDi+nr3+Q!j5a`8y{y^XjI^uy*J*QCI3ZVuW`XI zb_e1X(58bTlU{2hz)&;SWOi

v?Q4rF$_=-}acMvlzKOWDsZg!i< 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