diff --git a/distributeddatamgr_data_object.spec b/distributeddatamgr_data_object.spec index 95f1fba..b17d5a8 100644 --- a/distributeddatamgr_data_object.spec +++ b/distributeddatamgr_data_object.spec @@ -1,29 +1,33 @@ %define debug_package %{nil} %global oh_version OpenHarmony-v3.2-Release -%global distributeddatamgr_dir %{_builddir}/foundation/distributeddatamgr/ +%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: 2 +Release: 3 Summary: Distributed Data Object Management Framework License: Apache-2.0 Url: https://gitee.com/openharmony/distributeddatamgr_data_object -Source0: https://gitee.com/openharmony/distributeddatamgr_data_object/repository/archive/OpenHarmony-v3.2-Release.tar.gz#/distributeddatamgr_data_object-OpenHarmony-v3.2-Release.tar.gz -Source1: distributeddataobject_impl.BUILD.gn -Source2: bundle.json -Patch0: 0001-Trim-the-dependencies-on-hitrace-libuv.patch +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: libatomic, libicu-devel, libxml2-devel, openssl-devel, jsoncpp, jsoncpp-devel -BuildRequires: distributed-build, commonlibrary_c_utils, distributed-beget, notification_eventhandler, communication_dsoftbus, -BuildRequires: distributeddatamgr_kv_store, distributeddatamgr_relational_store +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, libatomic +Requires: libboundscheck Requires: hilog, commonlibrary_c_utils +Requires: communication_ipc, communication_dsoftbus Requires: systemabilitymgr_safwk, systemabilitymgr_samgr -Requires: security_dataclassification, communication_dsoftbus -Requires: distributeddatamgr_kv_store, distributeddatamgr_relational_store, distributeddatamgr_datamgr_service +Requires: distributedhardware_device_manager +Requires: distributeddatamgr_kv_store, distributeddatamgr_datamgr_service %description The object-oriented memory data management framework provides application @@ -35,50 +39,52 @@ Developers can easily use distributed object interfaces for object synchronizati %prep rm -rf %{_builddir}/* -cd %{_builddir} -cp -rp %{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 -mv build/openeuler/vendor %{_builddir}/ -%setup -q -T -a 0 -c -n %{distributeddatamgr_dir} -mv %{distributeddatamgr_dir}%{name}-%{oh_version} %{distributeddatamgr_dir}data_object -%patch0 -p1 -d %{distributeddatamgr_dir}data_object -cp -rf %{_builddir}/build/openeuler/compiler_gn/* %{_builddir}/ +cp -rf %{build_opt} %{_builddir}/build +ln -s %{_builddir}/build/build_scripts/build.sh %{_builddir}/build.sh +ln -s %{_builddir}/build/core/gn/dotfile.gn %{_builddir}/.gn +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 -cd %{_builddir} -rm -rf %{_builddir}/out %ifarch x86_64 -./build.sh --product-name openeuler --target-cpu x86_64 +%{_builddir}/build.sh --product-name openeuler --target-cpu x86_64 %endif %ifarch aarch64 -./build.sh --product-name openeuler --target-cpu arm64 +%{_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}/%{_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 -f %{SOURCE1} %{buildroot}/%{bundle_dir}/interfaces/innerkits/BUILD.gn -cp -f %{SOURCE2} %{buildroot}/%{bundle_dir}/ +cp %{SOURCE2} %{buildroot}/%{bundle_dir}/interfaces/innerkits/BUILD.gn +cp %{SOURCE3} %{buildroot}/%{bundle_dir}/ %ifarch aarch64 -module_out_path="out/openeuler/linux_clang_arm64/distributeddatamgr/data_object" -header_out_path="out/openeuler/innerkits/linux-arm64/data_object" +%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 -module_out_path="out/openeuler/linux_clang_x86_64/distributeddatamgr/data_object" -header_out_path="out/openeuler/innerkits/linux-x86_64/data_object" +%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}/${module_out_path}/*.so %{buildroot}%{_libdir} -install -m 0755 %{_builddir}/${module_out_path}/*.so %{buildroot}/system/lib64 +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/ +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` @@ -90,7 +96,6 @@ do done popd - %files %{_libdir}/*.so %{_includedir}/data_object/* @@ -98,6 +103,9 @@ popd /system/* %changelog +* Tue Nov 21 2023 Peng He - 1.0.0-3 +- Update build requires and requires. + * Thu Aug 03 2023 Peng He - 1.0.0-2 - Add requires and rectify the contents of the RPM package. diff --git a/distributeddataobject_impl.BUILD.gn b/distributeddataobject_impl.BUILD.gn index 0e9fae6..b4d5df3 100644 --- a/distributeddataobject_impl.BUILD.gn +++ b/distributeddataobject_impl.BUILD.gn @@ -15,7 +15,7 @@ import("//build/ohos.gni") config("objectstore_public_config") { visibility = [ ":*" ] - include_dirs = [ "." ] + include_dirs = [ "/usr/include/data_object" ] libs = [ "distributeddataobject_impl.z" ] }