File anbox-modules.spec of Package anbox-modules

#
# spec file for package anbox-modules
#
# copyright (c) 2023 munix9@googlemail.com
#

# needssslcertforbuild

Name:           anbox-modules
Version:        20200614.98f0f3b
Release:        0
Summary:        Anbox binder (ashmem) kernel module
License:        GPL-2.0-only
Group:          System/Kernel
URL:            https://github.com/anbox/anbox-modules
Source0:        %{name}-%{version}.tar.xz
Source1:        %{name}-preamble
# https://github.com/anbox/anbox-modules/pull/76
Patch0:         fix-kernel-5_7.patch
Patch1:         fix-leap-15_4.patch
# according to /usr/src/linux/kernel/configs/android-base.config
Patch2:         fix-binder-devices.patch
BuildRequires:  %{kernel_module_package_buildreqs}
%kernel_module_package -n anbox -p %{SOURCE1}

%description
Anbox binder (ashmem) out-of-tree kernel module.

%package autoload
Summary:        Autoload driver for binder (ashmem) module
Requires:       systemd
Supplements:    kmod(binder_linux.ko)
BuildArch:      noarch

%description autoload
Configuration files to autoload the modules during system startup.

%prep
%autosetup -p1

# no ashmem module for kernel >= 6.3 (tw)

%define _mods binder
sed -i '/ashmem/d' anbox.conf 99-anbox.rules


set -- *
mkdir source
mv "$@" source/
mkdir obj

%build
for flavor in %{flavors_to_build} ; do
    rm -rf obj/$flavor
    cp -r source obj/$flavor
    for _mod in %{_mods} ; do
        %make_build V=1 -C %{kernel_source $flavor} %{?linux_make_arch} modules M=$PWD/obj/$flavor/$_mod
    done
done

%install
export INSTALL_MOD_PATH=%{buildroot}
export INSTALL_MOD_DIR='%{kernel_module_package_moddir}'

for flavor in %{flavors_to_build} ; do
    for _mod in %{_mods} ; do
        make V=1 -C %{kernel_source $flavor} modules_install M=$PWD/obj/$flavor/$_mod
    done
done

export BRP_PESIGN_FILES='*.ko'

install -D -m 0644 -t %{buildroot}%{_modulesloaddir} source/anbox.conf
install -D -m 0644 -t %{buildroot}%{_udevrulesdir} source/99-anbox.rules

%files autoload
%license source/debian/copyright
%doc source/README.md
%dir %{_modulesloaddir}
%{_modulesloaddir}/anbox.conf
%{_udevrulesdir}/99-anbox.rules

%changelog
openSUSE Build Service is sponsored by