File ctucanfd-drv.spec of Package ctu_can_fd

Summary: CTU CAN FD IP Core Linux kernel driver/module
Name: ctucanfd-drv
Version: 1.2.0
Release: 1
Vendor: Czech Technical University in Prague
URL: https://canbus.pages.fel.cvut.cz/
License: GPL-2.0+
Group: System/Kernel
BuildArch: noarch
%if 0%{?suse_version}
BuildRequires: %kernel_module_package_buildreqs
BuildRequires: kernel-source
BuildRequires: openSUSE-release
%else
BuildRequires: kernel-headers kernel-devel kernel-rpm-macros kmod
BuildRequires: elfutils-libelf-devel
%endif
# Needed for rpmlint
%if 0%{?opensuse_bs}
BuildRequires: dkms
%endif
Requires(pre):  dkms
Requires(post): dkms
Source0: ctucanfd-drv_1.2.0.tar.xz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root/

%description
This package provides driver for the CTU CAN FD IP core.
It supports PCI express cards as well as it provides
platform driver for SoC integration when appropriate
device tree is provided

%prep
%setup

%build

%install
rm -rf $RPM_BUILD_ROOT/usr/src/ctucanfd-drv-%{version}
mkdir -p $RPM_BUILD_ROOT/usr/src/ctucanfd-drv-%{version}
cp -L driver/linux/* $RPM_BUILD_ROOT/usr/src/ctucanfd-drv-%{version}/
cp -L driver/dkms.conf $RPM_BUILD_ROOT/usr/src/ctucanfd-drv-%{version}/

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root)
/usr/src/ctucanfd-drv-%{version}/

%pre

%post

if [ -z "`dkms status -m ctucanfd-drv -v %{version}`" ]; then
    echo "Add module source to dkms"
    dkms add -m ctucanfd-drv -v %{version}
fi

# If we haven't loaded a tarball, then try building it for the current kernel
if [ `uname -r | grep -c "BOOT"` -eq 0 ] && [ -e /lib/modules/`uname -r`/build/include ]; then
    dkms build -m ctucanfd-drv -v %{version}
    dkms install -m ctucanfd-drv -v %{version}
elif [ `uname -r | grep -c "BOOT"` -gt 0 ]; then
    echo -e ""
    echo -e "Module build for the currently running kernel was skipped since you"
    echo -e "are running a BOOT variant of the kernel."
else
    echo -e ""
    echo -e "Module build for the currently running kernel was skipped since the"
    echo -e "kernel source for this kernel does not seem to be installed."
fi

exit 0

%preun
echo -e
echo -e "Uninstall of ctucanfd-drv module (version %{version}) beginning:"
dkms remove -m ctucanfd-drv -v %{version} --all --rpm_safe_upgrade
exit 0
openSUSE Build Service is sponsored by