# Copyright (c) 2023 Huawei Technologies Co., Ltd. All rights reserved. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. %global debug_package %{nil} %define with_eventhandler_lib 0 %define with_ko 1 Name: ft_utils Version: 1.0.0 Release: 2%{?dist} Summary: common library License: Apache-2.0 URL: https://gitee.com/openeuler/ft_utils Source0: https://gitee.com/openeuler/ft_utils/repository/archive/ft_utils-1.0.0.tar.gz Source1: https://gitee.com/openeuler/ft_utils/repository/archive/kernel_binder.tar.gz Patch0: 0001-update-kernel-dir-in-makefile.patch BuildRequires: clang python3 python3-pip python-toml tar cmake ninja-build compiler-rt BuildRequires: llvm-devel BuildRequires: kernel-devel uname-build-checks BuildRequires: distributed-build distributed-beget distributedhardware_device_manager BuildRequires: commonlibrary_c_utils BuildRequires: notification_eventhandler BuildRequires: communication_ipc communication_dsoftbus BuildRequires: security_device_auth security_huks security_device_security_level security_dataclassification BuildRequires: systemabilitymgr_safwk systemabilitymgr_samgr Requires: compiler-rt llvm-devel python3 Requires: distributed-beget distributedhardware_device_manager Requires: commonlibrary_c_utils Requires: notification_eventhandler Requires: communication_ipc communication_dsoftbus Requires: security_device_auth security_huks security_device_security_level security_dataclassification Requires: systemabilitymgr_safwk systemabilitymgr_samgr %description ft_utils module is a base commom library for ft_engine. %prep %setup -q -D -T -a 0 -c -n %{_builddir} %setup -q -D -T -a 1 -c -n %{_builddir} %patch -P0 -p1 -d %{_builddir}/kernel_binder %build %if 0%{?with_eventhandler_lib} cd %{_builddir}/%{name}-%{version} ./build.sh %endif %if 0%{?with_ko} cd %{_builddir}/kernel_binder ./project.sh makeall %endif %install %if 0%{?with_eventhandler_lib} mkdir -p %{buildroot}%{_libdir} %ifarch x86_64 cp -pdf %{_builddir}/%{name}-%{version}/out/Debug/x64/common/common/lib*.so %{buildroot}%{_libdir} %endif %ifarch aarch64 cp -pdf %{_builddir}/%{name}-%{version}/out/Debug/aarch64/common/common/lib*.so %{buildroot}%{_libdir} %endif %endif mkdir -p %{buildroot}/usr/include/ft/event_loop cp -pdf %{_builddir}/%{name}-%{version}/event_loop/includes/*.h %{buildroot}/usr/include/ft/event_loop %if 0%{?with_ko} mkdir -p %{buildroot}/usr/share/sa cp -pdf %{_builddir}/kernel_binder/binder/src/binder_linux.ko %{buildroot}/usr/share/sa cp -pdf %{_builddir}/kernel_binder/ashmem/src/ashmem_linux.ko %{buildroot}/usr/share/sa cp -pdf %{_builddir}/kernel_binder/ft.pp %{buildroot}/usr/share/sa %endif %clean rm -rf %{buildroot} %post semodule -X 300 -i /usr/share/sa/ft.pp insmod /usr/share/sa/ashmem_linux.ko insmod /usr/share/sa/binder_linux.ko %files /usr/include/ft/event_loop/* %if 0%{?with_ko} /usr/share/sa/* %endif %changelog * Thu Dec 14 2023 Peng He - 1.0.0-2 - Update kernel dir in makefile * Mon Nov 6 2023 abc12133 - 1.0.0-1 -