diff --git a/.gitignore b/.gitignore index 785a537..f4098d0 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,7 @@ compile_commands.json libsimple.* build/ build-ios/ +build-ohos/ *.gch bin/ output/ @@ -20,4 +21,4 @@ examples/go/libsimple-osx-x64/ cmake-build-debug/ -.vscode/ \ No newline at end of file +.vscode/ diff --git a/README.md b/README.md index d396d7f..d7fc290 100644 --- a/README.md +++ b/README.md @@ -83,6 +83,19 @@ make install ./build-ios.sh ``` +支持 ohos 编译: + +从 [官方发布渠道](https://gitcode.com/openharmony/docs/blob/master/en/release-notes/OpenHarmony-v5.0.1-release.md#acquiring-source-code-from-mirrors)下载适用于目标平台的SDK. +``` +tar -zxvf ohos-sdk.tar.gz +cd $OHOS_SDK/Linux +for i in *.zip;do unzip ${i};done +``` +开始编译 +``` +./build-ohos.sh +``` + ### 代码 - `src/entry` 入口文件,注册 sqlite tokenizer 和函数 - `src/simple_tokenizer` 分词器实现 diff --git a/build-ohos.sh b/build-ohos.sh new file mode 100644 index 0000000..f5fc2a0 --- /dev/null +++ b/build-ohos.sh @@ -0,0 +1,21 @@ +#!/bin/sh + +current_dir=$(pwd)/$(dirname "$0") +build_dir="${current_dir}/build-ohos" +lib_prefix="${current_dir}/output" +CMAKE="${OHOS_SDK}/native/build-tools/cmake/bin/cmake" +TOOLCHAIN_FILE="${OHOS_SDK}/native/build/cmake/ohos.toolchain.cmake" +OHOS_ARCH="arm64-v8a" + +mkdir -p "$build_dir" && cd "$build_dir" || exit + +"$CMAKE" \ + -DCMAKE_TOOLCHAIN_FILE="$TOOLCHAIN_FILE" \ + -DCMAKE_INSTALL_PREFIX="$lib_prefix" \ + -DOHOS_ARCH="$OHOS_ARCH" \ + -DCMAKE_CXX_FLAGS="-Wno-unused-command-line-argument" \ + -DCMAKE_C_FLAGS="-Wno-unused-command-line-argument" \ + "$current_dir" + +make +make install