Add --buildroot option to kmod build
This allows rpmbuild to define buildroot to point to where kernel data is located. Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov> Closes #242
This commit is contained in:
parent
991857cac5
commit
485b471eb2
|
@ -44,7 +44,7 @@ BuildRequires: %{_bindir}/kmodtool
|
||||||
# Kmodtool does its magic here. A patched version of kmodtool is shipped
|
# Kmodtool does its magic here. A patched version of kmodtool is shipped
|
||||||
# with the source rpm until kmod development packages are supported upstream.
|
# with the source rpm until kmod development packages are supported upstream.
|
||||||
# https://bugzilla.rpmfusion.org/show_bug.cgi?id=2714
|
# https://bugzilla.rpmfusion.org/show_bug.cgi?id=2714
|
||||||
%{expand:%(sh %{SOURCE10} --target %{_target_cpu} --repo %{repo} --kmodname %{name} --devel %{?prefix:--prefix "%{?prefix}"} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) }
|
%{expand:%(sh %{SOURCE10} --target %{_target_cpu} --repo %{repo} --kmodname %{name} --devel %{?prefix:--prefix "%{?prefix}"} %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} %{?kernelbuildroot:--buildroot "%{?kernelbuildroot}"} 2>/dev/null) }
|
||||||
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
|
@ -56,7 +56,7 @@ several interfaces provided by the Solaris kernel.
|
||||||
%{?kmodtool_check}
|
%{?kmodtool_check}
|
||||||
|
|
||||||
# Print kmodtool output for debugging purposes:
|
# Print kmodtool output for debugging purposes:
|
||||||
sh %{SOURCE10} --target %{_target_cpu} --repo %{repo} --kmodname %{name} --devel %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null
|
sh %{SOURCE10} --target %{_target_cpu} --repo %{repo} --kmodname %{name} --devel %{?buildforkernels:--%{buildforkernels}} %{?kernels:--for-kernels "%{?kernels}"} %{?kernelbuildroot:--buildroot "%{?kernelbuildroot}"} 2>/dev/null
|
||||||
|
|
||||||
%if %{with debug}
|
%if %{with debug}
|
||||||
%define debug --enable-debug
|
%define debug --enable-debug
|
||||||
|
|
|
@ -44,7 +44,7 @@ Conflicts: %{module}-dkms
|
||||||
# Kmodtool does its magic here. A patched version of kmodtool is shipped
|
# Kmodtool does its magic here. A patched version of kmodtool is shipped
|
||||||
# because the latest versions may not be available for your distribution.
|
# because the latest versions may not be available for your distribution.
|
||||||
# https://bugzilla.rpmfusion.org/show_bug.cgi?id=2714
|
# https://bugzilla.rpmfusion.org/show_bug.cgi?id=2714
|
||||||
%{expand:%(bash %{SOURCE10} --target %{_target_cpu} --kmodname %{name} --devel %{?prefix:--prefix "%{?prefix}"} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null) }
|
%{expand:%(bash %{SOURCE10} --target %{_target_cpu} --kmodname %{name} --devel %{?prefix:--prefix "%{?prefix}"} %{?kernels:--for-kernels "%{?kernels}"} %{?kernelbuildroot:--buildroot "%{?kernelbuildroot}"} 2>/dev/null) }
|
||||||
|
|
||||||
|
|
||||||
%description
|
%description
|
||||||
|
@ -56,7 +56,7 @@ several interfaces provided by the Solaris kernel.
|
||||||
%{?kmodtool_check}
|
%{?kmodtool_check}
|
||||||
|
|
||||||
# Print kmodtool output for debugging purposes:
|
# Print kmodtool output for debugging purposes:
|
||||||
bash %{SOURCE10} --target %{_target_cpu} --kmodname %{name} --devel %{?prefix:--prefix "%{?prefix}"} %{?kernels:--for-kernels "%{?kernels}"} 2>/dev/null
|
bash %{SOURCE10} --target %{_target_cpu} --kmodname %{name} --devel %{?prefix:--prefix "%{?prefix}"} %{?kernels:--for-kernels "%{?kernels}"} %{?kernelbuildroot:--buildroot "%{?kernelbuildroot}"} 2>/dev/null
|
||||||
|
|
||||||
%if %{with debug}
|
%if %{with debug}
|
||||||
%define debug --enable-debug
|
%define debug --enable-debug
|
||||||
|
|
|
@ -37,6 +37,7 @@ kernel_versions_to_build_for=
|
||||||
prefix=
|
prefix=
|
||||||
filterfile=
|
filterfile=
|
||||||
target=
|
target=
|
||||||
|
buildroot=
|
||||||
|
|
||||||
error_out()
|
error_out()
|
||||||
{
|
{
|
||||||
|
@ -305,9 +306,9 @@ print_customrpmtemplate ()
|
||||||
{
|
{
|
||||||
for kernel in ${1}
|
for kernel in ${1}
|
||||||
do
|
do
|
||||||
if [[ -e "/usr/src/kernels/${kernel}" ]] ; then
|
if [[ -e "${buildroot}/usr/src/kernels/${kernel}" ]] ; then
|
||||||
# this looks like a Fedora/RH kernel -- print a normal template (which includes the proper BR) and be happy :)
|
# this looks like a Fedora/RH kernel -- print a normal template (which includes the proper BR) and be happy :)
|
||||||
kernel_versions="${kernel_versions}${kernel}___%{_usrsrc}/kernels/${kernel} "
|
kernel_versions="${kernel_versions}${kernel}___${buildroot}%{_usrsrc}/kernels/${kernel} "
|
||||||
|
|
||||||
# parse kernel versions string and print template
|
# parse kernel versions string and print template
|
||||||
local kernel_verrelarch=${kernel%%${kernels_known_variants}}
|
local kernel_verrelarch=${kernel%%${kernels_known_variants}}
|
||||||
|
@ -382,7 +383,6 @@ myprog_help ()
|
||||||
echo "Usage: $(basename ${0}) [OPTIONS]"
|
echo "Usage: $(basename ${0}) [OPTIONS]"
|
||||||
echo $'\n'"Creates a template to be used during kmod building"
|
echo $'\n'"Creates a template to be used during kmod building"
|
||||||
echo $'\n'"Available options:"
|
echo $'\n'"Available options:"
|
||||||
# FIXME echo " --datadir <dir> -- look for our shared files in <dir>"
|
|
||||||
echo " --filterfile <file> -- filter the results with grep --file <file>"
|
echo " --filterfile <file> -- filter the results with grep --file <file>"
|
||||||
echo " --for-kernels <list> -- created templates only for these kernels"
|
echo " --for-kernels <list> -- created templates only for these kernels"
|
||||||
echo " --kmodname <file> -- name of the kmod (required)"
|
echo " --kmodname <file> -- name of the kmod (required)"
|
||||||
|
@ -390,6 +390,7 @@ myprog_help ()
|
||||||
echo " --noakmod -- no akmod package"
|
echo " --noakmod -- no akmod package"
|
||||||
echo " --repo <name> -- use buildsys-build-<name>-kerneldevpkgs"
|
echo " --repo <name> -- use buildsys-build-<name>-kerneldevpkgs"
|
||||||
echo " --target <arch> -- target-arch (required)"
|
echo " --target <arch> -- target-arch (required)"
|
||||||
|
echo " --buildroot <dir> -- Build root (place to look for build files)"
|
||||||
}
|
}
|
||||||
|
|
||||||
while [ "${1}" ] ; do
|
while [ "${1}" ] ; do
|
||||||
|
@ -478,6 +479,11 @@ while [ "${1}" ] ; do
|
||||||
shift
|
shift
|
||||||
build_kernels="current"
|
build_kernels="current"
|
||||||
;;
|
;;
|
||||||
|
--buildroot)
|
||||||
|
shift
|
||||||
|
buildroot="${1}"
|
||||||
|
shift
|
||||||
|
;;
|
||||||
--help)
|
--help)
|
||||||
myprog_help
|
myprog_help
|
||||||
exit 0
|
exit 0
|
||||||
|
|
Loading…
Reference in New Issue