From c56bea3f354fcd342c6afa7097458a9dbab72a3f Mon Sep 17 00:00:00 2001 From: han_jin_fei <1970336264@qq.com> Date: Fri, 9 Jun 2023 16:10:04 +0800 Subject: [PATCH] addd libxml2 Signed-off-by: han_jin_fei <1970336264@qq.com> --- thirdparty/libxml2/HPKBUILD | 53 +++++++++++++ thirdparty/libxml2/README.OpenSource | 11 +++ thirdparty/libxml2/README_zh.md | 12 +++ thirdparty/libxml2/SHA512SUM | 1 + thirdparty/libxml2/docs/hap_integrate.md | 71 ++++++++++++++++++ .../libxml2/docs/pic/libxml2_install_dir.png | Bin 0 -> 11142 bytes thirdparty/libxml2/docs/pic/libxml2_test.png | Bin 0 -> 35928 bytes thirdparty/libxml2/docs/pic/libxml2_usage.png | Bin 0 -> 18371 bytes 8 files changed, 148 insertions(+) create mode 100644 thirdparty/libxml2/HPKBUILD create mode 100644 thirdparty/libxml2/README.OpenSource create mode 100644 thirdparty/libxml2/README_zh.md create mode 100644 thirdparty/libxml2/SHA512SUM create mode 100755 thirdparty/libxml2/docs/hap_integrate.md create mode 100644 thirdparty/libxml2/docs/pic/libxml2_install_dir.png create mode 100644 thirdparty/libxml2/docs/pic/libxml2_test.png create mode 100644 thirdparty/libxml2/docs/pic/libxml2_usage.png diff --git a/thirdparty/libxml2/HPKBUILD b/thirdparty/libxml2/HPKBUILD new file mode 100644 index 00000000..52ae17ac --- /dev/null +++ b/thirdparty/libxml2/HPKBUILD @@ -0,0 +1,53 @@ +# Contributor: Jeff Han +# Maintainer: Jeff Han +pkgname=libxml2 +pkgver=v2.11.3 +pkgrel=0 +pkgdesc="libxml2 is an XML toolkit implemented in C, originally developed for the GNOME Project." +url="https://github.com/GNOME/libxml2" +archs=("armeabi-v7a" "arm64-v8a") +license=("MIT") +depends=("xz" "zlib") +makedepends=() + +source="https://github.com/GNOME/$pkgname/archive/refs/tags/$pkgver.tar.gz" + +autounpack=true +downloadpackage=true + +builddir=$pkgname-${pkgver:1} +packagename=$builddir.tar.gz + +prepare() { + mkdir -p $builddir/$ARCH-build +} + +build() { + cd $builddir + # cmake 需要高版本(同zstd),cmake版本不一致导致lzma无法被自动find 关闭python + cmake "$@" -DOHOS_ARCH=$ARCH -B$ARCH-build -S./ -L -DCMAKE_C_FLAGS="-munaligned-access" \ + -DLIBLZMA_LIBRARY=${LYCIUM_ROOT}/usr/xz/$ARCH/lib/liblzma.so \ + -DLIBLZMA_INCLUDE_DIR=${LYCIUM_ROOT}/usr/xz/$ARCH/include -DZLIB_INCLUDE_DIR=${LYCIUM_ROOT}/usr/zlib/$ARCH/include \ + -DLIBXML2_WITH_ICONV=OFF -DLIBXML2_WITH_PYTHON=OFF > `pwd`/$ARCH-build/build.log 2>&1 + make VERBOSE=1 -j4 -C $ARCH-build >> `pwd`/$ARCH-build/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 +} + +check() { + echo "The test must be on an OpenHarmony device!" + # 默认编译未开启 ICU; 依赖liblzma 需要将xz库 安装到测试机 + # icu 相关测试用例均失败 +} + +# 清理环境 +cleanbuild(){ + rm -rf ${PWD}/$builddir #${PWD}/$packagename +} diff --git a/thirdparty/libxml2/README.OpenSource b/thirdparty/libxml2/README.OpenSource new file mode 100644 index 00000000..c0f18c1b --- /dev/null +++ b/thirdparty/libxml2/README.OpenSource @@ -0,0 +1,11 @@ +[ + { + "Name": "libxml2", + "License": " MIT license", + "License File": "README", + "Version Number": "v2.11.3", + "Owner": "hanjinfei@foxmail.com", + "Upstream URL": "https://github.com/GNOME/libxml2/archive/refs/tags/v2.11.3.tar.gz", + "Description": "libxml2 is an XML toolkit implemented in C, originally developed for the GNOME Project." + } +] diff --git a/thirdparty/libxml2/README_zh.md b/thirdparty/libxml2/README_zh.md new file mode 100644 index 00000000..36eb1023 --- /dev/null +++ b/thirdparty/libxml2/README_zh.md @@ -0,0 +1,12 @@ +# libxml2三方库说明 +## 功能简介 +libxml2是一个用于像素操作的低级软件库,提供图像合成和梯形光栅化等功能。 +## 使用约束 +- IDE版本:DevEco Studio 3.1 Beta2 +- SDK版本:ohos_sdk_public 3.2.11.9 (API Version 9 Release) +- 三方库版本:0.42.2 +- 当前适配的功能:像素操作,图像合成,光栅化 +- [ MIT license](https://github.com/GNOME/libxml2) + +## 集成方式 ++ [应用hap包集成](docs/hap_integrate.md) diff --git a/thirdparty/libxml2/SHA512SUM b/thirdparty/libxml2/SHA512SUM new file mode 100644 index 00000000..4871c704 --- /dev/null +++ b/thirdparty/libxml2/SHA512SUM @@ -0,0 +1 @@ +ddf4388d4286e9e9fffbf9a2d2b9533cd9a4e3c1d6b2595a1d6fad11f02c0a4d501a5994e743348f9f861a73baef2f8ad091fefa77b2df36b4f4d2d8fcf2ee60 libxml2-2.11.3.tar.gz diff --git a/thirdparty/libxml2/docs/hap_integrate.md b/thirdparty/libxml2/docs/hap_integrate.md new file mode 100755 index 00000000..717e22dc --- /dev/null +++ b/thirdparty/libxml2/docs/hap_integrate.md @@ -0,0 +1,71 @@ +# libxml2集成到应用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环境准备) +## 编译三方库 +- 下载本仓库 + ``` + git clone https://gitee.com/openharmony-sig/tpc_c_cplusplus.git --depth=1 + ``` +- 三方库目录结构 + ``` + tpc_c_cplusplus/thirdparty/libxml2 #三方库libxml2的目录结构如下 + ├── docs #三方库相关文档的文件夹 + ├── HPKBUILD #构建脚本 + ├── SHA512SUM #三方库校验文件 + ├── README.OpenSource #说明三方库源码的下载地址,版本,license等信息 + ├── README_zh.md + ``` + +- 将libxml2拷贝至tools/main目录下 + ``` + cd tpc_c_cplusplus + cp thirdparty/libxml2 tools/main -rf + ``` +- 在tools目录下编译三方库 + 编译环境的搭建参考[准备三方库构建环境](../../../tools/README.md#编译环境准备) + ``` + cd tools + ./build.sh libxml2 + ``` +- 三方库头文件及生成的库 + 在tools目录下会生成usr目录,该目录下存在已编译完成的32位和64位三方库 + + ``` + libxml2/arm64-v8a libxml2/armeabi-v7a + ``` + +- [测试三方库](#测试三方库) + +## 应用中使用三方库 +- 拷贝动态库到`\\entry\libs\${OHOS_ARCH}\`目录: + 动态库需要在`\\entry\libs\${OHOS_ARCH}\`目录,才能集成到hap包中,所以需要将对应的so文件拷贝到对应CPU架构的目录 +- 在IDE的cpp目录下新增thirdparty目录,将编译生成的库拷贝到该目录下,如下图所示 + ![thirdparty_install_dir](pic/libxml2_install_dir.png) +- 在最外层(cpp目录下)CMakeLists.txt中添加如下语句 + ``` + + #将三方库加入工程中 + target_link_libraries(entry PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/../../../libs/${OHOS_ARCH}/libxml2.so.2) + #将三方库的头文件加入工程中 + target_include_directories(entry PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/thirdparty/include/libxml2/${OHOS_ARCH}) + + ``` + ![libxml2_usage](pic/libxml2_usage.png) +## 测试三方库 +三方库的测试使用原库自带的测试用例来做测试,[准备三方库测试环境](../../../tools/README.md#ci环境准备) + +进入到构建目录执行ctest运行测试用例(arm64-v8a-build为构建64位的目录,armeabi-v7a-build为构建32位的目录) + + ![libxml2_test](pic/libxml2_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) diff --git a/thirdparty/libxml2/docs/pic/libxml2_install_dir.png b/thirdparty/libxml2/docs/pic/libxml2_install_dir.png new file mode 100644 index 0000000000000000000000000000000000000000..1fbb57c3514eceb2a11257d81422cede8f8c167c GIT binary patch literal 11142 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 IwR-%&0ApJ|=l}o! literal 0 HcmV?d00001 diff --git a/thirdparty/libxml2/docs/pic/libxml2_usage.png b/thirdparty/libxml2/docs/pic/libxml2_usage.png new file mode 100644 index 0000000000000000000000000000000000000000..f2d17900a93fee2d6227b80539b7c8bc77d93d83 GIT binary patch literal 18371 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 literal 0 HcmV?d00001 -- Gitee