[dkms/el5] Do not use latest upstream sources for RHEL 5

Simone Caronni slaanesh at fedoraproject.org
Thu Sep 25 12:39:05 UTC 2014


commit 23dd60c125679801f5b4dce4d7bb0432520650e9
Author: Simone Caronni <negativo17 at gmail.com>
Date:   Thu Sep 25 14:33:41 2014 +0200

    Do not use latest upstream sources for RHEL 5

 ...OST_BUILD-to-the-dkms_conf_variables-list.patch |   23 ++
 dkms-cleanup-after-removal.patch                   |   21 ++
 dkms-do-not-fail-on-modules-dir.patch              |   17 ++
 dkms-fix-mkrpm.patch                               |   12 +
 dkms-force-tarball.patch                           |   16 ++
 dkms-git.patch                                     |  223 ++++++++++++++++++++
 dkms-man.patch                                     |   46 ++++
 ...TRIP-0-as-the-default-for-the-STRIP-array.patch |   40 ++++
 dkms.service                                       |   11 +
 dkms.spec                                          |   71 +++++--
 sources                                            |    2 +-
 11 files changed, 467 insertions(+), 15 deletions(-)
---
diff --git a/dkms-add-POST_BUILD-to-the-dkms_conf_variables-list.patch b/dkms-add-POST_BUILD-to-the-dkms_conf_variables-list.patch
new file mode 100644
index 0000000..e3c271a
--- /dev/null
+++ b/dkms-add-POST_BUILD-to-the-dkms_conf_variables-list.patch
@@ -0,0 +1,23 @@
+From: Darik Horn <dajhorn at vanadac.com>
+Date: Mon, 27 Feb 2012 20:45:37 -0600
+Subject: Add POST_BUILD to the dkms_conf_variables list.
+
+The POST_BUILD directive is ignored by the read_conf() function
+because it not in dkms_conf_variables list.
+---
+ dkms | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/dkms b/dkms
+index b26af41..9355f4e 100644
+--- dkms.old/dkms	2013-07-21 15:36:36.058074643 +0200
++++ dkms/dkms	2013-07-21 15:37:03.615798203 +0200
+@@ -23,7 +23,7 @@
+ # All of the variables we will accept from dkms.conf.
+ # Does not include directives
+ readonly dkms_conf_variables="CLEAN REMAKE_INITRD remake_initrd PACKAGE_NAME
+-       PACKAGE_VERSION POST_ADD POST_INSTALL POST_REMOVE PRE_BUILD
++       PACKAGE_VERSION POST_ADD POST_BUILD POST_INSTALL POST_REMOVE PRE_BUILD
+        PRE_INSTALL BUILD_EXCLUSIVE_KERNEL BUILD_EXCLUSIVE_ARCH
+        build_exclude OBSOLETE_BY MAKE MAKE_MATCH MODULES_CONF
+        modules_conf_array PATCH PATCH_MATCH patch_array BUILT_MODULE_NAME
diff --git a/dkms-cleanup-after-removal.patch b/dkms-cleanup-after-removal.patch
new file mode 100644
index 0000000..725cd17
--- /dev/null
+++ b/dkms-cleanup-after-removal.patch
@@ -0,0 +1,21 @@
+From: Andreas Beckmann <debian at abeckmann.de>
+Subject: remove the directory where the module was installed
+ after removing a module try to remove the path (below
+ /lib/modules/KVERS) were the module was installed to cleanup any
+ remaining empty directories
+Bug-Debian: http://bugs.debian.org/657145
+
+diff --git a/dkms b/dkms
+index 042acc0..c96cd8f 100644
+--- dkms.old/dkms	2013-11-06 10:50:21.452660834 +0100
++++ dkms/dkms	2013-11-06 10:50:26.685549748 +0100
+@@ -1621,6 +1621,9 @@
+ 	    echo $" - Uninstallation"
+ 	    echo $"   - Deleting from: $install_tree/$1${real_dest_module_location}/"
+ 	    rm -f "$install_tree/$1${real_dest_module_location}/${dest_module_name[$count]}$module_suffix"
++	    dir_to_remove="${real_dest_module_location#/}"
++	    while [ "${dir_to_remove}" != "${dir_to_remove#/}" ]; do dir_to_remove="${dir_to_remove#/}" ; done
++	    (cd "$install_tree/$1" && rmdir --parents --ignore-fail-on-non-empty "${dir_to_remove}" || true)
+ 	    echo $" - Original module"
+ 	    if [[ -e $dkms_tree/$module/original_module/$1/$2/${dest_module_name[$count]}$module_suffix ]]; then
+ 		case "$running_distribution" in
diff --git a/dkms-do-not-fail-on-modules-dir.patch b/dkms-do-not-fail-on-modules-dir.patch
new file mode 100644
index 0000000..93a5aa2
--- /dev/null
+++ b/dkms-do-not-fail-on-modules-dir.patch
@@ -0,0 +1,17 @@
+From: Andreas Beckmann <debian at abeckmann.de>
+Subject: do not fail if /lib/modules does not exist
+Bug-Debian: http://bugs.debian.org/666023
+
+diff --git a/dkms_common.postinst b/dkms_common.postinst
+index d8cf3a7..0c8cfc1 100644
+--- dkms.old/dkms_common.postinst	2013-11-04 16:31:42.101991371 +0100
++++ dkms/dkms_common.postinst	2013-11-04 16:40:04.854424946 +0100
+@@ -146,7 +146,7 @@
+     exit 1
+ fi
+ 
+-KERNELS=$(ls /lib/modules/)
++KERNELS=$(ls /lib/modules/ 2>/dev/null || true)
+ CURRENT_KERNEL=$(uname -r)
+ 
+ #We never want to keep an older version side by side to prevent conflicts
diff --git a/dkms-fix-mkrpm.patch b/dkms-fix-mkrpm.patch
new file mode 100644
index 0000000..7607fe0
--- /dev/null
+++ b/dkms-fix-mkrpm.patch
@@ -0,0 +1,12 @@
+diff -Naur dkms.old/template-dkms-mkrpm.spec dkms/template-dkms-mkrpm.spec
+--- dkms.old/template-dkms-mkrpm.spec	2013-08-29 15:30:10.120598818 +0200
++++ dkms/template-dkms-mkrpm.spec	2013-08-29 16:04:52.303135071 +0200
+@@ -52,7 +52,7 @@
+ fi
+ 
+ %post
+-for POSTINST in %{_libdir}/dkms/common.postinst %{_datarootdir}/%{module_name}/postinst; do
++for POSTINST in %{_prefix}/lib/dkms/common.postinst %{_datarootdir}/%{module_name}/postinst; do
+         if [ -f $POSTINST ]; then
+                 $POSTINST %{module_name} %{version} %{_datarootdir}/%{module_name}
+                 exit $?
diff --git a/dkms-force-tarball.patch b/dkms-force-tarball.patch
new file mode 100644
index 0000000..76a45fe
--- /dev/null
+++ b/dkms-force-tarball.patch
@@ -0,0 +1,16 @@
+diff -Naur dkms.old/dkms dkms/dkms
+--- dkms.old/dkms	2013-07-22 13:00:36.395130459 +0200
++++ dkms/dkms	2013-07-22 15:47:42.895163643 +0200
+@@ -2524,9 +2524,9 @@
+ 	die 6 $"Failed to make tarball."
+     fi
+     case $tarball_ext in
+-	gz) gzip -9 "$tarball_dest/$tarball_name";;
+-	bz2) bzip2 -9 "$tarball_dest/$tarball_name";;
+-	xz) xz -9 "$tarball_dest/$tarball_name";;
++	gz) gzip --force -9 "$tarball_dest/$tarball_name";;
++	bz2) bzip2 --force -9 "$tarball_dest/$tarball_name";;
++	xz) xz --force -9 "$tarball_dest/$tarball_name";;
+     esac
+     echo $""
+     echo $"DKMS: mktarball completed."
diff --git a/dkms-git.patch b/dkms-git.patch
new file mode 100644
index 0000000..4d14a68
--- /dev/null
+++ b/dkms-git.patch
@@ -0,0 +1,223 @@
+diff --git a/dkms b/dkms
+index abb01a4..5b02e85 100644
+--- a/dkms
++++ b/dkms
+@@ -69,14 +69,16 @@ invoke_command()
+     local exitval=0
+     [[ $verbose ]] && echo -e "$1" || echo -en "$2..."
+     if [[ $3 = background && ! $verbose ]]; then
+-	local exitval_file=$(mktemp_or_die $tmp_location/dkms.XXXXXX)
+-	(eval "$1" >/dev/null 2>&1; echo "exitval=$?" >> "$exitval_file") &
+-	while [[ -e $exitval_file && ! -s $exitval_file ]]; do
+-	    sleep 3
+-	    echo -en "."
+-	done
+-	. "$exitval_file"
+-	rm -f "$exitval_file"
++	local pid progresspid
++	(eval "$1" >/dev/null 2>&1) & pid=$!
++	while [ -d /proc/$pid ]; do
++		sleep 3
++		echo -en "."
++	done & progresspid=$!
++	wait $pid 2>/dev/null
++	exitval=$?
++	kill $progresspid 2>/dev/null
++	wait $progresspid 2>/dev/null
+     else
+ 	eval "$1"; exitval=$?
+     fi
+@@ -126,6 +128,7 @@ show_usage()
+     echo $"              [--kernelsourcedir=source-location] [--no-prepare-kernel] [--no-initrd]"
+     echo $"              [--binaries-only] [--source-only] [-r release (SuSE)] [--verbose]"
+     echo $"              [--size] [--spec=specfile] [--media=floppy|iso|tar] [--legacy-postinst=0|1]"
++    echo $"              [--no-depmod]"
+ }
+ 
+ VER()
+@@ -162,11 +165,14 @@ set_kernel_source_dir()
+ 
+ # A little test function for DKMS commands that only work on one kernel.
+ have_one_kernel() {
+-    (( ${#kernelver[@]} > 1 )) && \
+-	die 4 $"The action $1 does not support multiple kernel version" \
+-	$"parameters on the command line."
+-    [[ $all ]] && die 5 $"The action $1 does not support the --all" \
+-	$"parameter."
++       if (( ${#kernelver[@]} != 1 )); then
++	  die 4 $"The action $1 does not support multiple kernel version" \
++	  $"parameters on the command line."
++       fi
++       if [[ $all ]]; then
++           die 5 $"The action $1 does not support the --all" \
++	   $"parameter."
++       fi
+ }
+ 
+ # Set up the kernelver and arch arrays.  You must have a 1:1 correspondence --
+@@ -230,14 +236,17 @@ setup_kernels_arches()
+ 
+ do_depmod()
+ {
++    if [[ $no_depmod ]]; then
++        return
++    fi
+     # $1 = kernel version
+     if [ "${current_os}" != "Linux" ] ; then
+         return
+     fi
+     if [[ -f /boot/System.map-$1 ]]; then
+-	/sbin/depmod -a "$1" -F "/boot/System.map-$1"
++	depmod -a "$1" -F "/boot/System.map-$1"
+     else
+-	/sbin/depmod -a "$1"
++	depmod -a "$1"
+     fi
+ }
+ 
+@@ -276,7 +285,7 @@ make_initrd()
+     echo $"(If next boot fails, revert to $initrd.old-dkms image)"
+ 
+     if [[ $mkinitrd = dracut ]]; then
+-	invoke_command "$mkinitrd $1" "$mkinitrd" background
++	invoke_command "$mkinitrd -f $initrd_dir/$initrd $1" "$mkinitrd" background
+     elif [[ $mkinitrd = update-initramfs ]]; then
+ 	invoke_command "$mkinitrd -u" "$mkinitrd" background
+     elif $mkinitrd --version >/dev/null 2>&1; then
+@@ -646,6 +655,7 @@ read_conf()
+ 
+ # Little helper function for parsing the output of modinfo.
+ get_module_verinfo(){
++    unset res
+     local vals=
+     while read -a vals; do
+ 	case ${vals[0]} in
+@@ -1270,6 +1280,28 @@ build_module()
+     echo $"DKMS: build completed."
+ }
+ 
++# Force the installation of a module if this is listed
++# in the files in $forced_modules_dir, if any
++force_installation()
++{
++    forced_modules_dir="/usr/share/dkms/modules_to_force_install"
++    to_force=""
++    if [ -d $forced_modules_dir ]; then
++        for elem in $forced_modules_dir/*; do
++            if [ -e $elem ]; then
++                to_force="$to_force $(cat $elem)"
++            fi
++        done
++
++        for elem in $to_force; do
++            if [ "${1}" = "${elem}" ]; then
++                return 0
++            fi
++        done
++    fi
++    return 1
++}
++
+ # Install a previously built module
+ # There are huge swaths of code here that special-case for various distros.
+ # They should be split into their own functions.
+@@ -1280,6 +1312,13 @@ install_module()
+     local base_dir="$dkms_tree/$module/$module_version/$kernelver/$arch"
+     check_module_args install
+ 
++    # Save the status of $force
++    tmp_force="$force"
++
++    # If the module is set to be force-installed
++    force_installation $module && echo "Forcing installation of $module" \
++        && force="true"
++
+     # Make sure that kernel exists to install into
+     [[ -e $install_tree/$kernelver ]] || die 6 \
+ 	$"The directory $install_tree/$kernelver doesn't exist." \
+@@ -1417,6 +1456,9 @@ install_module()
+     }
+     echo $""
+     echo $"DKMS: install completed."
++
++    # Restore the status of $force
++    force="$tmp_force"
+ }
+ 
+ # List each kernel object that has been installed for a particular module.
+@@ -1769,7 +1811,7 @@ module_status_weak() {
+     # $1 = module, $2 = module version, $3 = kernel version weak installed to,
+     # $4 = kernel arch, $5 = kernel version built for
+     [[ $weak_modules ]] || return 1
+-    local weak_ko mod installed_ko f ret=1 oifs=$IFS
++    local m v k a weak_ko mod installed_ko f ret=1 oifs=$IFS
+     local -a already_found
+     for weak_ko in "$install_tree/"*/weak-updates/*; do
+ 	[[ -e $weak_ko ]] || continue
+@@ -3392,6 +3434,7 @@ try_source_tree=''
+ die_is_fatal="yes"
+ [ -x /sbin/weak-modules ] && weak_modules='/sbin/weak-modules'
+ [ -x /usr/lib/module-init-tools/weak-modules ] && weak_modules='/usr/lib/module-init-tools/weak-modules'
++no_depmod=""
+ 
+ action_re='^(remove|(auto|un)?install|match|mk(driverdisk|tarball|rpm|deb|dsc|kmp)|build|add|status|ldtarball)$'
+ 
+@@ -3437,6 +3480,7 @@ while (($# > 0)); do
+ 	--directive*)        read_arg _da "$1" "$2" || shift
+ 			     directive_array[${#directive_array[@]}]="$_da";;
+ 	--spec*)             read_arg specfile "$1" "$2" || shift;;
++	--no-depmod)         no_depmod="true";;
+ 	--debug)
+ 	    export PS4='${BASH_SOURCE}@${LINENO}(${FUNCNAME[0]}): '
+ 	    set -x;;
+@@ -3488,6 +3532,11 @@ if [[ $arch && $all ]]; then
+ fi
+ 
+ # Run the specified action
++if [ -z "$action" ]; then
++    show_usage
++    die 4 $"No action was specified."
++fi
++
+ for action_to_run in $action; do
+     setup_kernels_arches "$action_to_run"
+     case "$action_to_run" in
+diff --git a/dkms.8 b/dkms.8
+index 908d9db..e782d53 100644
+--- a/dkms.8
++++ b/dkms.8
+@@ -464,6 +464,13 @@ ensure that modules are compiled correctly.
+ This option keeps DKMS from cleaning your kernel source tree after a
+ build.
+ .TP
++.B \-\-no\-depmod
++This option prevents DKMS from running the depmod command during
++.B install
++and
++.B uninstall
++which will avoid (re)calculating module dependencies and thereby save time.
++.TP
+ .B \-\-kernelsourcedir <kernel\-source\-directory\-location>
+ Using this option you can specify the location of your kernel source
+ directory.  Most likely you will not need to set this if your kernel
+diff --git a/dkms.spec b/dkms.spec
+index 49717aa..aba685d 100644
+--- a/dkms.spec
++++ b/dkms.spec
+@@ -5,7 +5,7 @@ Release: 1%{?dist}
+ License: GPLv2+
+ Group: System Environment/Base
+ BuildArch: noarch
+-Requires: sed gawk findutils modutils tar cpio gzip grep mktemp
++Requires: sed gawk findutils modutils tar cpio gzip grep coreutils
+ Requires: bash > 1.99
+ # because Mandriva calls this package dkms-minimal
+ Provides: dkms-minimal = %{version}
+@@ -113,7 +113,6 @@ rm -rf $RPM_BUILD_ROOT
+ 
+ 
+ %post
+-[ -e /sbin/dkms ] && mv -f /sbin/dkms /sbin/dkms.old 2>/dev/null
+ # enable on initial install
+ [ $1 -lt 2 ] && /sbin/chkconfig dkms_autoinstaller on ||:
+ 
diff --git a/dkms-man.patch b/dkms-man.patch
new file mode 100644
index 0000000..85cb3ff
--- /dev/null
+++ b/dkms-man.patch
@@ -0,0 +1,46 @@
+diff -Naur dkms.old/dkms.8 dkms/dkms.8
+--- dkms.old/dkms.8	2013-11-06 10:25:33.980330455 +0100
++++ dkms/dkms.8	2013-11-06 10:27:03.426424552 +0100
+@@ -1,4 +1,42 @@
+ .\" -*- nroff -*-
++.\"
++.\" .SY, .YS, .OP macros from /usr/share/groff/1.21/tmac/an-ext.tmac
++.\"
++.\" Declare start of command synopsis.  Sets up hanging indentation.
++.de SY
++.  ie !\\n(mS \{\
++.    nh
++.    nr mS 1
++.    nr mA \\n(.j
++.    ad l
++.    nr mI \\n(.i
++.  \}
++.  el \{\
++.    br
++.    ns
++.  \}
++.
++.  HP \w'\fB\\$1\fP\ 'u
++.  B "\\$1"
++..
++.
++.
++.\" End of command synopsis.  Restores adjustment.
++.de YS
++.  in \\n(mIu
++.  ad \\n(mA
++.  hy \\n(HY
++.  nr mS 0
++..
++.
++.
++.\" Declare optional option.
++.de OP
++.  ie \\n(.$-1 \
++.    RI "[\fB\\$1\fP" "\ \\$2" "]"
++.  el \
++.    RB "[" "\\$1" "]"
++..
+ .TH DKMS 8 "June 2008" "Version 2.0.20"
+ .SH NAME
+ dkms \- Dynamic Kernel Module Support
diff --git a/dkms-use-STRIP-0-as-the-default-for-the-STRIP-array.patch b/dkms-use-STRIP-0-as-the-default-for-the-STRIP-array.patch
new file mode 100644
index 0000000..3c70058
--- /dev/null
+++ b/dkms-use-STRIP-0-as-the-default-for-the-STRIP-array.patch
@@ -0,0 +1,40 @@
+From: Darik Horn <dajhorn at vanadac.com>
+Date: Fri, 28 Dec 2012 11:04:07 -0600
+Subject: Use STRIP[0] as the default for the STRIP array.
+
+If STRIP[0]='no' is set for the first module in a dkms.conf file,
+then all other modules are usually built the same way. Producing
+stripped and unstripped modules in the same build is rarely useful.
+
+Thus, if STRIP[0] is explicitly set, then use it as the default
+value for all other unset entries in the STRIP array.
+---
+ dkms | 3 ++-
+ dkms.8 | 1 +
+ 2 files changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/dkms b/dkms
+index 9355f4e..fdc9d77 100644
+--- dkms.old/dkms	2013-11-06 10:28:00.121215472 +0100
++++ dkms/dkms	2013-11-06 10:28:07.809051459 +0100
+@@ -526,7 +526,8 @@
+ 	esac
+ 	case ${STRIP[$index]} in
+ 	    [nN]*) strip[$index]="no";;
+-	    *)     strip[$index]="yes";;
++	    [yY]*) strip[$index]="yes";;
++	    '')    strip[$index]=${strip[0]:-yes};;
+ 	esac
+ 
+ 	# If unset, set by defaults
+diff -Naur dkms.old/dkms.8 dkms/dkms.8
+--- dkms.old/dkms.8	2013-11-06 10:27:36.761713734 +0100
++++ dkms/dkms.8	2013-11-06 10:28:07.809051459 +0100
+@@ -765,6 +765,7 @@
+ .B STRIP[#]=
+ By default strip is considered to be "yes".  If set to "no", DKMS will not
+ run strip \-g against your built module to remove debug symbols from it.
++STRIP[0] is used as the default for any unset entries in the STRIP array.
+ .TP
+ .B PACKAGE_NAME=
+ This directive is used to give the name associated with the entire package of modules.  This is the same
diff --git a/dkms.service b/dkms.service
new file mode 100644
index 0000000..b212702
--- /dev/null
+++ b/dkms.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Builds and install new kernel modules through DKMS
+Documentation=man:dkms(8)
+
+[Service]
+Type=oneshot
+RemainAfterExit=true
+ExecStart=/bin/sh -c 'dkms autoinstall --verbose --kernelver $(uname -r)'
+
+[Install]
+WantedBy=multi-user.target
diff --git a/dkms.spec b/dkms.spec
index 715bae4..6f19bb9 100644
--- a/dkms.spec
+++ b/dkms.spec
@@ -1,6 +1,3 @@
-%global commit 7c3e7c52a3816c82fc8a0ef4bed9cebedc9dd02d
-%global shortcommit %(c=%{commit}; echo ${c:0:7})
-
 %if 0%{?rhel} == 5
 %define _sharedstatedir /var/lib
 %endif
@@ -8,15 +5,33 @@
 Summary:        Dynamic Kernel Module Support Framework
 Name:           dkms
 Version:        2.2.0.3
-Release:        28%{?shortcommit:.git.%{shortcommit}}%{?dist}
+Release:        29%{dist}
 License:        GPLv2+
 Group:          System Environment/Base
 BuildArch:      noarch
 URL:            http://linux.dell.com/dkms
 BuildRoot:      %{_tmppath}/%{name}-%{version}.%{release}-root-%(%{__id_u} -n)
 
-Source0:        http://linux.dell.com/cgi-bin/cgit.cgi/%{name}.git/snapshot/%{name}-%{commit}.tar.bz2
-Source1:        %{name}_autoinstaller.init
+Source0:        http://linux.dell.com/%{name}/permalink/%{name}-%{version}.tar.gz
+Source1:        %{name}.service
+Source2:        %{name}_autoinstaller.init
+
+Patch0:         %{name}-git.patch
+Patch1:         %{name}-force-tarball.patch
+Patch2:         %{name}-fix-mkrpm.patch
+Patch3:         %{name}-man.patch
+# Patches coming from ZFS On Linux project for functionality / bugfixes
+# https://github.com/zfsonlinux/dkms/tree/master/ubuntu/saucy/debian/patches
+Patch4:         %{name}-cleanup-after-removal.patch
+Patch5:         %{name}-do-not-fail-on-modules-dir.patch
+# https://github.com/zfsonlinux/dkms/tree/master/ubuntu/precise/debian/patches
+Patch6:         %{name}-add-POST_BUILD-to-the-dkms_conf_variables-list.patch
+Patch7:         %{name}-use-STRIP-0-as-the-default-for-the-STRIP-array.patch
+Patch8:         %{name}-add-dependency-logic-for-automatic-builds.patch
+Patch9:         %{name}-fix-zfs-autoinstall-failures-for-kernel-upgrades.patch
+Patch10:        %{name}-reset-build-dependencies.patch
+Patch11:        %{name}-bash-syntax-fix.patch
+Patch12:        %{name}-no-parallel-build.patch
 
 Requires:       coreutils
 Requires:       cpio
@@ -51,23 +66,48 @@ This package contains the framework for the Dynamic Kernel Module Support (DKMS)
 method for installing module RPMS as originally developed by Dell.
 
 %prep
-%setup -q -n %{name}-%{commit}
+%setup -q
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%if 0%{?fedora} || 0%{?rhel} >= 6
+%patch8 -p1
+%patch9 -p1
+%patch10 -p1
+%patch11 -p1
+%patch12 -p1
+%endif
 
 %build
 
 %install
 rm -rf %{buildroot}
+make install-redhat DESTDIR=%{buildroot} \
+    SBIN=%{buildroot}%{_sbindir} \
+    VAR=%{buildroot}%{_sharedstatedir}/%{name} \
+    MAN=%{buildroot}%{_mandir}/man8 \
+    ETC=%{buildroot}%{_sysconfdir}/%{name} \
+    BASHDIR=%{buildroot}%{_sysconfdir}/bash_completion.d \
+    LIBDIR=%{buildroot}%{_prefix}/lib/%{name}
 
 %if 0%{?fedora} >= 20 || 0%{?rhel} >= 7
-make install-redhat-systemd DESTDIR=%{buildroot} \
-    LIBDIR=%{buildroot}%{_prefix}/lib/%{name} \
-    SYSTEMD=%{buildroot}%{_unitdir}
+
+# Systemd unit files
+rm -rf %{buildroot}%{_initrddir}
+mkdir -p %{buildroot}%{_unitdir}
+install -p -m 644 -D %{SOURCE1} %{buildroot}%{_unitdir}/%{name}.service
+
 %else
-make install-redhat-sysv DESTDIR=%{buildroot} \
-    LIBDIR=%{buildroot}%{_prefix}/lib/%{name}
 
-# Overwrite SysV init script
-install -p -m 755 -D %{SOURCE1} %{buildroot}%{_initrddir}/%{name}_autoinstaller
+# Initscripts
+mkdir -p %{buildroot}%{_initrddir}
+install -p -m 755 -D %{SOURCE2} %{buildroot}%{_initrddir}/%{name}_autoinstaller
+
 %endif
 
 %clean
@@ -121,6 +161,9 @@ fi
 %{_sysconfdir}/bash_completion.d/%{name}
 
 %changelog
+* Tue Sep 23 2014 Simone Caronni <negativo17 at gmail.com> - 2.2.0.3-29
+- Do not use latest upstream sources for RHEL 5.
+
 * Tue Sep 23 2014 Simone Caronni <negativo17 at gmail.com> - 2.2.0.3-28.git.7c3e7c5
 - Update to latest git, all patches merged upstream.
 
diff --git a/sources b/sources
index d0179d3..dfd6bdc 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-dce37f763d3c60259757ddb44464f33b  dkms-7c3e7c52a3816c82fc8a0ef4bed9cebedc9dd02d.tar.bz2
+11a8aaade2ebec2803653837c7593030  dkms-2.2.0.3.tar.gz


More information about the scm-commits mailing list