diff options
author | Neal Gompa (ニール・ゴンパ) <[email protected]> | 2017-10-15 15:58:12 -0400 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2017-10-15 12:58:12 -0700 |
commit | 28920ea3346c1c905c5f727ea3e54297e6257568 (patch) | |
tree | 60deef985965dea723ce675befead4acae0dcd34 | |
parent | 0cefc9dbcd9de8a35c51e172edabf2f2ecf15f92 (diff) |
Add DKMS package on Debian-based distributions
* config/deb.am: Enable building DKMS packages for Debian
* rpm/generic/spl-dkms.spec.in: Adjust spec to be Debian-compatible
* Condition kernel-devel Requires to RPM distros
* Ensure that --rpm_safe_upgrade isn't used on non-RPM distros
* config/deb.am: Drop CONFIG_KERNEL and CONFIG_USER guards
* Makefile.am: Add pkg-dkms target
Reviewed-by: Brian Behlendorf <[email protected]>
Signed-off-by: Neal Gompa <[email protected]>
Closes #657
-rw-r--r-- | Makefile.am | 1 | ||||
-rw-r--r-- | config/deb.am | 14 | ||||
-rw-r--r-- | rpm/generic/spl-dkms.spec.in | 8 |
3 files changed, 17 insertions, 6 deletions
diff --git a/Makefile.am b/Makefile.am index 4977448fd..05107cb19 100644 --- a/Makefile.am +++ b/Makefile.am @@ -50,5 +50,6 @@ etags: tags: ctags etags pkg: @DEFAULT_PACKAGE@ +pkg-dkms: @DEFAULT_PACKAGE@-dkms pkg-kmod: @DEFAULT_PACKAGE@-kmod pkg-utils: @DEFAULT_PACKAGE@-utils diff --git a/config/deb.am b/config/deb.am index a2bad0260..e05a175a4 100644 --- a/config/deb.am +++ b/config/deb.am @@ -29,23 +29,27 @@ deb-local: fi) deb-kmod: deb-local rpm-kmod -if CONFIG_KERNEL name=${PACKAGE}; \ version=${VERSION}-${RELEASE}; \ arch=`$(RPM) -qp $${name}-kmod-$${version}.src.rpm --qf %{arch} | tail -1`; \ pkg1=kmod-$${name}*$${version}.$${arch}.rpm; \ fakeroot $(ALIEN) --bump=0 --scripts --to-deb $$pkg1; \ $(RM) $$pkg1 -endif + +deb-dkms: deb-local rpm-dkms + name=${PACKAGE}; \ + version=${VERSION}-${RELEASE}; \ + arch=`$(RPM) -qp $${name}-dkms-$${version}.src.rpm --qf %{arch} | tail -1`; \ + pkg1=$${name}-dkms-$${version}.$${arch}.rpm; \ + fakeroot $(ALIEN) --bump=0 --scripts --to-deb $$pkg1; \ + $(RM) $$pkg1 deb-utils: deb-local rpm-utils -if CONFIG_USER name=${PACKAGE}; \ version=${VERSION}-${RELEASE}; \ arch=`$(RPM) -qp $${name}-$${version}.src.rpm --qf %{arch} | tail -1`; \ pkg1=$${name}-$${version}.$${arch}.rpm; \ fakeroot $(ALIEN) --bump=0 --scripts --to-deb $$pkg1; \ $(RM) $$pkg1 -endif -deb: deb-kmod deb-utils +deb: deb-kmod deb-dkms deb-utils diff --git a/rpm/generic/spl-dkms.spec.in b/rpm/generic/spl-dkms.spec.in index ac0ddd369..419624058 100644 --- a/rpm/generic/spl-dkms.spec.in +++ b/rpm/generic/spl-dkms.spec.in @@ -1,5 +1,9 @@ %{?!packager: %define packager Brian Behlendorf <[email protected]>} +%if ! 0%{?rhel}%{?fedora}%{?mageia}%{?suse_version} +%define not_rpm 1 +%endif + %define module @PACKAGE@ %define mkconf scripts/dkms.mkconf @@ -18,7 +22,9 @@ BuildArch: noarch Requires: dkms >= 2.2.0.2 Requires: gcc, make, perl +%if 0%{?rhel}%{?fedora}%{?mageia}%{?suse_version} Requires: kernel-devel +%endif Provides: %{module}-kmod = %{version} %description @@ -69,7 +75,7 @@ DKMS_META_ALIAS=`cat $CONFIG_H 2>/dev/null | if [ "$SPEC_META_ALIAS" = "$DKMS_META_ALIAS" ]; then echo -e echo -e "Uninstall of %{module} module ($SPEC_META_ALIAS) beginning:" - dkms remove -m %{module} -v %{version} --all --rpm_safe_upgrade + dkms remove -m %{module} -v %{version} --all %{!?not_rpm:--rpm_safe_upgrade} fi exit 0 |