summaryrefslogtreecommitdiffstats
path: root/rpm/generic
diff options
context:
space:
mode:
authorTurbo Fredriksson <[email protected]>2013-11-16 03:29:53 +0000
committerBrian Behlendorf <[email protected]>2014-06-05 13:46:49 -0700
commit69c7bdb6e70644bb2efebcee4bf109ace08eb0be (patch)
tree86f8fac21f17a87bf382282c2cadc0b6a6321f1b /rpm/generic
parent8b974ba036972d601542deec08d68a422a70c9f6 (diff)
Accept kernel source dir(s) specified by ./configure
This adds ability to set the location of the kernel via defines when building from the spec files. This is useful when building against a kernel installed in a non-standard location. Signed-off-by: Turbo Fredriksson <[email protected]> Signed-off-by: Brian Behlendorf <[email protected]> Closes #1874
Diffstat (limited to 'rpm/generic')
-rw-r--r--rpm/generic/zfs-kmod.spec.in43
1 files changed, 31 insertions, 12 deletions
diff --git a/rpm/generic/zfs-kmod.spec.in b/rpm/generic/zfs-kmod.spec.in
index 4eb25e02b..0284f6a7f 100644
--- a/rpm/generic/zfs-kmod.spec.in
+++ b/rpm/generic/zfs-kmod.spec.in
@@ -1,4 +1,33 @@
%define module @PACKAGE@
+
+%if !%{defined ksrc}
+%if 0%{?rhel}%{?fedora}
+%define ksrc ${kernel_version##*___}
+%else
+%define ksrc "$( \
+ if [ -e "/usr/src/linux-${kernel_version%%___*}" ]; then \
+ echo "/usr/src/linux-${kernel_version%%___*}"; \
+ elif [ -e "/lib/modules/${kernel_version%%___*}/source" ]; then \
+ echo "/lib/modules/${kernel_version%%___*}/source"; \
+ else \
+ echo "/lib/modules/${kernel_version%%___*}/build"; \
+ fi)"
+%endif
+%endif
+
+%if !%{defined kobj}
+%if 0%{?rhel}%{?fedora}
+%define kobj ${kernel_version##*___}
+%else
+%define kobj "$( \
+ if [ -e "/usr/src/linux-${kernel_version%%___*}" ]; then \
+ echo "/usr/src/linux-${kernel_version%%___*}"; \
+ else \
+ echo "/lib/modules/${kernel_version%%___*}/build"; \
+ fi)"
+%endif
+%endif
+
#define repo rpmfusion
#define repo chaos
@@ -125,18 +154,8 @@ for kernel_version in %{?kernel_versions}; do
cd _kmod_build_${kernel_version%%___*}
%configure \
--with-config=kernel \
-%if 0%{?rhel}%{?fedora}
- --with-linux="${kernel_version##*___}" \
- --with-linux-obj="${kernel_version##*___}" \
-%else
- --with-linux="$( \
- if [ -e "/lib/modules/${kernel_version%%___*}/source" ]; then \
- echo "/lib/modules/${kernel_version%%___*}/source"; \
- else \
- echo "/lib/modules/${kernel_version%%___*}/build"; \
- fi)" \
- --with-linux-obj="/lib/modules/${kernel_version%%___*}/build" \
-%endif
+ --with-linux=%{ksrc} \
+ --with-linux-obj=%{kobj} \
--with-spl="%{spldir}" \
--with-spl-obj="%{splobj}" \
%{debug} \