1 Star 0 Fork 7

s_c_c/distributeddatamgr_relational_store

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
distributeddatamgr_relational_store.spec 5.30 KB
一键复制 编辑 原始数据 按行查看 历史
s_c_c 提交于 2024-08-20 11:03 . Fix public_config visibility for gn
%define debug_package %{nil}
%global oh_version OpenHarmony-v3.2-Release
%global distributeddata_dir %{_builddir}/foundation/distributeddatamgr/
%global build_opt /opt/distributed-middleware-build
%global bundle_dir %{build_opt}/openeuler/compiler_gn/foundation/distributeddatamgr/relational_store
Name: distributeddatamgr_relational_store
Version: 1.0.0
Release: 5
Summary: Local Relational Data Management from OpenHarmony
License: Apache-2.0
Url: https://gitee.com/openharmony/distributeddatamgr_relational_store
Source1: https://gitee.com/openharmony/distributeddatamgr_relational_store/repository/archive/OpenHarmony-v3.2-Release.tar.gz#/distributeddatamgr_relational_store-OpenHarmony-v3.2-Release.tar.gz
Source2: bundle.json
Source3: appdatafwk.BUILD.gn
Source4: dataability.BUILD.gn
Source5: share.adapter.BUILD.gn
Source6: rdb.BUILD.gn
Patch1: 0001-remove-useless-dependencies.patch
Patch2: 0002-establish-relational-store-dependence-on-boundscheck.patch
Patch3: 0003-feat-for-embedded-remove-c99-designator-cflags.patch
Patch4: 0004-Fix-public_config-visibility-for-gn.patch
BuildRequires: libboundscheck, libicu-devel, libxml2-devel
BuildRequires: distributed-build, hilog, commonlibrary_c_utils
BuildRequires: communication_ipc, communication_dsoftbus
BuildRequires: distributeddatamgr_kv_store
Requires: libboundscheck, libxml2-devel, libicu-devel
Requires: hilog, commonlibrary_c_utils
Requires: systemabilitymgr_safwk, systemabilitymgr_samgr
Requires: communication_ipc, communication_dsoftbus
Requires: distributeddatamgr_kv_store
%description
A relational database (RDB) is a database that manages data based on a relational model. The OpenHarmony relational database provides a complete mechanism for managing local databases based on the SQLite component.
%prep
rm -rf %{_builddir}/*
cp -rf %{build_opt} %{_builddir}/build
[ ! -L "%{_builddir}/build.sh" ] && ln -s %{_builddir}/build/build_scripts/build.sh %{_builddir}/build.sh
[ ! -L "%{_builddir}/.gn" ] && ln -s %{_builddir}/build/core/gn/dotfile.gn %{_builddir}/.gn
[ ! -L "%{_builddir}/build.py" ] && ln -s %{_builddir}/build/lite/build.py %{_builddir}/build.py
cp -rf %{_builddir}/build/openeuler/vendor %{_builddir}/
cp -rf %{_builddir}/build/openeuler/compiler_gn/* %{_builddir}
%setup -q -D -T -a 1 -c -n %{distributeddata_dir}
if [ -d "%{distributeddata_dir}/relational_store" ]; then
rm -rf %{distributeddata_dir}/relational_store
fi
mv %{distributeddata_dir}/%{name}-%{oh_version} %{distributeddata_dir}/relational_store
%patch -P1 -p1 -d %{distributeddata_dir}/relational_store
%patch -P2 -p1 -d %{_builddir}/foundation
%patch -P3 -p1 -d %{distributeddata_dir}/relational_store
%patch -P4 -p1 -d %{distributeddata_dir}/relational_store
%build
%ifarch x86_64
%{_builddir}/build.sh --product-name openeuler --target-cpu x86_64
%endif
%ifarch aarch64
%{_builddir}/build.sh --product-name openeuler --target-cpu arm64
%endif
%install
%define appdatafwk_dir %{bundle_dir}/interfaces/inner_api/appdatafwk
%define dataability_dir %{bundle_dir}/interfaces/inner_api/dataability
%define share_adapter_dir %{bundle_dir}/interfaces/inner_api/rdb_data_share_adapter
%define rdb_dir %{bundle_dir}/interfaces/inner_api/rdb
install -d -m 0755 %{buildroot}/%{_includedir}/relational_store
install -d -m 0755 %{buildroot}/%{_libdir}
install -d -m 0755 %{buildroot}/%{appdatafwk_dir}
install -d -m 0755 %{buildroot}/%{dataability_dir}
install -d -m 0755 %{buildroot}/%{share_adapter_dir}
install -d -m 0755 %{buildroot}/%{rdb_dir}
install -d -m 0755 %{buildroot}/system/lib64
cp %{SOURCE2} %{buildroot}%{bundle_dir}
cp %{SOURCE3} %{buildroot}%{appdatafwk_dir}/BUILD.gn
cp %{SOURCE4} %{buildroot}%{dataability_dir}/BUILD.gn
cp %{SOURCE5} %{buildroot}%{share_adapter_dir}/BUILD.gn
cp %{SOURCE6} %{buildroot}%{rdb_dir}/BUILD.gn
%ifarch aarch64
%define lib_out_path out/openeuler/linux_clang_arm64/distributeddatamgr/relational_store
%define header_out_path out/openeuler/innerkits/linux-arm64/relational_store
%endif
%ifarch x86_64
%define lib_out_path out/openeuler/linux_clang_x86_64/distributeddatamgr/relational_store
%define header_out_path out/openeuler/innerkits/linux-x86_64/relational_store
%endif
install -m 0755 %{_builddir}/%{lib_out_path}/*.so %{buildroot}/%{_libdir}
install -m 0755 %{_builddir}/%{lib_out_path}/*.so %{buildroot}/system/lib64/
find %{_builddir}/%{header_out_path} -name *.h -print0 | xargs -0 -i cp -rf {} %{buildroot}/%{_includedir}/relational_store/
pushd %{_builddir}/foundation/distributeddatamgr/relational_store/
for include_file in `find . \( -name js -o -name test -o -name mock \) -prune -o -name "*.h" -type f`
do
if [[ ${include_file} != *.h ]]; then
continue
fi
cp --parents ${include_file} %{buildroot}%{bundle_dir}
done
popd
%files
%{_libdir}/*.so
%{_includedir}/relational_store/*
%{bundle_dir}/*
/system/*
%changelog
* Tue Aug 20 2024 s_c_c <[email protected]> - 1.0.0-5
- Fix public_config visibility for gn.
* Fri Jun 28 2024 s_c_c <[email protected]> - 1.0.0-4
- Remove c99 designator unrecognized option and fix sysroot for embedded.
* Tue Nov 21 2023 Peng He <[email protected]> - 1.0.0-3
- Update build requires and requires.
* Thu Aug 03 2023 Peng He <[email protected]> - 1.0.0-2
- Add requires and rectify the contents of the RPM package.
* Fri Jun 9 2023 Ge Wang <[email protected]> - 1.0.0-1
- init package
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/s-c-c/distributeddatamgr_relational_store.git
[email protected]:s-c-c/distributeddatamgr_relational_store.git
s-c-c
distributeddatamgr_relational_store
distributeddatamgr_relational_store
master

搜索帮助