108 lines
4.3 KiB
RPMSpec
108 lines
4.3 KiB
RPMSpec
%define debug_package %{nil}
|
|
%global build_opt /opt/distributed-middleware-build
|
|
%global oh_version OpenHarmony-v3.2-Release
|
|
%global security_path %{_builddir}/base/security
|
|
%global third_party_path %{_builddir}/third_party
|
|
|
|
Name: security_device_security_level
|
|
Version: 1.0.0
|
|
Release: 1%{?dist}
|
|
Summary: Device Safety Level Management Service
|
|
License: Apache-2.0
|
|
URL: https://gitee.com/openharmony/security_device_security_level
|
|
Source1: security_device_security_level.tar.gz
|
|
Source2: dslm_sdk.bundle.json
|
|
Source3: dslm_sdk.BUILD.gn
|
|
|
|
BuildRequires: gcc, make, hilog, kernel-devel, uname-build-checks
|
|
BuildRequires: distributed-build, distributed-beget
|
|
BuildRequires: commonlibrary_c_utils
|
|
BuildRequires: distributedhardware_device_manager
|
|
BuildRequires: notification_eventhandler
|
|
BuildRequires: communication_ipc
|
|
BuildRequires: security_device_auth, security_huks
|
|
BuildRequires: systemabilitymgr_safwk, systemabilitymgr_samgr
|
|
BuildRequires: cjson-devel, openssl-devel
|
|
|
|
Requires: hilog
|
|
Requires: distributed-beget
|
|
Requires: commonlibrary_c_utils
|
|
Requires: distributedhardware_device_manager
|
|
Requires: notification_eventhandler
|
|
Requires: communication_ipc
|
|
Requires: security_device_auth, security_huks
|
|
Requires: systemabilitymgr_safwk, systemabilitymgr_samgr
|
|
Requires: cjson-devel, openssl-devel
|
|
|
|
%description
|
|
The OpenHarmony distributed technology can converge resources from different devices to form a Super Device. Poor security capabilities of any device may threaten the security of the Super Device. The Device Security Level Management (DSLM) module is introduced to manage the security levels of OpenHarmony devices.
|
|
|
|
# Decompress source code package, make patches to the source code.
|
|
%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 %{security_path}
|
|
|
|
|
|
|
|
# make.
|
|
%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}/device_security_level
|
|
install -d -m 0755 %{buildroot}/%{_libdir}
|
|
install -d -m 0755 %{buildroot}/system/lib64
|
|
install -d -m 0755 %{buildroot}%{build_opt}/openeuler/compiler_gn/base/security/device_security_level/interfaces/inner_api
|
|
install -d -m 0755 %{buildroot}%{build_opt}/openeuler/compiler_gn/base/security/device_security_level/oem_property/ohos/
|
|
|
|
%ifarch aarch64
|
|
%define header_out_path out/openeuler/innerkits/linux-arm64/device_security_level
|
|
%define module_out_path out/openeuler/linux_clang_arm64/security/device_security_level
|
|
%endif
|
|
%ifarch x86_64
|
|
%define header_out_path out/openeuler/innerkits/linux-x86_64/device_security_level
|
|
%define module_out_path out/openeuler/linux_clang_x86_64/security/device_security_level
|
|
%endif
|
|
|
|
#cp .h file to /usr/include
|
|
find %{_builddir}/%{header_out_path} -name *.h -print0 | xargs -0 -i cp -rf {} %{buildroot}%{_includedir}/device_security_level/
|
|
|
|
#cp .so file to /system/lib and /user/lib
|
|
install -m 0755 %{_builddir}/%{module_out_path}/*.so %{buildroot}%{_libdir}
|
|
install -m 0755 %{_builddir}/%{module_out_path}/*.so %{buildroot}/system/lib64
|
|
|
|
#cp bundle.json
|
|
install -m 0755 %{SOURCE2} %{buildroot}%{build_opt}/openeuler/compiler_gn/base/security/device_security_level/bundle.json
|
|
|
|
#cp BUILD.gn
|
|
install -m 0755 %{SOURCE3} %{buildroot}%{build_opt}/openeuler/compiler_gn/base/security/device_security_level/interfaces/inner_api/BUILD.gn
|
|
|
|
#cp yaml
|
|
install -m 0755 %{security_path}/device_security_level/hisysevent.yaml %{buildroot}%{build_opt}/openeuler/compiler_gn/base/security/device_security_level/
|
|
|
|
# copy ko file to the certain path on deployment environment.
|
|
%files
|
|
%{_libdir}/*.so
|
|
/system/*
|
|
%{_includedir}/device_security_level/*
|
|
%{build_opt}/*
|
|
%changelog
|
|
* Mon Nov 6 2023 Jiaqi Zhao <zhaojiaqi18@huawei.com> - 1.0.0-1
|
|
- Separating the device_security_level component from the master package
|