113 lines
4.3 KiB
RPMSpec
113 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_huks
|
|
Version: 1.0.0
|
|
Release: 1%{?dist}
|
|
Summary: Key management service
|
|
License: Apache-2.0
|
|
URL: https://gitee.com/openharmony/security_huks
|
|
Source1: https://gitee.com/openharmony/security_huks/repository/archive/OpenHarmony-v3.2-Release.tar.gz #/security_huks-OpenHarmony-v3.2-Release.tar.gz
|
|
Source2: huks.BUILD.gn
|
|
Source3: huks.bundle.json
|
|
|
|
Patch1: 0001-adapt-compilation-tailor-dependencies.patch
|
|
|
|
BuildRequires: gcc, make, hilog, kernel-devel, uname-build-checks
|
|
BuildRequires: distributed-build, distributed-beget
|
|
BuildRequires: commonlibrary_c_utils
|
|
BuildRequires: notification_eventhandler
|
|
BuildRequires: communication_ipc
|
|
BuildRequires: systemabilitymgr_safwk, systemabilitymgr_samgr
|
|
BuildRequires: openssl-devel
|
|
|
|
|
|
Requires: distributed-beget
|
|
Requires: commonlibrary_c_utils
|
|
Requires: notification_eventhandler
|
|
Requires: communication_ipc
|
|
Requires: systemabilitymgr_safwk, systemabilitymgr_samgr
|
|
BuildRequires: openssl-devel
|
|
|
|
%description
|
|
OpenHarmony Universal KeyStore (HUKS) provides applications with key library capabilities, such as key management and cryptographic operations on keys. HUKS also provides APIs for applications to import or generate keys.
|
|
|
|
# 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}
|
|
mv %{security_path}/%{name}-%{oh_version} %{security_path}/huks
|
|
%patch -P1 -p1 -d %{security_path}/huks
|
|
|
|
%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}/huks
|
|
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/huks/interfaces/innerkits/huks_standard/main/
|
|
|
|
%ifarch aarch64
|
|
%define module_out_path out/openeuler/linux_clang_arm64/security/huks
|
|
%define header_out_path out/openeuler/innerkits/linux-arm64/huks
|
|
%endif
|
|
|
|
%ifarch x86_64
|
|
%define module_out_path out/openeuler/linux_clang_x86_64/security/huks
|
|
%define header_out_path out/openeuler/innerkits/linux-x86_64/huks
|
|
%endif
|
|
# prepare head files
|
|
find %{_builddir}/${header_out_path} -name *.h -print0 | xargs -0 -i cp -rf {} %{buildroot}%{_includedir}/huks/
|
|
install -m 0755 %{_builddir}/base/security/huks/frameworks/huks_standard/main/common/include/*.h %{buildroot}%{_includedir}/huks/
|
|
|
|
# copy executable file.
|
|
install -m 0755 %{_builddir}/%{module_out_path}/*.so %{buildroot}%{_libdir}
|
|
install -m 0755 %{_builddir}/%{module_out_path}/*.so %{buildroot}/system/lib64
|
|
|
|
#cp json file
|
|
install -m 0755 %{SOURCE3} %{buildroot}%{build_opt}/openeuler/compiler_gn/base/security/huks/bundle.json
|
|
|
|
#cp gn file
|
|
install -m 0755 %{SOURCE2} %{buildroot}%{build_opt}/openeuler/compiler_gn/base/security/huks/interfaces/innerkits/huks_standard/main/BUILD.gn
|
|
|
|
#cp yaml file
|
|
install -m 0755 %{_builddir}/base/security/huks/hisysevent.yaml %{buildroot}%{build_opt}/openeuler/compiler_gn/base/security/huks
|
|
|
|
#create soft link
|
|
ln -s /usr/include/huks %{buildroot}%{build_opt}/openeuler/compiler_gn/base/security/huks/include
|
|
|
|
# copy ko file to the certain path on deployment environment.
|
|
%files
|
|
%{_libdir}/*.so
|
|
%{_includedir}/huks/*
|
|
# %{bundle_dir}/*
|
|
/system/*
|
|
%{build_opt}/*
|
|
%changelog
|
|
* Mon Oct 30 2023 Yuying Mu <muyuying1@huawei.com> - 1.0.0-1
|
|
- add gn file
|
|
* Sat Oct 07 2023 Peng He <hepeng68@huawei.com> - 1.0.0-1
|
|
* Tue Nov 21 2023 JiaQi Zhao <zhaojiaqi18@huawei.com> - 1.0.0-1
|
|
- adapt compilation, tailor dependencies on hitrace and hisysevent
|
|
|