10 Star 0 Fork 5

src-openEuler/distributeddatamgr_data_object

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
distributeddatamgr_data_object.spec 4.43 KB
一键复制 编辑 原始数据 按行查看 历史
%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/data_object
Name: distributeddatamgr_data_object
Version: 1.0.0
Release: 3
Summary: Distributed Data Object Management Framework
License: Apache-2.0
Url: https://gitee.com/openharmony/distributeddatamgr_data_object
Source1: https://gitee.com/openharmony/distributeddatamgr_data_object/repository/archive/OpenHarmony-v3.2-Release.tar.gz#/distributeddatamgr_data_object-OpenHarmony-v3.2-Release.tar.gz
Source2: distributeddataobject_impl.BUILD.gn
Source3: bundle.json
Patch1: 0001-Trim-the-dependencies-on-hitrace-libuv.patch
BuildRequires: libboundscheck
BuildRequires: distributed-build, hilog, commonlibrary_c_utils
BuildRequires: communication_ipc, communication_dsoftbus
BuildRequires: systemabilitymgr_safwk, systemabilitymgr_samgr
BuildRequires: distributedhardware_device_manager
BuildRequires: distributeddatamgr_kv_store
Requires: libboundscheck
Requires: hilog, commonlibrary_c_utils
Requires: communication_ipc, communication_dsoftbus
Requires: systemabilitymgr_safwk, systemabilitymgr_samgr
Requires: distributedhardware_device_manager
Requires: distributeddatamgr_kv_store, distributeddatamgr_datamgr_service
%description
The object-oriented memory data management framework provides application
developers with basic data object management capabilities such as creating,
querying, deleting, modifying, and subscribing to memory objects. It also
has distributed capabilities to meet the collaborative needs of data objects
between multiple devices in the same application in the super terminal scenario.
Developers can easily use distributed object interfaces for object synchronization within trusted devices.
%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}/data_object" ]; then
rm -rf %{distributeddata_dir}/data_object
fi
mv %{distributeddata_dir}/%{name}-%{oh_version} %{distributeddata_dir}/data_object
%patch -P1 -p1 -d %{distributeddata_dir}data_object
%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
install -d -m 0755 %{buildroot}/%{_includedir}/data_object
install -d -m 0755 %{buildroot}/%{_libdir}
install -d -m 0755 %{buildroot}/%{bundle_dir}/interfaces/innerkits
install -d -m 0755 %{buildroot}/system/lib64
cp %{SOURCE2} %{buildroot}/%{bundle_dir}/interfaces/innerkits/BUILD.gn
cp %{SOURCE3} %{buildroot}/%{bundle_dir}/
%ifarch aarch64
%define lib_out_path out/openeuler/linux_clang_arm64/distributeddatamgr/data_object
%define header_out_path out/openeuler/innerkits/linux-arm64/data_object
%endif
%ifarch x86_64
%define lib_out_path out/openeuler/linux_clang_x86_64/distributeddatamgr/data_object
%define header_out_path out/openeuler/innerkits/linux-x86_64/data_object
%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}/data_object/
pushd %{_builddir}/foundation/distributeddatamgr/data_object
for include_file in `find . \( -name test -o -name jskitsimpl \) -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}/data_object/*
%{bundle_dir}/*
/system/*
%changelog
* Tue Nov 21 2023 Peng He <hepeng68@huawei.com> - 1.0.0-3
- Update build requires and requires.
* Thu Aug 03 2023 Peng He <hepeng68@huawei.com> - 1.0.0-2
- Add requires and rectify the contents of the RPM package.
* Wed Jun 07 2023 Ge Wang <wang__ge@126.com> - 1.0.0-1
- init package
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/src-openeuler/distributeddatamgr_data_object.git
git@gitee.com:src-openeuler/distributeddatamgr_data_object.git
src-openeuler
distributeddatamgr_data_object
distributeddatamgr_data_object
master

搜索帮助