diff options
Diffstat (limited to 'safwk.spec')
-rw-r--r-- | safwk.spec | 125 |
1 files changed, 125 insertions, 0 deletions
diff --git a/safwk.spec b/safwk.spec new file mode 100644 index 0000000..9865b9f --- /dev/null +++ b/safwk.spec @@ -0,0 +1,125 @@ +%define debug_package %{nil} +%global openHarmony_source_release OpenHarmony-v3.2-Release +%global samgr_dir %{_builddir}/foundation/systemabilitymgr +%global build_opt /opt/distributed-middleware-build +%global safwk_path %{buildroot}%{build_opt}/openeuler/compiler_gn/foundation/systemabilitymgr/safwk + +Name: systemabilitymgr_safwk +Version: 1.0.0 +Release: 5 +Summary: System ability manager +License: Apache-2.0 +Url: https://gitee.com/openharmony/systemabilitymgr_safwk +Source1: https://gitee.com/openharmony/systemabilitymgr_safwk/repository/archive/%{openHarmony_source_release}.tar.gz #/systemabilitymgr_safwk-%{openHarmony_source_release}.tar.gz +Source2: safwk.bundle.json +Source3: innerkits.safwk.BUILD.gn +Source4: services.safwk.BUILD.gn +Source5: start_services.sh +Source6: stop_services.sh + +Patch1: 0000-remove-dependency-on-hitrace-safwk.patch +Patch2: 0001-feat-for-embedded-fix-config_safwk-include_dirs.patch + +BuildRequires: gcc, make, hilog, libboundscheck +BuildRequires: libatomic, libxml2-devel, cjson-devel +BuildRequires: distributed-build, distributed-beget +BuildRequires: commonlibrary_c_utils +BuildRequires: notification_eventhandler +BuildRequires: communication_ipc +BuildRequires: systemabilitymgr_samgr + +Requires: commonlibrary_c_utils +Requires: distributed-beget +Requires: notification_eventhandler +Requires: communication_ipc +Requires: systemabilitymgr_samgr + +%description +OpenEuler supports samgr for distributed softbus capability +%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,不用autosetup,distributed-build除外 +mkdir -p %{samgr_dir} +%setup -q -D -T -a 1 -c -n %{samgr_dir} +# patch命令统一使用-P来指定第几个patch +%patch -P1 -p1 -d %{samgr_dir}/safwk +%patch -P2 -p1 -d %{samgr_dir}/safwk + +%build +rm -rf %{_builddir}/out +%ifarch x86_64 +bash %{_builddir}/build.sh --product-name openeuler --target-cpu x86_64 +%endif + +%ifarch aarch64 +bash %{_builddir}/build.sh --product-name openeuler --target-cpu arm64 +%endif + +%install +install -d -m 0755 %{buildroot}/%{_includedir}/safwk +install -d -m 0755 %{buildroot}/%{_libdir} +install -d -m 0755 %{buildroot}/%{_bindir} +install -d -m 0755 %{buildroot}/system/bin/ +install -d -m 0755 %{safwk_path}/interfaces/innerkits/safwk +install -d -m 0755 %{safwk_path}/services/safwk + +%ifarch aarch64 +module_out_path="out/openeuler/linux_clang_arm64" +%endif +%ifarch x86_64 +module_out_path="out/openeuler/linux_clang_x86_64" +%endif + +# prepare so +install -m 0755 %{_builddir}/${module_out_path}/systemabilitymgr/safwk/*.so %{buildroot}/%{_libdir} + +# prepare bin +install -m 0755 %{_builddir}/${module_out_path}/systemabilitymgr/safwk/sa_main %{buildroot}/%{_bindir} +install -m 0755 %{_builddir}/${module_out_path}/systemabilitymgr/safwk/sa_main %{buildroot}/system/bin/ +install -m 0755 %{SOURCE5} %{buildroot}/system/bin/ +install -m 0755 %{SOURCE6} %{buildroot}/system/bin/ + +# prepare head files +install -m 554 %{samgr_dir}/safwk/services/safwk/include/*.h %{buildroot}/%{_includedir}/safwk +install -m 554 %{samgr_dir}/safwk/interfaces/innerkits/safwk/*.h %{buildroot}/%{_includedir}/safwk +# cp json file +install -m 554 %{SOURCE2} %{safwk_path}/bundle.json + +# cp gn file +install -m 554 %{SOURCE3} %{safwk_path}/interfaces/innerkits/safwk/BUILD.gn +install -m 554 %{SOURCE4} %{safwk_path}/services/safwk/BUILD.gn + +#create soft link +ln -s /usr/include/safwk/system_ability.h %{safwk_path}/interfaces/innerkits/safwk/system_ability.h + +%files +%{_includedir}/safwk/* +%{_libdir}/*.so +%{_bindir}/sa_main +/system/* +%{build_opt}/* + +%changelog +* Tue Apr 2 2024 s_c_c <shichuchao@huawei.com> - 1.0.0-5 +- Fix BUILD.gn sysroot path for embedded + +* Mon Apr 1 2024 s_c_c <shichuchao@huawei.com> - 1.0.0-4 +- Fix config_safwk include_dirs for embedded + +* Wed Mar 27 2024 tianhang <tian_hang@hoperun.com> - 1.0.0-3 +- update version to 1.0.0-3 +- +* Mon Dec 18 2023 Peng He <hepeng68@huawei.com> - 1.0.0-2 +- Add shell scripts for services start/stop + +* Thu Oct 12 2023 muyuying <muyuying1@huawei.com> - 1.0.0-1 +- Init and adapt safwk to openEuler |