Jesse Keating 7a32965
# We have to override the new %%install behavior because, well... the kernel is special.
Jesse Keating 7a32965
%global __spec_install_pre %{___build_pre}
Jesse Keating 7a32965
Jesse Keating 7a32965
Summary: The Linux kernel
Jesse Keating 7a32965
Jesse Keating 7a32965
# For a stable, released kernel, released_kernel should be 1. For rawhide
Jesse Keating 7a32965
# and/or a kernel built from an rc or git snapshot, released_kernel should
Jesse Keating 7a32965
# be 0.
85cffef
%global released_kernel 1
Jesse Keating 7a32965
c2a12cd
# Sign modules on x86.  Make sure the config files match this setting if more
c2a12cd
# architectures are added.
c2a12cd
%ifarch %{ix86} x86_64
c2a12cd
%global signmodules 1
c2a12cd
%else
c2a12cd
%global signmodules 0
c2a12cd
%endif
c2a12cd
Jesse Keating 7a32965
# Save original buildid for later if it's defined
Jesse Keating 7a32965
%if 0%{?buildid:1}
Jesse Keating 7a32965
%global orig_buildid %{buildid}
Jesse Keating 7a32965
%undefine buildid
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
###################################################################
Jesse Keating 7a32965
# Polite request for people who spin their own kernel rpms:
Jesse Keating 7a32965
# please modify the "buildid" define in a way that identifies
Jesse Keating 7a32965
# that the kernel isn't the stock distribution kernel, for example,
Jesse Keating 7a32965
# by setting the define to ".local" or ".bz123456". This will be
Jesse Keating 7a32965
# appended to the full kernel version.
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# (Uncomment the '#' and both spaces below to set the buildid.)
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# % define buildid .local
Jesse Keating 7a32965
###################################################################
Jesse Keating 7a32965
Jesse Keating 7a32965
# The buildid can also be specified on the rpmbuild command line
Jesse Keating 7a32965
# by adding --define="buildid .whatever". If both the specfile and
Jesse Keating 7a32965
# the environment define a buildid they will be concatenated together.
Jesse Keating 7a32965
%if 0%{?orig_buildid:1}
Jesse Keating 7a32965
%if 0%{?buildid:1}
Jesse Keating 7a32965
%global srpm_buildid %{buildid}
Jesse Keating 7a32965
%define buildid %{srpm_buildid}%{orig_buildid}
Jesse Keating 7a32965
%else
Jesse Keating 7a32965
%define buildid %{orig_buildid}
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Roland McGrath 377da6d
# baserelease defines which build revision of this kernel version we're
Roland McGrath 377da6d
# building.  We used to call this fedora_build, but the magical name
Roland McGrath 377da6d
# baserelease is matched by the rpmdev-bumpspec tool, which you should use.
Jesse Keating 7a32965
#
Roland McGrath 377da6d
# We used to have some extra magic weirdness to bump this automatically,
Roland McGrath 377da6d
# but now we don't.  Just use: rpmdev-bumpspec -c 'comment for changelog'
Roland McGrath 377da6d
# When changing base_sublevel below or going from rc to a final kernel,
Roland McGrath 377da6d
# reset this by hand to 1 (or to 0 and then use rpmdev-bumpspec).
Roland McGrath 377da6d
# scripts/rebase.sh should be made to do that for you, actually.
Roland McGrath 377da6d
#
Chuck Ebbert 05e763b
# NOTE: baserelease must be > 0 or bad things will happen if you switch
Chuck Ebbert 05e763b
#       to a released kernel (released version will be < rc version)
Chuck Ebbert c3126dc
#
Chuck Ebbert 05e763b
# For non-released -rc kernels, this will be appended after the rcX and
Chuck Ebbert 05e763b
# gitX tags, so a 3 here would become part of release "0.rcX.gitX.3"
Chuck Ebbert 05e763b
#
ffb7a52
%global baserelease 201
Roland McGrath 377da6d
%global fedora_build %{baserelease}
Jesse Keating 7a32965
Jesse Keating 7a32965
# base_sublevel is the kernel version we're starting with and patching
Dave Jones 34ff8bb
# on top of -- for example, 3.1-rc7-git1 starts with a 3.0 base,
Dave Jones 34ff8bb
# which yields a base_sublevel of 0.
Dave Jones 03fb1ee
%define base_sublevel 7
Jesse Keating 7a32965
Jesse Keating 7a32965
## If this is a released kernel ##
Jesse Keating 7a32965
%if 0%{?released_kernel}
Jesse Keating 7a32965
Jesse Keating 7a32965
# Do we have a -stable update to apply?
ffb7a52
%define stable_update 7
Jesse Keating 7a32965
# Is it a -stable RC?
Jesse Keating 7a32965
%define stable_rc 0
Jesse Keating 7a32965
# Set rpm version accordingly
Jesse Keating 7a32965
%if 0%{?stable_update}
740de53
%define stablerev %{stable_update}
Jesse Keating 7a32965
%define stable_base %{stable_update}
Jesse Keating 7a32965
%if 0%{?stable_rc}
Jesse Keating 7a32965
# stable RCs are incremental patches, so we need the previous stable patch
Jesse Keating 7a32965
%define stable_base %(echo $((%{stable_update} - 1)))
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%endif
Kyle McMartin e8ba2bf
%define rpmversion 3.%{base_sublevel}.%{stable_update}
Jesse Keating 7a32965
Jesse Keating 7a32965
## The not-released-kernel case ##
Jesse Keating 7a32965
%else
Jesse Keating 7a32965
# The next upstream release sublevel (base_sublevel+1)
Kyle McMartin 4a20417
%define upstream_sublevel %(echo $((%{base_sublevel} + 1)))
Jesse Keating 7a32965
# The rc snapshot level
85cffef
%define rcrev 0
Jesse Keating 7a32965
# The git snapshot level
85cffef
%define gitrev 0
Jesse Keating 7a32965
# Set rpm version accordingly
Kyle McMartin e8ba2bf
%define rpmversion 3.%{upstream_sublevel}.0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
# Nb: The above rcrev and gitrev values automagically define Patch00 and Patch01 below.
Jesse Keating 7a32965
Jesse Keating 7a32965
# What parts do we want to build?  We must build at least one kernel.
Jesse Keating 7a32965
# These are the kernels that are built IF the architecture allows it.
Jesse Keating 7a32965
# All should default to 1 (enabled) and be flipped to 0 (disabled)
Jesse Keating 7a32965
# by later arch-specific checks.
Jesse Keating 7a32965
Jesse Keating 7a32965
# The following build options are enabled by default.
Jesse Keating 7a32965
# Use either --without <opt> in your rpmbuild command or force values
Jesse Keating 7a32965
# to 0 in here to disable them.
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# standard kernel
Jesse Keating 7a32965
%define with_up        %{?_without_up:        0} %{?!_without_up:        1}
Jesse Keating 7a32965
# kernel-smp (only valid for ppc 32-bit)
Jesse Keating 7a32965
%define with_smp       %{?_without_smp:       0} %{?!_without_smp:       1}
Jarod Wilson 5b03275
# kernel-PAE (only valid for i686)
Jarod Wilson 5b03275
%define with_pae       %{?_without_pae:       0} %{?!_without_pae:       1}
Jesse Keating 7a32965
# kernel-debug
Jesse Keating 7a32965
%define with_debug     %{?_without_debug:     0} %{?!_without_debug:     1}
Jesse Keating 7a32965
# kernel-doc
Jesse Keating 7a32965
%define with_doc       %{?_without_doc:       0} %{?!_without_doc:       1}
Jesse Keating 7a32965
# kernel-headers
Jesse Keating 7a32965
%define with_headers   %{?_without_headers:   0} %{?!_without_headers:   1}
Kyle McMartin 42d4c31
# perf
Kyle McMartin 42d4c31
%define with_perf      %{?_without_perf:      0} %{?!_without_perf:      1}
Dave Jones 1d18ad9
# tools
Dave Jones 1d18ad9
%define with_tools     %{?_without_tools:     0} %{?!_without_tools:     1}
Jesse Keating 7a32965
# kernel-debuginfo
Kyle McMartin 761d1c0
%define with_debuginfo %{?_without_debuginfo: 0} %{?!_without_debuginfo: 1}
Jesse Keating 7a32965
# kernel-bootwrapper (for creating zImages from kernel + initrd)
Jesse Keating 7a32965
%define with_bootwrapper %{?_without_bootwrapper: 0} %{?!_without_bootwrapper: 1}
Jesse Keating 7a32965
# Want to build a the vsdo directories installed
Jesse Keating 7a32965
%define with_vdso_install %{?_without_vdso_install: 0} %{?!_without_vdso_install: 1}
986a9f3
# ARM OMAP (Beagle/Panda Board)
986a9f3
%define with_omap      %{?_without_omap:      0} %{?!_without_omap:      1}
986a9f3
# kernel-tegra (only valid for arm)
986a9f3
%define with_tegra       %{?_without_tegra:       0} %{?!_without_tegra:       1}
534352f
# kernel-kirkwood (only valid for arm)
534352f
%define with_kirkwood       %{?_without_kirkwood:       0} %{?!_without_kirkwood:       1}
Chuck Ebbert c6b36e0
#
Jesse Keating 7a32965
# Additional options for user-friendly one-off kernel building:
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# Only build the base kernel (--with baseonly):
Jesse Keating 7a32965
%define with_baseonly  %{?_with_baseonly:     1} %{?!_with_baseonly:     0}
Jesse Keating 7a32965
# Only build the smp kernel (--with smponly):
Jesse Keating 7a32965
%define with_smponly   %{?_with_smponly:      1} %{?!_with_smponly:      0}
Jarod Wilson 5b03275
# Only build the pae kernel (--with paeonly):
Jarod Wilson 5b03275
%define with_paeonly   %{?_with_paeonly:      1} %{?!_with_paeonly:      0}
Jesse Keating 7a32965
# Only build the debug kernel (--with dbgonly):
Jesse Keating 7a32965
%define with_dbgonly   %{?_with_dbgonly:      1} %{?!_with_dbgonly:      0}
Chuck Ebbert c6b36e0
#
Jesse Keating 7a32965
# should we do C=1 builds with sparse
Dave Jones 561b24a
%define with_sparse    %{?_with_sparse:       1} %{?!_with_sparse:       0}
Chuck Ebbert 11ee033
#
Chuck Ebbert 11ee033
# build a release kernel on rawhide
Chuck Ebbert 11ee033
%define with_release   %{?_with_release:      1} %{?!_with_release:      0}
Jesse Keating 7a32965
Jesse Keating 7a32965
# Set debugbuildsenabled to 1 for production (build separate debug kernels)
Jesse Keating 7a32965
#  and 0 for rawhide (all kernels are debug kernels).
Jesse Keating 7a32965
# See also 'make debug' and 'make release'.
85cffef
%define debugbuildsenabled 1
Jesse Keating 7a32965
Jesse Keating 7a32965
# Want to build a vanilla kernel build without any non-upstream patches?
Jesse Keating 7a32965
%define with_vanilla %{?_with_vanilla: 1} %{?!_with_vanilla: 0}
Jesse Keating 7a32965
Chuck Ebbert c6b36e0
# Build the kernel-doc package, but don't fail the build if it botches.
Chuck Ebbert c6b36e0
# Here "true" means "continue" and "false" means "fail the build".
Chuck Ebbert c6b36e0
%if 0%{?released_kernel}
Chuck Ebbert c6b36e0
%define doc_build_fail false
Chuck Ebbert c6b36e0
%else
Chuck Ebbert c6b36e0
%define doc_build_fail true
Chuck Ebbert c6b36e0
%endif
Chuck Ebbert c6b36e0
85cffef
%define rawhide_skip_docs 0
Chuck Ebbert c6b36e0
%if 0%{?rawhide_skip_docs}
Chuck Ebbert c6b36e0
%define with_doc 0
Chuck Ebbert c6b36e0
%define doc_build_fail true
Chuck Ebbert c6b36e0
%endif
Chuck Ebbert c6b36e0
Jesse Keating 7a32965
# pkg_release is what we'll fill in for the rpm Release: field
Jesse Keating 7a32965
%if 0%{?released_kernel}
Jesse Keating 7a32965
Jesse Keating 7a32965
%if 0%{?stable_rc}
Jesse Keating 7a32965
%define stable_rctag .rc%{stable_rc}
Chuck Ebbert e6236b7
%define pkg_release 0%{stable_rctag}.%{fedora_build}%{?buildid}%{?dist}
Chuck Ebbert e6236b7
%else
Chuck Ebbert e6236b7
%define pkg_release %{fedora_build}%{?buildid}%{?dist}
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%else
Jesse Keating 7a32965
Jesse Keating 7a32965
# non-released_kernel
Jesse Keating 7a32965
%if 0%{?rcrev}
Jesse Keating 7a32965
%define rctag .rc%rcrev
Jesse Keating 7a32965
%else
Jesse Keating 7a32965
%define rctag .rc0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%if 0%{?gitrev}
Jesse Keating 7a32965
%define gittag .git%gitrev
Jesse Keating 7a32965
%else
Jesse Keating 7a32965
%define gittag .git0
Jesse Keating 7a32965
%endif
Kyle McMartin 66ce81a
%define pkg_release 0%{?rctag}%{?gittag}.%{fedora_build}%{?buildid}%{?dist}
Jesse Keating 7a32965
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
# The kernel tarball/base version
Kyle McMartin e8ba2bf
%define kversion 3.%{base_sublevel}
Jesse Keating 7a32965
Jesse Keating 7a32965
%define make_target bzImage
Jesse Keating 7a32965
Jesse Keating 7a32965
%define KVERREL %{version}-%{release}.%{_target_cpu}
Jesse Keating 7a32965
%define hdrarch %_target_cpu
Jesse Keating 7a32965
%define asmarch %_target_cpu
Jesse Keating 7a32965
Jesse Keating 7a32965
%if 0%{!?nopatches:1}
Jesse Keating 7a32965
%define nopatches 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{with_vanilla}
bcf7eac
# Vanilla kernels before 3.7 don't contain modsign support.  Remove this when
bcf7eac
# we rebase to 3.7
bcf7eac
%define signmodules 0
Jesse Keating 7a32965
%define nopatches 1
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{nopatches}
Jesse Keating 7a32965
%define with_bootwrapper 0
Jesse Keating 7a32965
%define variant -vanilla
Jesse Keating 7a32965
%else
Jesse Keating 7a32965
%define variant_fedora -fedora
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%define using_upstream_branch 0
Jesse Keating 7a32965
%if 0%{?upstream_branch:1}
Jesse Keating 7a32965
%define stable_update 0
Jesse Keating 7a32965
%define using_upstream_branch 1
Jesse Keating 7a32965
%define variant -%{upstream_branch}%{?variant_fedora}
Jesse Keating 7a32965
%define pkg_release 0.%{fedora_build}%{upstream_branch_tag}%{?buildid}%{?dist}
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%if !%{debugbuildsenabled}
Jesse Keating 7a32965
%define with_debug 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%if !%{with_debuginfo}
Jesse Keating 7a32965
%define _enable_debug_packages 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%define debuginfodir /usr/lib/debug
Jesse Keating 7a32965
Jesse Keating 7a32965
# kernel-PAE is only built on i686.
Jarod Wilson 5b03275
%ifnarch i686
Jesse Keating 7a32965
%define with_pae 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
0f00853
# kernel up (versatile express), tegra and  omap are only built on armv7 hfp/sfp
41dc1ec
%ifnarch armv7hl armv7l
a4e130d
%define with_omap 0
a4e130d
%define with_tegra 0
a4e130d
%endif
201cb5c
534352f
# kernel-kirkwood is only built for armv5
534352f
%ifnarch armv5tel
d07b00d
%define with_kirkwood 0
a4e130d
%endif
986a9f3
Jesse Keating 7a32965
# if requested, only build base kernel
Jesse Keating 7a32965
%if %{with_baseonly}
Jesse Keating 7a32965
%define with_smp 0
Jarod Wilson 5b03275
%define with_pae 0
Jesse Keating 7a32965
%define with_debug 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
# if requested, only build smp kernel
Jesse Keating 7a32965
%if %{with_smponly}
Jesse Keating 7a32965
%define with_up 0
Jarod Wilson 5b03275
%define with_pae 0
Jarod Wilson 5b03275
%define with_debug 0
Jarod Wilson 5b03275
%endif
Jarod Wilson 5b03275
Jarod Wilson 5b03275
# if requested, only build pae kernel
Jarod Wilson 5b03275
%if %{with_paeonly}
Jarod Wilson 5b03275
%define with_up 0
Jarod Wilson 5b03275
%define with_smp 0
Jesse Keating 7a32965
%define with_debug 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
# if requested, only build debug kernel
Jesse Keating 7a32965
%if %{with_dbgonly}
Jesse Keating 7a32965
%if %{debugbuildsenabled}
Jesse Keating 7a32965
%define with_up 0
Jarod Wilson 5b03275
%define with_pae 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%define with_smp 0
Jesse Keating 7a32965
%define with_pae 0
Dave Jones 1d18ad9
%define with_tools 0
Kyle McMartin 42d4c31
%define with_perf 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%define all_x86 i386 i686
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{with_vdso_install}
Jesse Keating 7a32965
# These arches install vdso/ directories.
3b76903
%define vdso_arches %{all_x86} x86_64 ppc ppc64 ppc64p7 s390 s390x
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
# Overrides for generic default options
Jesse Keating 7a32965
59694fb
# only ppc needs a separate smp kernel
59694fb
%ifnarch ppc 
Jesse Keating 7a32965
%define with_smp 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
# don't do debug builds on anything but i686 and x86_64
Jesse Keating 7a32965
%ifnarch i686 x86_64
Jesse Keating 7a32965
%define with_debug 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
# only package docs noarch
Jesse Keating 7a32965
%ifnarch noarch
Jesse Keating 7a32965
%define with_doc 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
# don't build noarch kernels or headers (duh)
Jesse Keating 7a32965
%ifarch noarch
Jesse Keating 7a32965
%define with_up 0
Jesse Keating 7a32965
%define with_headers 0
Dave Jones 1d18ad9
%define with_tools 0
Kyle McMartin 42d4c31
%define with_perf 0
Jesse Keating 7a32965
%define all_arch_configs kernel-%{version}-*.config
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
# bootwrapper is only on ppc
3b76903
%ifnarch ppc ppc64 ppc64p7
Jesse Keating 7a32965
%define with_bootwrapper 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
59694fb
# sparse blows up on ppc64 and sparc64
3b76903
%ifarch ppc64 ppc sparc64 ppc64p7
Jesse Keating 7a32965
%define with_sparse 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
# Per-arch tweaks
Jesse Keating 7a32965
Jesse Keating 7a32965
%ifarch %{all_x86}
Jesse Keating 7a32965
%define asmarch x86
Jesse Keating 7a32965
%define hdrarch i386
Jesse Keating 7a32965
%define all_arch_configs kernel-%{version}-i?86*.config
Jesse Keating 7a32965
%define image_install_path boot
Jesse Keating 7a32965
%define kernel_image arch/x86/boot/bzImage
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%ifarch x86_64
Jesse Keating 7a32965
%define asmarch x86
Jesse Keating 7a32965
%define all_arch_configs kernel-%{version}-x86_64*.config
Jesse Keating 7a32965
%define image_install_path boot
Jesse Keating 7a32965
%define kernel_image arch/x86/boot/bzImage
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
3b76903
%ifarch ppc64 ppc64p7
Jesse Keating 7a32965
%define asmarch powerpc
Jesse Keating 7a32965
%define hdrarch powerpc
Jesse Keating 7a32965
%define all_arch_configs kernel-%{version}-ppc64*.config
Jesse Keating 7a32965
%define image_install_path boot
Jesse Keating 7a32965
%define make_target vmlinux
Jesse Keating 7a32965
%define kernel_image vmlinux
Jesse Keating 7a32965
%define kernel_image_elf 1
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%ifarch s390x
Jesse Keating 7a32965
%define asmarch s390
Jesse Keating 7a32965
%define hdrarch s390
Jesse Keating 7a32965
%define all_arch_configs kernel-%{version}-s390x.config
Jesse Keating 7a32965
%define image_install_path boot
Jesse Keating 7a32965
%define make_target image
Jesse Keating 7a32965
%define kernel_image arch/s390/boot/image
Dave Jones 1d18ad9
%define with_tools 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%ifarch sparc64
Jesse Keating 7a32965
%define asmarch sparc
Jesse Keating 7a32965
%define all_arch_configs kernel-%{version}-sparc64*.config
bb58618
%define make_target vmlinux
bb58618
%define kernel_image vmlinux
Jesse Keating 7a32965
%define image_install_path boot
Dave Jones 1d18ad9
%define with_tools 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
9c74977
%ifarch sparcv9
9c74977
%define hdrarch sparc
9c74977
%endif
9c74977
Jesse Keating 7a32965
%ifarch ppc
Jesse Keating 7a32965
%define asmarch powerpc
Jesse Keating 7a32965
%define hdrarch powerpc
Jesse Keating 7a32965
%define all_arch_configs kernel-%{version}-ppc{-,.}*config
Jesse Keating 7a32965
%define image_install_path boot
Jesse Keating 7a32965
%define make_target vmlinux
Jesse Keating 7a32965
%define kernel_image vmlinux
Jesse Keating 7a32965
%define kernel_image_elf 1
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%ifarch %{arm}
Jesse Keating 7a32965
%define all_arch_configs kernel-%{version}-arm*.config
Jesse Keating 7a32965
%define image_install_path boot
8ffa0af
%define asmarch arm
Jesse Keating 7a32965
%define hdrarch arm
986a9f3
%define make_target bzImage
986a9f3
%define kernel_image arch/arm/boot/zImage
43fa717
# we only build headers/perf/tools on the base arm arches
94b0067
# just like we used to only build them on i386 for x86
be82bb8
%ifarch armv5tel
be82bb8
%define with_up 0
be82bb8
%endif
94b0067
%ifnarch armv5tel armv7hl
94b0067
%define with_headers 0
43fa717
%define with_perf 0
43fa717
%define with_tools 0
94b0067
%endif
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Dave Jones 03fb1ee
# Should make listnewconfig fail if there's config options
Dave Jones 03fb1ee
# printed out?
Dave Jones 03fb1ee
%if %{nopatches}%{using_upstream_branch}
Dave Jones 03fb1ee
%define listnewconfig_fail 0
Dave Jones 03fb1ee
%else
Dave Jones 03fb1ee
%define listnewconfig_fail 1
Dave Jones 03fb1ee
%endif
Dave Jones 03fb1ee
Jesse Keating 7a32965
# To temporarily exclude an architecture from being built, add it to
Dave Jones 166b79a
# %%nobuildarches. Do _NOT_ use the ExclusiveArch: line, because if we
Jesse Keating 7a32965
# don't build kernel-headers then the new build system will no longer let
Jesse Keating 7a32965
# us use the previous build of that package -- it'll just be completely AWOL.
Jesse Keating 7a32965
# Which is a BadThing(tm).
Jesse Keating 7a32965
Jesse Keating 7a32965
# We only build kernel-headers on the following...
986a9f3
%define nobuildarches i386 s390 sparc sparcv9
Jesse Keating 7a32965
Jesse Keating 7a32965
%ifarch %nobuildarches
Jesse Keating 7a32965
%define with_up 0
Jesse Keating 7a32965
%define with_smp 0
Jesse Keating 7a32965
%define with_pae 0
Jesse Keating 7a32965
%define with_debuginfo 0
Kyle McMartin 42d4c31
%define with_perf 0
Dave Jones 1d18ad9
%define with_tools 0
Jesse Keating 7a32965
%define _enable_debug_packages 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%define with_pae_debug 0
Jesse Keating 7a32965
%if %{with_pae}
Jesse Keating 7a32965
%define with_pae_debug %{with_debug}
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
8addb5f
# Architectures we build tools/cpupower on
3b76903
%define cpupowerarchs %{ix86} x86_64 ppc ppc64 ppc64p7 %{arm}
8addb5f
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# Three sets of minimum package version requirements in the form of Conflicts:
Jesse Keating 7a32965
# to versions below the minimum
Jesse Keating 7a32965
#
Jesse Keating 7a32965
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# First the general kernel 2.6 required versions as per
Jesse Keating 7a32965
# Documentation/Changes
Jesse Keating 7a32965
#
Dave Jones f3fbdcb
%define kernel_dot_org_conflicts  ppp < 2.4.3-3, isdn4k-utils < 3.2-32, nfs-utils < 1.2.5-7.fc17, e2fsprogs < 1.37-4, util-linux < 2.12, jfsutils < 1.1.7-2, reiserfs-utils < 3.6.19-2, xfsprogs < 2.6.13-4, procps < 3.2.5-6.3, oprofile < 0.9.1-2, device-mapper-libs < 1.02.63-2, mdadm < 3.2.1-5
Jesse Keating 7a32965
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# Then a series of requirements that are distribution specific, either
Jesse Keating 7a32965
# because we add patches for something, or the older versions have
Jesse Keating 7a32965
# problems with the newer kernel or lack certain things that make
Jesse Keating 7a32965
# integration in the distro harder than needed.
Jesse Keating 7a32965
#
Jesse Keating 7a32965
%define package_conflicts initscripts < 7.23, udev < 063-6, iptables < 1.3.2-1, ipw2200-firmware < 2.4, iwl4965-firmware < 228.57.2, selinux-policy-targeted < 1.25.3-14, squashfs-tools < 4.0, wireless-tools < 29-3
Jesse Keating 7a32965
Jesse Keating 7a32965
# We moved the drm include files into kernel-headers, make sure there's
Jesse Keating 7a32965
# a recent enough libdrm-devel on the system that doesn't have those.
Jesse Keating 7a32965
%define kernel_headers_conflicts libdrm-devel < 2.4.0-0.15
Jesse Keating 7a32965
Jesse Keating 7a32965
#
Dave Jones 166b79a
# Packages that need to be installed before the kernel is, because the %%post
Jesse Keating 7a32965
# scripts use them.
Jesse Keating 7a32965
#
John W. Linville aeaaac5
%define kernel_prereq  fileutils, module-init-tools >= 3.16-4, initscripts >= 8.11.1-1, grubby >= 8.3-1
Jesse Keating 7a32965
%define initrd_prereq  dracut >= 001-7
Jesse Keating 7a32965
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# This macro does requires, provides, conflicts, obsoletes for a kernel package.
Jesse Keating 7a32965
#	%%kernel_reqprovconf <subpackage>
Jesse Keating 7a32965
# It uses any kernel_<subpackage>_conflicts and kernel_<subpackage>_obsoletes
Jesse Keating 7a32965
# macros defined above.
Jesse Keating 7a32965
#
Jesse Keating 7a32965
%define kernel_reqprovconf \
Jesse Keating 7a32965
Provides: kernel = %{rpmversion}-%{pkg_release}\
Jesse Keating 7a32965
Provides: kernel-%{_target_cpu} = %{rpmversion}-%{pkg_release}%{?1:.%{1}}\
Jesse Keating 7a32965
Provides: kernel-drm = 4.3.0\
Jesse Keating 7a32965
Provides: kernel-drm-nouveau = 16\
Jesse Keating 7a32965
Provides: kernel-modeset = 1\
Jesse Keating 7a32965
Provides: kernel-uname-r = %{KVERREL}%{?1:.%{1}}\
Jesse Keating 7a32965
Requires(pre): %{kernel_prereq}\
Jesse Keating 7a32965
Requires(pre): %{initrd_prereq}\
51519e8
Requires(pre): linux-firmware >= 20120206-0.1.git06c8f81\
Jesse Keating 7a32965
Requires(post): /sbin/new-kernel-pkg\
Jesse Keating 7a32965
Requires(preun): /sbin/new-kernel-pkg\
Jesse Keating 7a32965
Conflicts: %{kernel_dot_org_conflicts}\
Jesse Keating 7a32965
Conflicts: %{package_conflicts}\
Jesse Keating 7a32965
%{expand:%%{?kernel%{?1:_%{1}}_conflicts:Conflicts: %%{kernel%{?1:_%{1}}_conflicts}}}\
Jesse Keating 7a32965
%{expand:%%{?kernel%{?1:_%{1}}_obsoletes:Obsoletes: %%{kernel%{?1:_%{1}}_obsoletes}}}\
Jesse Keating 7a32965
%{expand:%%{?kernel%{?1:_%{1}}_provides:Provides: %%{kernel%{?1:_%{1}}_provides}}}\
Jesse Keating 7a32965
# We can't let RPM do the dependencies automatic because it'll then pick up\
Jesse Keating 7a32965
# a correct but undesirable perl dependency from the module headers which\
Jesse Keating 7a32965
# isn't required for the kernel proper to function\
Jesse Keating 7a32965
AutoReq: no\
Jesse Keating 7a32965
AutoProv: yes\
Jesse Keating 7a32965
%{nil}
Jesse Keating 7a32965
Jesse Keating 7a32965
Name: kernel%{?variant}
Jesse Keating 7a32965
Group: System Environment/Kernel
Dave Jones f98083c
License: GPLv2 and Redistributable, no modification permitted
Jesse Keating 7a32965
URL: http://www.kernel.org/
Jesse Keating 7a32965
Version: %{rpmversion}
Jesse Keating 7a32965
Release: %{pkg_release}
Jesse Keating 7a32965
# DO NOT CHANGE THE 'ExclusiveArch' LINE TO TEMPORARILY EXCLUDE AN ARCHITECTURE BUILD.
Jesse Keating 7a32965
# SET %%nobuildarches (ABOVE) INSTEAD
3b76903
ExclusiveArch: noarch %{all_x86} x86_64 ppc ppc64 ppc64p7 %{sparc} s390 s390x %{arm}
Jesse Keating 7a32965
ExclusiveOS: Linux
Jesse Keating 7a32965
Jesse Keating 7a32965
%kernel_reqprovconf
Dave Jones efc71ad
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# List the packages used during the kernel build
Jesse Keating 7a32965
#
Jesse Keating 7a32965
BuildRequires: module-init-tools, patch >= 2.5.4, bash >= 2.03, sh-utils, tar
Chuck Ebbert 7cfa689
BuildRequires: bzip2, xz, findutils, gzip, m4, perl, make >= 3.78, diffutils, gawk
70f8133
BuildRequires: gcc >= 3.4.2, binutils >= 2.12, redhat-rpm-config, hmaccalc
e88e9e6
BuildRequires: net-tools, hostname
Jesse Keating 7a32965
BuildRequires: xmlto, asciidoc
Jesse Keating 7a32965
%if %{with_sparse}
Jesse Keating 7a32965
BuildRequires: sparse >= 0.4.1
Jesse Keating 7a32965
%endif
Kyle McMartin 42d4c31
%if %{with_perf}
Dave Jones dc100f5
BuildRequires: elfutils-devel zlib-devel binutils-devel newt-devel python-devel perl(ExtUtils::Embed) bison audit-libs-devel
Kyle McMartin 42d4c31
%endif
Dave Jones 1d18ad9
%if %{with_tools}
Kyle McMartin 42d4c31
BuildRequires: pciutils-devel gettext
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
BuildConflicts: rhbuildsys(DiskFree) < 500Mb
Jesse Keating 7a32965
%if %{with_debuginfo}
Kyle McMartin 1bfd59b
# Fancy new debuginfo generation introduced in Fedora 8/RHEL 6.
Mark Wielaard ec9ad68
# The -r flag to find-debuginfo.sh to invoke eu-strip --reloc-debug-sections
Mark Wielaard ec9ad68
# reduces the number of relocations in kernel module .ko.debug files and was
Mark Wielaard ec9ad68
# introduced with rpm 4.9 and elfutils 0.153.
Mark Wielaard ec9ad68
BuildRequires: rpm-build >= 4.9.0-1, elfutils >= elfutils-0.153-1
Mark Wielaard ec9ad68
%define debuginfo_args --strict-build-id -r
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
c2a12cd
%if %{signmodules}
8febe3d
BuildRequires: openssl
bf81d15
BuildRequires: pesign >= 0.10-4
c2a12cd
%endif
c2a12cd
Dave Jones 8959a0e
Source0: ftp://ftp.kernel.org/pub/linux/kernel/v3.0/linux-%{kversion}.tar.xz
Jesse Keating 7a32965
c2a12cd
%if %{signmodules}
8febe3d
Source11: x509.genkey
c2a12cd
%endif
c2a12cd
Jesse Keating 7a32965
Source15: merge.pl
b8b2783
Source16: mod-extra.list
9da87a4
Source17: mod-extra.sh
8febe3d
Source18: mod-extra-sign.sh
Jesse Keating 7a32965
Chuck Ebbert c6b36e0
Source19: Makefile.release
Jesse Keating 7a32965
Source20: Makefile.config
Jesse Keating 7a32965
Source21: config-debug
Jesse Keating 7a32965
Source22: config-nodebug
Jesse Keating 7a32965
Source23: config-generic
Jesse Keating 7a32965
Jesse Keating 7a32965
Source30: config-x86-generic
Jesse Keating 7a32965
Source31: config-i686-PAE
d71f188
Source32: config-x86-32-generic
Jesse Keating 7a32965
Jesse Keating 7a32965
Source40: config-x86_64-generic
Jesse Keating 7a32965
Jesse Keating 7a32965
Source50: config-powerpc-generic
Jesse Keating 7a32965
Source51: config-powerpc32-generic
Jesse Keating 7a32965
Source52: config-powerpc32-smp
Jesse Keating 7a32965
Source53: config-powerpc64
3b76903
Source54: config-powerpc64p7
Jesse Keating 7a32965
Jesse Keating 7a32965
Source70: config-s390x
Jesse Keating 7a32965
Jesse Keating 7a32965
Source90: config-sparc64-generic
Jesse Keating 7a32965
0f00853
# Unified ARM kernels
0f00853
Source100: config-armv7
0f00853
0f00853
# Legacy ARM kernels
0f00853
Source105: config-arm-generic
749420c
Source110: config-arm-omap
986a9f3
Source111: config-arm-tegra
534352f
Source112: config-arm-kirkwood
Jesse Keating 7a32965
Jarod Wilson 5b65297
# This file is intentionally left empty in the stock kernel. Its a nicety
Jarod Wilson 5b65297
# added for those wanting to do custom rebuilds with altered config opts.
Jarod Wilson 5b65297
Source1000: config-local
Jarod Wilson 5b65297
8addb5f
# Sources for kernel-tools
8addb5f
Source2000: cpupower.service
8addb5f
Source2001: cpupower.config
8addb5f
Jesse Keating 7a32965
# Here should be only the patches up to the upstream canonical Linus tree.
Jesse Keating 7a32965
Jesse Keating 7a32965
# For a stable release kernel
Jesse Keating 7a32965
%if 0%{?stable_update}
Jesse Keating 7a32965
%if 0%{?stable_base}
fdb68da
%define    stable_patch_00  patch-3.%{base_sublevel}.%{stable_base}.xz
Jesse Keating 7a32965
Patch00: %{stable_patch_00}
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%if 0%{?stable_rc}
Dave Jones 7bd4dec
%define    stable_patch_01  patch-3.%{base_sublevel}.%{stable_update}-rc%{stable_rc}.xz
Jesse Keating 7a32965
Patch01: %{stable_patch_01}
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
# non-released_kernel case
Jesse Keating 7a32965
# These are automagically defined by the rcrev and gitrev values set up
Jesse Keating 7a32965
# near the top of this spec file.
Jesse Keating 7a32965
%else
Jesse Keating 7a32965
%if 0%{?rcrev}
471066e
Patch00: patch-3.%{upstream_sublevel}-rc%{rcrev}.xz
Jesse Keating 7a32965
%if 0%{?gitrev}
471066e
Patch01: patch-3.%{upstream_sublevel}-rc%{rcrev}-git%{gitrev}.xz
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%else
Jesse Keating 7a32965
# pre-{base_sublevel+1}-rc1 case
Jesse Keating 7a32965
%if 0%{?gitrev}
Dave Jones 7bd4dec
Patch00: patch-3.%{base_sublevel}-git%{gitrev}.xz
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{using_upstream_branch}
Jesse Keating 7a32965
### BRANCH PATCH ###
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
# we also need compile fixes for -vanilla
Jesse Keating 7a32965
Patch04: linux-2.6-compile-fixes.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# build tweak for build ID magic, even for -vanilla
Jesse Keating 7a32965
Patch05: linux-2.6-makefile-after_link.patch
Jesse Keating 7a32965
4acebb2
Patch06: power-x86-destdir.patch
4acebb2
Jesse Keating 7a32965
%if !%{nopatches}
Jesse Keating 7a32965
Kyle McMartin 201b16f
Jesse Keating 7a32965
# revert upstream patches we get via other methods
Jesse Keating 7a32965
Patch09: linux-2.6-upstream-reverts.patch
Jesse Keating 7a32965
# Git trees.
Jesse Keating 7a32965
Jesse Keating 7a32965
# Standalone patches
Jesse Keating 7a32965
Dave Jones 64f1bc9
Patch100: taint-vbox.patch
Jesse Keating 7a32965
Dave Jones b37f31d
Patch110: vmbugon-warnon.patch
Dave Jones b37f31d
Jesse Keating 7a32965
Patch390: linux-2.6-defaults-acpi-video.patch
Jesse Keating 7a32965
Patch391: linux-2.6-acpi-video-dos.patch
Jesse Keating 7a32965
Patch394: linux-2.6-acpi-debug-infinite-loop.patch
Dave Jones a4b83ee
Patch396: acpi-sony-nonvs-blacklist.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
Patch450: linux-2.6-input-kill-stupid-messages.patch
Jesse Keating 7a32965
Patch452: linux-2.6.30-no-pcspkr-modalias.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
Patch460: linux-2.6-serial-460800.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
Patch470: die-floppy-die.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
Patch510: linux-2.6-silence-noise.patch
e7cafd4
Patch520: quite-apm.patch
Jesse Keating 7a32965
Patch530: linux-2.6-silence-fbcon-logo.patch
Dave Jones 79cfaf9
Patch540: silence-empty-ipi-mask-warning.patch
Jesse Keating 7a32965
Dave Jones f737348
Patch700: linux-2.6-e1000-ich9-montevina.patch
Dave Jones f737348
Jesse Keating 7a32965
Patch800: linux-2.6-crash-driver.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# crypto/
f8f8ccf
Patch901: modsign-post-KS-jwb.patch
306dfcc
306dfcc
# secure boot
bd4318b
Patch1000: secure-boot-3.7-20130204.patch
Dave Jones 03fb1ee
Patch1001: efivarfs-3.7.patch
Jesse Keating 7a32965
Matthew Garrett e681abd
# Improve PCI support on UEFI
Matthew Garrett e681abd
Patch1100: handle-efi-roms.patch
Matthew Garrett e681abd
Jesse Keating 7a32965
# virt + ksm patches
Jesse Keating 7a32965
Jesse Keating 7a32965
# DRM
0e0a3af
#atch1700: drm-edid-try-harder-to-fix-up-broken-headers.patch
dd2f784
#Patch1800: drm-vgem.patch
Kyle McMartin d3e4af8
Jesse Keating 7a32965
# nouveau + drm fixes
Jesse Keating 7a32965
# intel drm is all merged upstream
Jesse Keating 7a32965
Patch1824: drm-intel-next.patch
4574844
Patch1825: drm-i915-dp-stfu.patch
Kyle McMartin 5acda93
Jesse Keating 7a32965
# Quiet boot fixes
Jesse Keating 7a32965
# silence the ACPI blacklist code
Jesse Keating 7a32965
Patch2802: linux-2.6-silence-acpi-blacklist.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# media patches
Jesse Keating 7a32965
Patch2899: linux-2.6-v4l-dvb-fixes.patch
Jesse Keating 7a32965
Patch2900: linux-2.6-v4l-dvb-update.patch
Jesse Keating 7a32965
Patch2901: linux-2.6-v4l-dvb-experimental.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# fs fixes
Jesse Keating 7a32965
Jesse Keating 7a32965
# NFSv4
Jesse Keating 7a32965
Jesse Keating 7a32965
# patches headed upstream
Dave Jones 6a501c4
Patch10000: fs-proc-devtree-remove_proc_entry.patch
Dave Jones 6a501c4
Jesse Keating 7a32965
Patch12016: disable-i8042-check-on-apple-mac.patch
Jesse Keating 7a32965
Kyle McMartin dbda5f5
Patch12303: dmar-disable-when-ricoh-multifunction.patch
Kyle McMartin dbda5f5
bc12142
Patch13003: efi-dont-map-boot-services-on-32bit.patch
bc12142
fcbaf26
Patch14000: hibernate-freeze-filesystems.patch
fcbaf26
Dave Jones abc7c8e
Patch14010: lis3-improve-handling-of-null-rate.patch
Dave Jones abc7c8e
7a9e3a0
David Woodhouse 4f94f04
Patch20000: 0001-efifb-Skip-DMI-checks-if-the-bootloader-knows-what-i.patch
David Woodhouse 4f94f04
Patch20001: 0002-x86-EFI-Calculate-the-EFI-framebuffer-size-instead-o.patch
David Woodhouse 4f94f04
df483e6
# ARM
ce15971
Patch21000: arm-read_current_timer.patch
2ddf29a
# http://lists.infradead.org/pipermail/linux-arm-kernel/2012-December/137164.html
2ddf29a
Patch21001: arm-l2x0-only-set-set_debug-on-pl310-r3p0-and-earlier.patch
2ddf29a
Patch21002: arm-alignment-faults.patch
2ddf29a
d0e3520
# OMAP
2ddf29a
Patch21003: arm-fix-omapdrm.patch
df483e6
df483e6
# ARM tegra
8efb1fa
Patch21004: arm-tegra-nvec-kconfig.patch
df483e6
Patch21005: arm-tegra-usb-no-reset-linux33.patch
50c065d
Patch21006: arm-tegra-sdhci-module-fix.patch
220cb1c
af1af57
#rhbz 754518
af1af57
Patch21235: scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch
af1af57
Dave Jones 40b1a0c
Patch22000: weird-root-dentry-name-debug.patch
Dave Jones 40b1a0c
1d7d6c1
#selinux ptrace child permissions
1d7d6c1
Patch22001: selinux-apply-different-permission-to-ptrace-child.patch
1d7d6c1
4040634
#rhbz 871078
4040634
Patch22112: USB-report-submission-of-active-URBs.patch
4040634
9bb5a1f
#rhbz 859485
Dave Jones 477047e
Patch22226: vt-Drop-K_OFF-for-VC_MUTE.patch
9bb5a1f
4703e15
#rhbz CVE-2012-4530 868285 880147
Dave Jones 477047e
Patch22229: exec-use-eloop-for-max-recursion-depth.patch
4703e15
e9b768c
#rhbz 851278
Dave Jones 477047e
Patch22231: 8139cp-revert-set-ring-address-before-enabling-receiver.patch
Dave Jones 477047e
Patch22232: 8139cp-set-ring-address-after-enabling-C-mode.patch
Dave Jones 477047e
Patch22233: 8139cp-re-enable-interrupts-after-tx-timeout.patch
e9b768c
dd35eb3
#rhbz 892428
Dave Jones 477047e
Patch22238: brcmsmac-updates-rhbz892428.patch
dd35eb3
82e26bd
#rhbz 863424
Dave Jones 477047e
Patch22239: Revert-iwlwifi-fix-the-reclaimed-packet-tracking-upon.patch
82e26bd
07ef26c
#rhbz 799564
Dave Jones 477047e
Patch22240: Input-increase-struct-ps2dev-cmdbuf-to-8-bytes.patch
Dave Jones 477047e
Patch22241: Input-add-support-for-Cypress-PS2-Trackpads.patch
07ef26c
0f4abb5
#rhbz 903881
Dave Jones 477047e
Patch22246: rtlwifi-Fix-scheduling-while-atomic-bug.patch
0f4abb5
2256aa8
#rhbz 892811
Dave Jones 477047e
Patch22247: ath9k_rx_dma_stop_check.patch
2256aa8
Dave Jones a13d73a
Patch23000: silence-brcmsmac-warning.patch
Dave Jones a13d73a
812ba1a
# END OF PATCH DEFINITIONS
812ba1a
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
BuildRoot: %{_tmppath}/kernel-%{KVERREL}-root
Jesse Keating 7a32965
Jesse Keating 7a32965
%description
Jesse Keating 7a32965
The kernel package contains the Linux kernel (vmlinuz), the core of any
Jesse Keating 7a32965
Linux operating system.  The kernel handles the basic functions
Jesse Keating 7a32965
of the operating system: memory allocation, process allocation, device
Jesse Keating 7a32965
input and output, etc.
Jesse Keating 7a32965
Jesse Keating 7a32965
Jesse Keating 7a32965
%package doc
Jesse Keating 7a32965
Summary: Various documentation bits found in the kernel source
Jesse Keating 7a32965
Group: Documentation
Jesse Keating 7a32965
%description doc
Jesse Keating 7a32965
This package contains documentation files from the kernel
Jesse Keating 7a32965
source. Various bits of information about the Linux kernel and the
Jesse Keating 7a32965
device drivers shipped with it are documented in these files.
Jesse Keating 7a32965
Jesse Keating 7a32965
You'll want to install this package if you need a reference to the
Jesse Keating 7a32965
options that can be passed to Linux kernel modules at load time.
Jesse Keating 7a32965
Jesse Keating 7a32965
Jesse Keating 7a32965
%package headers
Jesse Keating 7a32965
Summary: Header files for the Linux kernel for use by glibc
Jesse Keating 7a32965
Group: Development/System
Dave Jones d555d67
Obsoletes: glibc-kernheaders < 3.0-46
Jesse Keating 7a32965
Provides: glibc-kernheaders = 3.0-46
Jesse Keating 7a32965
%description headers
Jesse Keating 7a32965
Kernel-headers includes the C header files that specify the interface
Jesse Keating 7a32965
between the Linux kernel and userspace libraries and programs.  The
Jesse Keating 7a32965
header files define structures and constants that are needed for
Jesse Keating 7a32965
building most standard programs and are also needed for rebuilding the
Jesse Keating 7a32965
glibc package.
Jesse Keating 7a32965
Jesse Keating 7a32965
%package bootwrapper
Jesse Keating 7a32965
Summary: Boot wrapper files for generating combined kernel + initrd images
Jesse Keating 7a32965
Group: Development/System
Dave Jones 524b8cb
Requires: gzip binutils
Jesse Keating 7a32965
%description bootwrapper
Jesse Keating 7a32965
Kernel-bootwrapper contains the wrapper code which makes bootable "zImage"
Jesse Keating 7a32965
files combining both kernel and initial ramdisk.
Jesse Keating 7a32965
Jesse Keating 7a32965
%package debuginfo-common-%{_target_cpu}
Jesse Keating 7a32965
Summary: Kernel source files used by %{name}-debuginfo packages
Jesse Keating 7a32965
Group: Development/Debug
Jesse Keating 7a32965
%description debuginfo-common-%{_target_cpu}
Jesse Keating 7a32965
This package is required by %{name}-debuginfo subpackages.
Jesse Keating 7a32965
It provides the kernel source files common to all builds.
Jesse Keating 7a32965
Kyle McMartin 42d4c31
%if %{with_perf}
Kyle McMartin 42d4c31
%package -n perf
Kyle McMartin 42d4c31
Summary: Performance monitoring for the Linux kernel
Kyle McMartin 42d4c31
Group: Development/System
Kyle McMartin 42d4c31
License: GPLv2
Kyle McMartin 42d4c31
%description -n perf
Kyle McMartin 42d4c31
This package contains the perf tool, which enables performance monitoring
Kyle McMartin 42d4c31
of the Linux kernel.
Kyle McMartin 42d4c31
Kyle McMartin 42d4c31
%package -n perf-debuginfo
Kyle McMartin 42d4c31
Summary: Debug information for package perf
Kyle McMartin 42d4c31
Group: Development/Debug
Kyle McMartin 42d4c31
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
Kyle McMartin 42d4c31
AutoReqProv: no
Kyle McMartin 42d4c31
%description -n perf-debuginfo
Kyle McMartin 42d4c31
This package provides debug information for the perf package.
Kyle McMartin 42d4c31
Kyle McMartin 42d4c31
# Note that this pattern only works right to match the .build-id
Kyle McMartin 42d4c31
# symlinks because of the trailing nonmatching alternation and
Kyle McMartin 42d4c31
# the leading .*, because of find-debuginfo.sh's buggy handling
Kyle McMartin 42d4c31
# of matching the pattern against the symlinks file.
Kyle McMartin 42d4c31
%{expand:%%global debuginfo_args %{?debuginfo_args} -p '.*%%{_bindir}/perf(\.debug)?|.*%%{_libexecdir}/perf-core/.*|XXX' -o perf-debuginfo.list}
Kyle McMartin 42d4c31
Kyle McMartin 42d4c31
%package -n python-perf
Kyle McMartin 42d4c31
Summary: Python bindings for apps which will manipulate perf events
Kyle McMartin 42d4c31
Group: Development/Libraries
Kyle McMartin 42d4c31
%description -n python-perf
Kyle McMartin 42d4c31
The python-perf package contains a module that permits applications
Kyle McMartin 42d4c31
written in the Python programming language to use the interface
Kyle McMartin 42d4c31
to manipulate perf events.
Kyle McMartin 42d4c31
Kyle McMartin 42d4c31
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib(1)")}
Kyle McMartin 42d4c31
27d8a0e
%package -n python-perf-debuginfo
27d8a0e
Summary: Debug information for package perf python bindings
27d8a0e
Group: Development/Debug
27d8a0e
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
27d8a0e
AutoReqProv: no
27d8a0e
%description -n python-perf-debuginfo
27d8a0e
This package provides debug information for the perf python bindings.
27d8a0e
27d8a0e
# the python_sitearch macro should already be defined from above
27d8a0e
%{expand:%%global debuginfo_args %{?debuginfo_args} -p '.*%%{python_sitearch}/perf.so(\.debug)?|XXX' -o python-perf-debuginfo.list}
27d8a0e
27d8a0e
Kyle McMartin 42d4c31
%endif # with_perf
Kyle McMartin 42d4c31
Dave Jones 1d18ad9
%if %{with_tools}
Dave Jones 1d18ad9
%package -n kernel-tools
Dave Jones 1d18ad9
Summary: Assortment of tools for the Linux kernel
Jesse Keating 7a32965
Group: Development/System
Jesse Keating 7a32965
License: GPLv2
02587b4
Provides:  cpupowerutils = 1:009-0.6.p1
02587b4
Obsoletes: cpupowerutils < 1:009-0.6.p1
02587b4
Provides:  cpufreq-utils = 1:009-0.6.p1
02587b4
Provides:  cpufrequtils = 1:009-0.6.p1
02587b4
Obsoletes: cpufreq-utils < 1:009-0.6.p1
02587b4
Obsoletes: cpufrequtils < 1:009-0.6.p1
02587b4
Obsoletes: cpuspeed < 1:1.5-16
3b80ddd
Requires: kernel-tools-libs = %{version}-%{release}
Dave Jones 1d18ad9
%description -n kernel-tools
Dave Jones 1d18ad9
This package contains the tools/ directory from the kernel source
Kyle McMartin 42d4c31
and the supporting documentation.
Roland McGrath 3c4ea9a
3b80ddd
%package -n kernel-tools-libs
3b80ddd
Summary: Libraries for the kernels-tools
3b80ddd
Group: Development/System
3b80ddd
License: GPLv2
3b80ddd
%description -n kernel-tools-libs
3b80ddd
This package contains the libraries built from the tools/ directory
3b80ddd
from the kernel source.
3b80ddd
3b80ddd
%package -n kernel-tools-libs-devel
8addb5f
Summary: Assortment of tools for the Linux kernel
8addb5f
Group: Development/System
8addb5f
License: GPLv2
02587b4
Requires: kernel-tools = %{version}-%{release}
0ad3713
Provides:  cpupowerutils-devel = 1:009-0.6.p1
0ad3713
Obsoletes: cpupowerutils-devel < 1:009-0.6.p1
3b80ddd
Requires: kernel-tools-libs = %{version}-%{release}
b12047e
Provides: kernel-tools-devel
3b80ddd
%description -n kernel-tools-libs-devel
8addb5f
This package contains the development files for the tools/ directory from
8addb5f
the kernel source.
8addb5f
Dave Jones 1d18ad9
%package -n kernel-tools-debuginfo
Dave Jones 1d18ad9
Summary: Debug information for package kernel-tools
Roland McGrath 3c4ea9a
Group: Development/Debug
Roland McGrath 3c4ea9a
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
Roland McGrath 3c4ea9a
AutoReqProv: no
Dave Jones 1d18ad9
%description -n kernel-tools-debuginfo
Dave Jones 1d18ad9
This package provides debug information for package kernel-tools.
Roland McGrath 3c4ea9a
Roland McGrath 3c4ea9a
# Note that this pattern only works right to match the .build-id
Roland McGrath 3c4ea9a
# symlinks because of the trailing nonmatching alternation and
Roland McGrath 3c4ea9a
# the leading .*, because of find-debuginfo.sh's buggy handling
Roland McGrath 3c4ea9a
# of matching the pattern against the symlinks file.
Kyle McMartin 42d4c31
%{expand:%%global debuginfo_args %{?debuginfo_args} -p '.*%%{_bindir}/centrino-decode(\.debug)?|.*%%{_bindir}/powernow-k8-decode(\.debug)?|.*%%{_bindir}/cpupower(\.debug)?|.*%%{_libdir}/libcpupower.*|XXX' -o kernel-tools-debuginfo.list}
Kyle McMartin ec31efd
Kyle McMartin 42d4c31
%endif # with_tools
Jesse Keating 7a32965
Jesse Keating 7a32965
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# This macro creates a kernel-<subpackage>-debuginfo package.
Jesse Keating 7a32965
#	%%kernel_debuginfo_package <subpackage>
Jesse Keating 7a32965
#
Jesse Keating 7a32965
%define kernel_debuginfo_package() \
Jesse Keating 7a32965
%package %{?1:%{1}-}debuginfo\
Jesse Keating 7a32965
Summary: Debug information for package %{name}%{?1:-%{1}}\
Jesse Keating 7a32965
Group: Development/Debug\
Jesse Keating 7a32965
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}\
Jesse Keating 7a32965
Provides: %{name}%{?1:-%{1}}-debuginfo-%{_target_cpu} = %{version}-%{release}\
Jesse Keating 7a32965
AutoReqProv: no\
Jesse Keating 7a32965
%description -n %{name}%{?1:-%{1}}-debuginfo\
Jesse Keating 7a32965
This package provides debug information for package %{name}%{?1:-%{1}}.\
Jesse Keating 7a32965
This is required to use SystemTap with %{name}%{?1:-%{1}}-%{KVERREL}.\
Jesse Keating 7a32965
%{expand:%%global debuginfo_args %{?debuginfo_args} -p '/.*/%%{KVERREL}%{?1:\.%{1}}/.*|/.*%%{KVERREL}%{?1:\.%{1}}(\.debug)?' -o debuginfo%{?1}.list}\
Jesse Keating 7a32965
%{nil}
Jesse Keating 7a32965
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# This macro creates a kernel-<subpackage>-devel package.
Jesse Keating 7a32965
#	%%kernel_devel_package <subpackage> <pretty-name>
Jesse Keating 7a32965
#
Jesse Keating 7a32965
%define kernel_devel_package() \
Jesse Keating 7a32965
%package %{?1:%{1}-}devel\
Jesse Keating 7a32965
Summary: Development package for building kernel modules to match the %{?2:%{2} }kernel\
Jesse Keating 7a32965
Group: System Environment/Kernel\
Jesse Keating 7a32965
Provides: kernel%{?1:-%{1}}-devel-%{_target_cpu} = %{version}-%{release}\
Jesse Keating 7a32965
Provides: kernel-devel-%{_target_cpu} = %{version}-%{release}%{?1:.%{1}}\
Jesse Keating 7a32965
Provides: kernel-devel = %{version}-%{release}%{?1:.%{1}}\
Jesse Keating 7a32965
Provides: kernel-devel-uname-r = %{KVERREL}%{?1:.%{1}}\
Jesse Keating 7a32965
AutoReqProv: no\
Jesse Keating 7a32965
Requires(pre): /usr/bin/find\
Jesse Keating 7a32965
Requires: perl\
Jesse Keating 7a32965
%description -n kernel%{?variant}%{?1:-%{1}}-devel\
Jesse Keating 7a32965
This package provides kernel headers and makefiles sufficient to build modules\
Jesse Keating 7a32965
against the %{?2:%{2} }kernel package.\
Jesse Keating 7a32965
%{nil}
Jesse Keating 7a32965
Jesse Keating 7a32965
#
b8b2783
# This macro creates a kernel-<subpackage>-modules-extra package.
b8b2783
#	%%kernel_modules-extra_package <subpackage> <pretty-name>
b8b2783
#
b8b2783
%define kernel_modules-extra_package() \
b8b2783
%package %{?1:%{1}-}modules-extra\
b8b2783
Summary: Extra kernel modules to match the %{?2:%{2} }kernel\
b8b2783
Group: System Environment/Kernel\
b8b2783
Provides: kernel%{?1:-%{1}}-modules-extra-%{_target_cpu} = %{version}-%{release}\
b8b2783
Provides: kernel-modules-extra-%{_target_cpu} = %{version}-%{release}%{?1:.%{1}}\
b8b2783
Provides: kernel-modules-extra = %{version}-%{release}%{?1:.%{1}}\
6721e49
Provides: installonlypkg(kernel-module)\
b8b2783
Provides: kernel-modules-extra-uname-r = %{KVERREL}%{?1:.%{1}}\
b66345b
Requires: kernel-uname-r = %{KVERREL}%{?1:.%{1}}\
b8b2783
AutoReqProv: no\
b8b2783
%description -n kernel%{?variant}%{?1:-%{1}}-modules-extra\
b8b2783
This package provides less commonly used kernel modules for the %{?2:%{2} }kernel package.\
b8b2783
%{nil}
b8b2783
b8b2783
#
Jesse Keating 7a32965
# This macro creates a kernel-<subpackage> and its -devel and -debuginfo too.
Jesse Keating 7a32965
#	%%define variant_summary The Linux kernel compiled for <configuration>
Jesse Keating 7a32965
#	%%kernel_variant_package [-n <pretty-name>] <subpackage>
Jesse Keating 7a32965
#
Jesse Keating 7a32965
%define kernel_variant_package(n:) \
Jesse Keating 7a32965
%package %1\
Jesse Keating 7a32965
Summary: %{variant_summary}\
Jesse Keating 7a32965
Group: System Environment/Kernel\
Jesse Keating 7a32965
%kernel_reqprovconf\
Jesse Keating 7a32965
%{expand:%%kernel_devel_package %1 %{!?-n:%1}%{?-n:%{-n*}}}\
b8b2783
%{expand:%%kernel_modules-extra_package %1 %{!?-n:%1}%{?-n:%{-n*}}}\
Jesse Keating 7a32965
%{expand:%%kernel_debuginfo_package %1}\
Jesse Keating 7a32965
%{nil}
Jesse Keating 7a32965
Jesse Keating 7a32965
Jesse Keating 7a32965
# First the auxiliary packages of the main kernel package.
Jesse Keating 7a32965
%kernel_devel_package
b8b2783
%kernel_modules-extra_package
Jesse Keating 7a32965
%kernel_debuginfo_package
Jesse Keating 7a32965
Jesse Keating 7a32965
Jesse Keating 7a32965
# Now, each variant package.
Jesse Keating 7a32965
Jesse Keating 7a32965
%define variant_summary The Linux kernel compiled for SMP machines
Jesse Keating 7a32965
%kernel_variant_package -n SMP smp
Jesse Keating 7a32965
%description smp
Jesse Keating 7a32965
This package includes a SMP version of the Linux kernel. It is
Jesse Keating 7a32965
required only on machines with two or more CPUs as well as machines with
Jesse Keating 7a32965
hyperthreading technology.
Jesse Keating 7a32965
Jesse Keating 7a32965
Install the kernel-smp package if your machine uses two or more CPUs.
Jesse Keating 7a32965
Jesse Keating 7a32965
Jesse Keating 7a32965
%define variant_summary The Linux kernel compiled for PAE capable machines
Jesse Keating 7a32965
%kernel_variant_package PAE
Jesse Keating 7a32965
%description PAE
Jesse Keating 7a32965
This package includes a version of the Linux kernel with support for up to
Jesse Keating 7a32965
64GB of high memory. It requires a CPU with Physical Address Extensions (PAE).
Jesse Keating 7a32965
The non-PAE kernel can only address up to 4GB of memory.
Jesse Keating 7a32965
Install the kernel-PAE package if your machine has more than 4GB of memory.
Jesse Keating 7a32965
Jesse Keating 7a32965
Jesse Keating 7a32965
%define variant_summary The Linux kernel compiled with extra debugging enabled for PAE capable machines
Jesse Keating 7a32965
%kernel_variant_package PAEdebug
Jesse Keating 7a32965
Obsoletes: kernel-PAE-debug
Jesse Keating 7a32965
%description PAEdebug
Jesse Keating 7a32965
This package includes a version of the Linux kernel with support for up to
Jesse Keating 7a32965
64GB of high memory. It requires a CPU with Physical Address Extensions (PAE).
Jesse Keating 7a32965
The non-PAE kernel can only address up to 4GB of memory.
Jesse Keating 7a32965
Install the kernel-PAE package if your machine has more than 4GB of memory.
Jesse Keating 7a32965
Jesse Keating 7a32965
This variant of the kernel has numerous debugging options enabled.
Jesse Keating 7a32965
It should only be installed when trying to gather additional information
Jesse Keating 7a32965
on kernel bugs, as some of these options impact performance noticably.
Jesse Keating 7a32965
Jesse Keating 7a32965
Jesse Keating 7a32965
%define variant_summary The Linux kernel compiled with extra debugging enabled
Jesse Keating 7a32965
%kernel_variant_package debug
Jesse Keating 7a32965
%description debug
Jesse Keating 7a32965
The kernel package contains the Linux kernel (vmlinuz), the core of any
Jesse Keating 7a32965
Linux operating system.  The kernel handles the basic functions
Jesse Keating 7a32965
of the operating system:  memory allocation, process allocation, device
Jesse Keating 7a32965
input and output, etc.
Jesse Keating 7a32965
Jesse Keating 7a32965
This variant of the kernel has numerous debugging options enabled.
Jesse Keating 7a32965
It should only be installed when trying to gather additional information
Jesse Keating 7a32965
on kernel bugs, as some of these options impact performance noticably.
Jesse Keating 7a32965
534352f
%define variant_summary The Linux kernel compiled for marvell kirkwood boards
534352f
%kernel_variant_package kirkwood
534352f
%description kirkwood
534352f
This package includes a version of the Linux kernel with support for
534352f
marvell kirkwood based systems, i.e., guruplug, sheevaplug
534352f
986a9f3
%define variant_summary The Linux kernel compiled for TI-OMAP boards
986a9f3
%kernel_variant_package omap
986a9f3
%description omap
986a9f3
This package includes a version of the Linux kernel with support for
986a9f3
TI-OMAP based systems, i.e., BeagleBoard-xM.
986a9f3
986a9f3
%define variant_summary The Linux kernel compiled for tegra boards
986a9f3
%kernel_variant_package tegra
986a9f3
%description tegra
986a9f3
This package includes a version of the Linux kernel with support for
986a9f3
nvidia tegra based systems, i.e., trimslice, ac-100.
986a9f3
986a9f3
Jesse Keating 7a32965
%prep
Jesse Keating 7a32965
# do a few sanity-checks for --with *only builds
Jesse Keating 7a32965
%if %{with_baseonly}
Jesse Keating 7a32965
%if !%{with_up}%{with_pae}
Jesse Keating 7a32965
echo "Cannot build --with baseonly, up build is disabled"
Jesse Keating 7a32965
exit 1
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{with_smponly}
Jesse Keating 7a32965
%if !%{with_smp}
Jesse Keating 7a32965
echo "Cannot build --with smponly, smp build is disabled"
Jesse Keating 7a32965
exit 1
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
c78a082
%if "%{baserelease}" == "0"
Chuck Ebbert 05e763b
echo "baserelease must be greater than zero"
Chuck Ebbert 05e763b
exit 1
Chuck Ebbert 05e763b
%endif
Chuck Ebbert 05e763b
Jesse Keating 7a32965
# more sanity checking; do it quietly
Jesse Keating 7a32965
if [ "%{patches}" != "%%{patches}" ] ; then
Jesse Keating 7a32965
  for patch in %{patches} ; do
Jesse Keating 7a32965
    if [ ! -f $patch ] ; then
Jesse Keating 7a32965
      echo "ERROR: Patch  ${patch##/*/}  listed in specfile but is missing"
Jesse Keating 7a32965
      exit 1
Jesse Keating 7a32965
    fi
Jesse Keating 7a32965
  done
Jesse Keating 7a32965
fi 2>/dev/null
Jesse Keating 7a32965
Jesse Keating 7a32965
patch_command='patch -p1 -F1 -s'
Jesse Keating 7a32965
ApplyPatch()
Jesse Keating 7a32965
{
Jesse Keating 7a32965
  local patch=$1
Jesse Keating 7a32965
  shift
Jesse Keating 7a32965
  if [ ! -f $RPM_SOURCE_DIR/$patch ]; then
Jesse Keating 7a32965
    exit 1
Jesse Keating 7a32965
  fi
Jesse Keating 7a32965
%if !%{using_upstream_branch}
Dave Jones b89c80f
  if ! grep -E "^Patch[0-9]+: $patch\$" %{_specdir}/${RPM_PACKAGE_NAME%%%%%{?variant}}.spec ; then
Kyle McMartin a8a2918
    if [ "${patch:0:8}" != "patch-3." ] ; then
Jesse Keating 7a32965
      echo "ERROR: Patch  $patch  not listed as a source patch in specfile"
Jesse Keating 7a32965
      exit 1
Jesse Keating 7a32965
    fi
Jesse Keating 7a32965
  fi 2>/dev/null
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
  case "$patch" in
Jesse Keating 7a32965
  *.bz2) bunzip2 < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
Chuck Ebbert 7cfa689
  *.gz)  gunzip  < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
Chuck Ebbert 7cfa689
  *.xz)  unxz    < "$RPM_SOURCE_DIR/$patch" | $patch_command ${1+"$@"} ;;
Jesse Keating 7a32965
  *) $patch_command ${1+"$@"} < "$RPM_SOURCE_DIR/$patch" ;;
Jesse Keating 7a32965
  esac
Jesse Keating 7a32965
}
Jesse Keating 7a32965
Jesse Keating 7a32965
# don't apply patch if it's empty
Jesse Keating 7a32965
ApplyOptionalPatch()
Jesse Keating 7a32965
{
Jesse Keating 7a32965
  local patch=$1
Jesse Keating 7a32965
  shift
Jesse Keating 7a32965
  if [ ! -f $RPM_SOURCE_DIR/$patch ]; then
Jesse Keating 7a32965
    exit 1
Jesse Keating 7a32965
  fi
Jesse Keating 7a32965
  local C=$(wc -l $RPM_SOURCE_DIR/$patch | awk '{print $1}')
Jesse Keating 7a32965
  if [ "$C" -gt 9 ]; then
Jesse Keating 7a32965
    ApplyPatch $patch ${1+"$@"}
Jesse Keating 7a32965
  fi
Jesse Keating 7a32965
}
Jesse Keating 7a32965
Jesse Keating 7a32965
# First we unpack the kernel tarball.
Jesse Keating 7a32965
# If this isn't the first make prep, we use links to the existing clean tarball
Jesse Keating 7a32965
# which speeds things up quite a bit.
Jesse Keating 7a32965
Jesse Keating 7a32965
# Update to latest upstream.
Jesse Keating 7a32965
%if 0%{?released_kernel}
Kyle McMartin 8b2fa9b
%define vanillaversion 3.%{base_sublevel}
Jesse Keating 7a32965
# non-released_kernel case
Jesse Keating 7a32965
%else
Jesse Keating 7a32965
%if 0%{?rcrev}
Kyle McMartin 8b2fa9b
%define vanillaversion 3.%{upstream_sublevel}-rc%{rcrev}
Jesse Keating 7a32965
%if 0%{?gitrev}
Kyle McMartin 8b2fa9b
%define vanillaversion 3.%{upstream_sublevel}-rc%{rcrev}-git%{gitrev}
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%else
Jesse Keating 7a32965
# pre-{base_sublevel+1}-rc1 case
Jesse Keating 7a32965
%if 0%{?gitrev}
Kyle McMartin 8b2fa9b
%define vanillaversion 3.%{base_sublevel}-git%{gitrev}
Jesse Keating 7a32965
%else
Kyle McMartin 8b2fa9b
%define vanillaversion 3.%{base_sublevel}
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Dave Jones 166b79a
# %%{vanillaversion} : the full version name, e.g. 2.6.35-rc6-git3
Dave Jones 166b79a
# %%{kversion}       : the base version, e.g. 2.6.34
Jesse Keating 7a32965
Dave Jones 166b79a
# Use kernel-%%{kversion}%%{?dist} as the top-level directory name
Chuck Ebbert 26d08c0
# so we can prep different trees within a single git directory.
Jesse Keating 7a32965
Chuck Ebbert 26d08c0
# Build a list of the other top-level kernel tree directories.
Chuck Ebbert 26d08c0
# This will be used to hardlink identical vanilla subdirs.
Kyle McMartin 8b2fa9b
sharedirs=$(find "$PWD" -maxdepth 1 -type d -name 'kernel-3.*' \
Chuck Ebbert 26d08c0
            | grep -x -v "$PWD"/kernel-%{kversion}%{?dist}) ||:
Jesse Keating 7a32965
Dave Jones 9e29439
# Delete all old stale trees.
Dave Jones 9e29439
if [ -d kernel-%{kversion}%{?dist} ]; then
Dave Jones 9e29439
  cd kernel-%{kversion}%{?dist}
Dave Jones 9e29439
  for i in linux-*
Dave Jones 9e29439
  do
Dave Jones 7bd4dec
     if [ -d $i ]; then
Dave Jones 7bd4dec
       # Just in case we ctrl-c'd a prep already
Dave Jones 7bd4dec
       rm -rf deleteme.%{_target_cpu}
Dave Jones 7bd4dec
       # Move away the stale away, and delete in background.
Dave Jones 7bd4dec
       mv $i deleteme-$i
Dave Jones 7bd4dec
       rm -rf deleteme* &
Dave Jones 7bd4dec
     fi
Dave Jones 9e29439
  done
Dave Jones 9e29439
  cd ..
Dave Jones 9e29439
fi
Dave Jones 9e29439
Dave Jones 9e29439
# Generate new tree
Chuck Ebbert 26d08c0
if [ ! -d kernel-%{kversion}%{?dist}/vanilla-%{vanillaversion} ]; then
Chuck Ebbert 26d08c0
Chuck Ebbert 26d08c0
  if [ -d kernel-%{kversion}%{?dist}/vanilla-%{kversion} ]; then
Chuck Ebbert 26d08c0
Chuck Ebbert 26d08c0
    # The base vanilla version already exists.
Chuck Ebbert 26d08c0
    cd kernel-%{kversion}%{?dist}
Jesse Keating 7a32965
Jesse Keating 7a32965
    # Any vanilla-* directories other than the base one are stale.
Jesse Keating 7a32965
    for dir in vanilla-*; do
Jesse Keating 7a32965
      [ "$dir" = vanilla-%{kversion} ] || rm -rf $dir &
Jesse Keating 7a32965
    done
Jesse Keating 7a32965
Jesse Keating 7a32965
  else
Jesse Keating 7a32965
Jesse Keating 7a32965
    rm -f pax_global_header
Chuck Ebbert 26d08c0
    # Look for an identical base vanilla dir that can be hardlinked.
Jesse Keating 7a32965
    for sharedir in $sharedirs ; do
Chuck Ebbert 26d08c0
      if [[ ! -z $sharedir  &&  -d $sharedir/vanilla-%{kversion} ]] ; then
Jesse Keating 7a32965
        break
Jesse Keating 7a32965
      fi
Jesse Keating 7a32965
    done
Chuck Ebbert 26d08c0
    if [[ ! -z $sharedir  &&  -d $sharedir/vanilla-%{kversion} ]] ; then
Chuck Ebbert 26d08c0
%setup -q -n kernel-%{kversion}%{?dist} -c -T
Chuck Ebbert 26d08c0
      cp -rl $sharedir/vanilla-%{kversion} .
Jesse Keating 7a32965
    else
Chuck Ebbert 26d08c0
%setup -q -n kernel-%{kversion}%{?dist} -c
728b14e
      mv linux-%{kversion} vanilla-%{kversion}
Jesse Keating 7a32965
    fi
Jesse Keating 7a32965
Jesse Keating 7a32965
  fi
Jesse Keating 7a32965
Jesse Keating 7a32965
%if "%{kversion}" != "%{vanillaversion}"
Jesse Keating 7a32965
Jesse Keating 7a32965
  for sharedir in $sharedirs ; do
Chuck Ebbert 26d08c0
    if [[ ! -z $sharedir  &&  -d $sharedir/vanilla-%{vanillaversion} ]] ; then
Jesse Keating 7a32965
      break
Jesse Keating 7a32965
    fi
Jesse Keating 7a32965
  done
Chuck Ebbert 26d08c0
  if [[ ! -z $sharedir  &&  -d $sharedir/vanilla-%{vanillaversion} ]] ; then
Jesse Keating 7a32965
Chuck Ebbert 26d08c0
    cp -rl $sharedir/vanilla-%{vanillaversion} .
Jesse Keating 7a32965
Jesse Keating 7a32965
  else
Jesse Keating 7a32965
Chuck Ebbert 26d08c0
    # Need to apply patches to the base vanilla version.
Jesse Keating 7a32965
    cp -rl vanilla-%{kversion} vanilla-%{vanillaversion}
Jesse Keating 7a32965
    cd vanilla-%{vanillaversion}
Jesse Keating 7a32965
Jesse Keating 7a32965
# Update vanilla to the latest upstream.
Jesse Keating 7a32965
# (non-released_kernel case only)
Jesse Keating 7a32965
%if 0%{?rcrev}
471066e
    ApplyPatch patch-3.%{upstream_sublevel}-rc%{rcrev}.xz
Jesse Keating 7a32965
%if 0%{?gitrev}
471066e
    ApplyPatch patch-3.%{upstream_sublevel}-rc%{rcrev}-git%{gitrev}.xz
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%else
Jesse Keating 7a32965
# pre-{base_sublevel+1}-rc1 case
Jesse Keating 7a32965
%if 0%{?gitrev}
Dave Jones 7bd4dec
    ApplyPatch patch-3.%{base_sublevel}-git%{gitrev}.xz
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
    cd ..
Jesse Keating 7a32965
Jesse Keating 7a32965
  fi
Jesse Keating 7a32965
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
else
Chuck Ebbert 26d08c0
Chuck Ebbert 26d08c0
  # We already have all vanilla dirs, just change to the top-level directory.
Chuck Ebbert 26d08c0
  cd kernel-%{kversion}%{?dist}
Chuck Ebbert 26d08c0
Jesse Keating 7a32965
fi
Jesse Keating 7a32965
Chuck Ebbert 26d08c0
# Now build the fedora kernel tree.
83337ce
cp -rl vanilla-%{vanillaversion} linux-%{KVERREL}
Jesse Keating 7a32965
83337ce
cd linux-%{KVERREL}
Jesse Keating 7a32965
Jesse Keating 7a32965
# released_kernel with possible stable updates
Jesse Keating 7a32965
%if 0%{?stable_base}
Jesse Keating 7a32965
ApplyPatch %{stable_patch_00}
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%if 0%{?stable_rc}
Jesse Keating 7a32965
ApplyPatch %{stable_patch_01}
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{using_upstream_branch}
Jesse Keating 7a32965
### BRANCH APPLY ###
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
# Drop some necessary files from the source dir into the buildroot
Jesse Keating 7a32965
cp $RPM_SOURCE_DIR/config-* .
Jesse Keating 7a32965
cp %{SOURCE15} .
Jesse Keating 7a32965
Chuck Ebbert c6b36e0
%if !%{debugbuildsenabled}
Chuck Ebbert 11ee033
%if %{with_release}
Chuck Ebbert c6b36e0
# The normal build is a really debug build and the user has explicitly requested
Chuck Ebbert 11ee033
# a release kernel. Change the config files into non-debug versions.
Chuck Ebbert c6b36e0
make -f %{SOURCE19} config-release
Chuck Ebbert c6b36e0
%endif
Chuck Ebbert c6b36e0
%endif
Chuck Ebbert c6b36e0
Jesse Keating 7a32965
# Dynamically generate kernel .config files from config-* files
Jesse Keating 7a32965
make -f %{SOURCE20} VERSION=%{version} configs
Jesse Keating 7a32965
Jarod Wilson 5b65297
# Merge in any user-provided local config option changes
Kyle McMartin 9410e6c
%if %{?all_arch_configs:1}%{!?all_arch_configs:0}
Jarod Wilson 5b65297
for i in %{all_arch_configs}
Jarod Wilson 5b65297
do
Jarod Wilson 5b65297
  mv $i $i.tmp
Jarod Wilson 5b65297
  ./merge.pl %{SOURCE1000} $i.tmp > $i
Jarod Wilson 5b65297
  rm $i.tmp
Jarod Wilson 5b65297
done
cfdfd01
%endif
Jarod Wilson 5b65297
Jesse Keating 7a32965
ApplyPatch linux-2.6-makefile-after_link.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# misc small stuff to make things compile
Jesse Keating 7a32965
#
Jesse Keating 7a32965
ApplyOptionalPatch linux-2.6-compile-fixes.patch
Jesse Keating 7a32965
4acebb2
ApplyPatch power-x86-destdir.patch
4acebb2
Jesse Keating 7a32965
%if !%{nopatches}
Jesse Keating 7a32965
Jesse Keating 7a32965
# revert patches from upstream that conflict or that we get via other means
Jesse Keating 7a32965
ApplyOptionalPatch linux-2.6-upstream-reverts.patch -R
Jesse Keating 7a32965
Jesse Keating 7a32965
Dave Jones 64f1bc9
ApplyPatch taint-vbox.patch
Dave Jones 64f1bc9
Dave Jones b37f31d
ApplyPatch vmbugon-warnon.patch
Dave Jones b37f31d
Jesse Keating 7a32965
# Architecture patches
Jesse Keating 7a32965
# x86(-64)
Jesse Keating 7a32965
Jesse Keating 7a32965
#
986a9f3
# ARM
986a9f3
#
Dave Jones 03fb1ee
#ApplyPatch arm-read_current_timer.patch
Dave Jones 03fb1ee
#ApplyPatch arm-fix-omapdrm.patch
2ddf29a
2ddf29a
ApplyPatch arm-l2x0-only-set-set_debug-on-pl310-r3p0-and-earlier.patch
d78aa36
ApplyPatch arm-tegra-nvec-kconfig.patch
df483e6
ApplyPatch arm-tegra-usb-no-reset-linux33.patch
50c065d
ApplyPatch arm-tegra-sdhci-module-fix.patch
39c7bf3
ApplyPatch arm-alignment-faults.patch
Mauro Carvalho Chehab 0291edf
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# bugfixes to drivers and filesystems
Jesse Keating 7a32965
#
Jesse Keating 7a32965
Jesse Keating 7a32965
# ext4
Jesse Keating 7a32965
Jesse Keating 7a32965
# xfs
Jesse Keating 7a32965
Jesse Keating 7a32965
# btrfs
Jesse Keating 7a32965
Jesse Keating 7a32965
# eCryptfs
Jesse Keating 7a32965
Jesse Keating 7a32965
# NFSv4
Jesse Keating 7a32965
Jesse Keating 7a32965
# USB
Jesse Keating 7a32965
Jesse Keating 7a32965
# WMI
Jesse Keating 7a32965
Jesse Keating 7a32965
# ACPI
Jesse Keating 7a32965
ApplyPatch linux-2.6-defaults-acpi-video.patch
Jesse Keating 7a32965
ApplyPatch linux-2.6-acpi-video-dos.patch
Jesse Keating 7a32965
ApplyPatch linux-2.6-acpi-debug-infinite-loop.patch
Dave Jones a4b83ee
ApplyPatch acpi-sony-nonvs-blacklist.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# PCI
Jesse Keating 7a32965
#
Jesse Keating 7a32965
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# SCSI Bits.
Jesse Keating 7a32965
#
Jesse Keating 7a32965
Jesse Keating 7a32965
# ACPI
Jesse Keating 7a32965
Jesse Keating 7a32965
# ALSA
Jesse Keating 7a32965
Jesse Keating 7a32965
# Networking
Jesse Keating 7a32965
Jesse Keating 7a32965
# Misc fixes
Jesse Keating 7a32965
# The input layer spews crap no-one cares about.
Jesse Keating 7a32965
ApplyPatch linux-2.6-input-kill-stupid-messages.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# stop floppy.ko from autoloading during udev...
Jesse Keating 7a32965
ApplyPatch die-floppy-die.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
ApplyPatch linux-2.6.30-no-pcspkr-modalias.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# Allow to use 480600 baud on 16C950 UARTs
Jesse Keating 7a32965
ApplyPatch linux-2.6-serial-460800.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# Silence some useless messages that still get printed with 'quiet'
Jesse Keating 7a32965
ApplyPatch linux-2.6-silence-noise.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# Make fbcon not show the penguins with 'quiet'
Jesse Keating 7a32965
ApplyPatch linux-2.6-silence-fbcon-logo.patch
Jesse Keating 7a32965
Dave Jones 79cfaf9
# no-one cares about these warnings.
Dave Jones 79cfaf9
ApplyPatch silence-empty-ipi-mask-warning.patch
Dave Jones 79cfaf9
Jesse Keating 7a32965
# Changes to upstream defaults.
Jesse Keating 7a32965
Jesse Keating 7a32965
Jesse Keating 7a32965
# /dev/crash driver.
Jesse Keating 7a32965
ApplyPatch linux-2.6-crash-driver.patch
Jesse Keating 7a32965
Dave Jones f737348
# Hack e1000e to work on Montevina SDV
Dave Jones f737348
ApplyPatch linux-2.6-e1000-ich9-montevina.patch
Dave Jones f737348
Jesse Keating 7a32965
# crypto/
8febe3d
ApplyPatch modsign-post-KS-jwb.patch
306dfcc
306dfcc
# secure boot
Dave Jones 03fb1ee
ApplyPatch efivarfs-3.7.patch
bd4318b
ApplyPatch secure-boot-3.7-20130204.patch
Jesse Keating 7a32965
Matthew Garrett e681abd
# Improved PCI support for UEFI
Matthew Garrett e681abd
ApplyPatch handle-efi-roms.patch
Matthew Garrett e681abd
Jesse Keating 7a32965
# Assorted Virt Fixes
Jesse Keating 7a32965
Kyle McMartin d3e4af8
# DRM core
0e0a3af
#ApplyPatch drm-edid-try-harder-to-fix-up-broken-headers.patch
dd2f784
#ApplyPatch drm-vgem.patch
Jesse Keating 7a32965
Kyle McMartin d3e4af8
# Nouveau DRM
Kyle McMartin d3e4af8
Kyle McMartin d3e4af8
# Intel DRM
Jesse Keating 7a32965
ApplyOptionalPatch drm-intel-next.patch
4574844
ApplyPatch drm-i915-dp-stfu.patch
Dave Jones 19e3780
Jesse Keating 7a32965
# silence the ACPI blacklist code
Jesse Keating 7a32965
ApplyPatch linux-2.6-silence-acpi-blacklist.patch
e7cafd4
ApplyPatch quite-apm.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# V4L/DVB updates/fixes/experimental drivers
Jesse Keating 7a32965
#  apply if non-empty
Jesse Keating 7a32965
ApplyOptionalPatch linux-2.6-v4l-dvb-fixes.patch
Jesse Keating 7a32965
ApplyOptionalPatch linux-2.6-v4l-dvb-update.patch
Jesse Keating 7a32965
ApplyOptionalPatch linux-2.6-v4l-dvb-experimental.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# Patches headed upstream
Dave Jones 6a501c4
ApplyPatch fs-proc-devtree-remove_proc_entry.patch
Dave Jones 6a501c4
Jesse Keating 7a32965
ApplyPatch disable-i8042-check-on-apple-mac.patch
Jesse Keating 7a32965
Kyle McMartin dbda5f5
# rhbz#605888
Kyle McMartin dbda5f5
ApplyPatch dmar-disable-when-ricoh-multifunction.patch
Kyle McMartin dbda5f5
bc12142
ApplyPatch efi-dont-map-boot-services-on-32bit.patch
bc12142
Dave Jones 7bd4dec
# FIXME: REBASE
Dave Jones 7bd4dec
#ApplyPatch hibernate-freeze-filesystems.patch
fcbaf26
Dave Jones abc7c8e
ApplyPatch lis3-improve-handling-of-null-rate.patch
Dave Jones abc7c8e
Dave Jones 03fb1ee
#ApplyPatch 0001-efifb-Skip-DMI-checks-if-the-bootloader-knows-what-i.patch
Dave Jones 03fb1ee
#ApplyPatch 0002-x86-EFI-Calculate-the-EFI-framebuffer-size-instead-o.patch
David Woodhouse 4f94f04
af1af57
#rhbz 754518
af1af57
ApplyPatch scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch
af1af57
Dave Jones 40b1a0c
ApplyPatch weird-root-dentry-name-debug.patch
Dave Jones 40b1a0c
1d7d6c1
#selinux ptrace child permissions
1d7d6c1
ApplyPatch selinux-apply-different-permission-to-ptrace-child.patch
1d7d6c1
4040634
#rhbz 871078
4040634
ApplyPatch USB-report-submission-of-active-URBs.patch
4040634
9bb5a1f
#rhbz 859485
9bb5a1f
ApplyPatch vt-Drop-K_OFF-for-VC_MUTE.patch
9bb5a1f
4703e15
#rhbz CVE-2012-4530 868285 880147
4703e15
ApplyPatch exec-use-eloop-for-max-recursion-depth.patch
4703e15
e9b768c
#rhbz 851278
6cd918b
ApplyPatch 8139cp-revert-set-ring-address-before-enabling-receiver.patch -R
bbc321a
ApplyPatch 8139cp-set-ring-address-after-enabling-C-mode.patch
bbc321a
ApplyPatch 8139cp-re-enable-interrupts-after-tx-timeout.patch
e9b768c
dd35eb3
#rhbz 892428
dd35eb3
ApplyPatch brcmsmac-updates-rhbz892428.patch
dd35eb3
82e26bd
#rhbz 863424
82e26bd
ApplyPatch Revert-iwlwifi-fix-the-reclaimed-packet-tracking-upon.patch
82e26bd
07ef26c
#rhbz 799564
07ef26c
ApplyPatch Input-increase-struct-ps2dev-cmdbuf-to-8-bytes.patch
07ef26c
ApplyPatch Input-add-support-for-Cypress-PS2-Trackpads.patch
07ef26c
0f4abb5
#rhbz 903881
0f4abb5
ApplyPatch rtlwifi-Fix-scheduling-while-atomic-bug.patch
0f4abb5
2256aa8
#rhbz 892811
2256aa8
ApplyPatch ath9k_rx_dma_stop_check.patch
2256aa8
Dave Jones a13d73a
ApplyPatch silence-brcmsmac-warning.patch
Dave Jones a13d73a
Jesse Keating 7a32965
# END OF PATCH APPLICATIONS
Jesse Keating 7a32965
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
# Any further pre-build tree manipulations happen here.
Jesse Keating 7a32965
Jesse Keating 7a32965
chmod +x scripts/checkpatch.pl
Jesse Keating 7a32965
Dave Jones ed3d267
# This Prevents scripts/setlocalversion from mucking with our version numbers.
Kyle McMartin fa06609
touch .scmversion
Kyle McMartin fa06609
Jesse Keating 7a32965
# only deal with configs if we are going to build for the arch
Jesse Keating 7a32965
%ifnarch %nobuildarches
Jesse Keating 7a32965
Jesse Keating 7a32965
mkdir configs
Jesse Keating 7a32965
Jesse Keating 7a32965
# Remove configs not for the buildarch
Jesse Keating 7a32965
for cfg in kernel-%{version}-*.config; do
Jesse Keating 7a32965
  if [ `echo %{all_arch_configs} | grep -c $cfg` -eq 0 ]; then
Jesse Keating 7a32965
    rm -f $cfg
Jesse Keating 7a32965
  fi
Jesse Keating 7a32965
done
Jesse Keating 7a32965
Jesse Keating 7a32965
%if !%{debugbuildsenabled}
Jesse Keating 7a32965
rm -f kernel-%{version}-*debug.config
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Dave Jones 03fb1ee
# now run oldconfig over all the config files
Dave Jones 03fb1ee
for i in *.config
Dave Jones 03fb1ee
do
Dave Jones 03fb1ee
  mv $i .config
Dave Jones 03fb1ee
  Arch=`head -1 .config | cut -b 3-`
Dave Jones 03fb1ee
  make ARCH=$Arch listnewconfig | grep -E '^CONFIG_' >.newoptions || true
Dave Jones 03fb1ee
%if %{listnewconfig_fail}
Dave Jones 03fb1ee
  if [ -s .newoptions ]; then
Dave Jones 03fb1ee
    cat .newoptions
Dave Jones 03fb1ee
    exit 1
Dave Jones 03fb1ee
  fi
Dave Jones 03fb1ee
%endif
Dave Jones 03fb1ee
  rm -f .newoptions
Dave Jones 03fb1ee
  make ARCH=$Arch oldnoconfig
Dave Jones 03fb1ee
  echo "# $Arch" > configs/$i
Dave Jones 03fb1ee
  cat .config >> configs/$i
Dave Jones 03fb1ee
done
Jesse Keating 7a32965
# end of kernel config
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
John W. Linville fa580e5
# get rid of unwanted files resulting from patch fuzz
John W. Linville fa580e5
find . \( -name "*.orig" -o -name "*~" \) -exec rm -f {} \; >/dev/null
John W. Linville fa580e5
Dave Jones 246f94f
# remove unnecessary SCM files
Dave Jones 246f94f
find . -name .gitignore -exec rm -f {} \; >/dev/null
Dave Jones 246f94f
Jesse Keating 7a32965
cd ..
Jesse Keating 7a32965
Jesse Keating 7a32965
###
Jesse Keating 7a32965
### build
Jesse Keating 7a32965
###
Jesse Keating 7a32965
%build
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{with_sparse}
Jesse Keating 7a32965
%define sparse_mflags	C=1
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Kyle McMartin 1bfd59b
%if %{with_debuginfo}
Jesse Keating 7a32965
# This override tweaks the kernel makefiles so that we run debugedit on an
Jesse Keating 7a32965
# object before embedding it.  When we later run find-debuginfo.sh, it will
Jesse Keating 7a32965
# run debugedit again.  The edits it does change the build ID bits embedded
Jesse Keating 7a32965
# in the stripped object, but repeating debugedit is a no-op.  We do it
Jesse Keating 7a32965
# beforehand to get the proper final build ID bits into the embedded image.
Jesse Keating 7a32965
# This affects the vDSO images in vmlinux, and the vmlinux image in bzImage.
Jesse Keating 7a32965
export AFTER_LINK=\
Jesse Keating 7a32965
'sh -xc "/usr/lib/rpm/debugedit -b $$RPM_BUILD_DIR -d /usr/src/debug \
Jesse Keating 7a32965
    				-i $@ > $@.id"'
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
cp_vmlinux()
Jesse Keating 7a32965
{
Jesse Keating 7a32965
  eu-strip --remove-comment -o "$2" "$1"
Jesse Keating 7a32965
}
Jesse Keating 7a32965
Jesse Keating 7a32965
BuildKernel() {
Jesse Keating 7a32965
    MakeTarget=$1
Jesse Keating 7a32965
    KernelImage=$2
Jesse Keating 7a32965
    Flavour=$3
Jesse Keating 7a32965
    InstallName=${4:-vmlinuz}
Jesse Keating 7a32965
Jesse Keating 7a32965
    # Pick the right config file for the kernel we're building
Jesse Keating 7a32965
    Config=kernel-%{version}-%{_target_cpu}${Flavour:+-${Flavour}}.config
Jesse Keating 7a32965
    DevelDir=/usr/src/kernels/%{KVERREL}${Flavour:+.${Flavour}}
Jesse Keating 7a32965
Jesse Keating 7a32965
    # When the bootable image is just the ELF kernel, strip it.
Jesse Keating 7a32965
    # We already copy the unstripped file into the debuginfo package.
Jesse Keating 7a32965
    if [ "$KernelImage" = vmlinux ]; then
Jesse Keating 7a32965
      CopyKernel=cp_vmlinux
Jesse Keating 7a32965
    else
Jesse Keating 7a32965
      CopyKernel=cp
Jesse Keating 7a32965
    fi
Jesse Keating 7a32965
Jesse Keating 7a32965
    KernelVer=%{version}-%{release}.%{_target_cpu}${Flavour:+.${Flavour}}
Jesse Keating 7a32965
    echo BUILDING A KERNEL FOR ${Flavour} %{_target_cpu}...
Jesse Keating 7a32965
740de53
    %if 0%{?stable_update}
740de53
    # make sure SUBLEVEL is incremented on a stable release.  Sigh 3.x.
740de53
    perl -p -i -e "s/^SUBLEVEL.*/SUBLEVEL = %{?stablerev}/" Makefile
740de53
    %endif
740de53
Jesse Keating 7a32965
    # make sure EXTRAVERSION says what we want it to say
740de53
    perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -%{release}.%{_target_cpu}${Flavour:+.${Flavour}}/" Makefile
Jesse Keating 7a32965
9e4aeab
    # if pre-rc1 devel kernel, must fix up PATCHLEVEL for our versioning scheme
Jesse Keating 7a32965
    %if !0%{?rcrev}
Jesse Keating 7a32965
    %if 0%{?gitrev}
9e4aeab
    perl -p -i -e 's/^PATCHLEVEL.*/PATCHLEVEL = %{upstream_sublevel}/' Makefile
Jesse Keating 7a32965
    %endif
Jesse Keating 7a32965
    %endif
Jesse Keating 7a32965
Jesse Keating 7a32965
    # and now to start the build process
Jesse Keating 7a32965
Jesse Keating 7a32965
    make -s mrproper
Jesse Keating 7a32965
    cp configs/$Config .config
Jesse Keating 7a32965
f8f8ccf
    %if %{signmodules}
f8f8ccf
    cp %{SOURCE11} .
f8f8ccf
    chmod +x scripts/sign-file
bcf7eac
    %endif
f8f8ccf
Jesse Keating 7a32965
    Arch=`head -1 .config | cut -b 3-`
Jesse Keating 7a32965
    echo USING ARCH=$Arch
Jesse Keating 7a32965
Kyle McMartin da80d72
    make -s ARCH=$Arch oldnoconfig >/dev/null
e6eb2f8
%ifarch %{arm}
e6eb2f8
    # http://lists.infradead.org/pipermail/linux-arm-kernel/2012-March/091404.html
e6eb2f8
    make -s ARCH=$Arch V=1 %{?_smp_mflags} $MakeTarget %{?sparse_mflags} KALLSYMS_EXTRA_PASS=1
556ae3e
556ae3e
    make -s ARCH=$Arch V=1 dtbs
556ae3e
    mkdir -p $RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer
556ae3e
    install -m 644 arch/arm/boot/*.dtb $RPM_BUILD_ROOT/boot/dtb-$KernelVer/
e6eb2f8
%else
Dave Jones 4d4f51e
    make -s ARCH=$Arch V=1 %{?_smp_mflags} $MakeTarget %{?sparse_mflags}
e6eb2f8
%endif
Dave Jones 4d4f51e
    make -s ARCH=$Arch V=1 %{?_smp_mflags} modules %{?sparse_mflags} || exit 1
Jesse Keating 7a32965
Jesse Keating 7a32965
    # Start installing the results
Jesse Keating 7a32965
%if %{with_debuginfo}
Jesse Keating 7a32965
    mkdir -p $RPM_BUILD_ROOT%{debuginfodir}/boot
Jesse Keating 7a32965
    mkdir -p $RPM_BUILD_ROOT%{debuginfodir}/%{image_install_path}
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
    mkdir -p $RPM_BUILD_ROOT/%{image_install_path}
Jesse Keating 7a32965
    install -m 644 .config $RPM_BUILD_ROOT/boot/config-$KernelVer
Jesse Keating 7a32965
    install -m 644 System.map $RPM_BUILD_ROOT/boot/System.map-$KernelVer
Jesse Keating 7a32965
Jesse Keating 7a32965
    # We estimate the size of the initramfs because rpm needs to take this size
Jesse Keating 7a32965
    # into consideration when performing disk space calculations. (See bz #530778)
Jesse Keating 7a32965
    dd if=/dev/zero of=$RPM_BUILD_ROOT/boot/initramfs-$KernelVer.img bs=1M count=20
Jesse Keating 7a32965
Jesse Keating 7a32965
    if [ -f arch/$Arch/boot/zImage.stub ]; then
Jesse Keating 7a32965
      cp arch/$Arch/boot/zImage.stub $RPM_BUILD_ROOT/%{image_install_path}/zImage.stub-$KernelVer || :
Jesse Keating 7a32965
    fi
d3182f8
    %if %{signmodules}
d3182f8
    # Sign the image if we're using EFI
d3182f8
    %pesign -s -i $KernelImage -o vmlinuz.signed
d3182f8
    mv vmlinuz.signed $KernelImage
d3182f8
    %endif
Jesse Keating 7a32965
    $CopyKernel $KernelImage \
Jesse Keating 7a32965
    		$RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
Jesse Keating 7a32965
    chmod 755 $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
Jesse Keating 7a32965
70f8133
    # hmac sign the kernel for FIPS
70f8133
    echo "Creating hmac file: $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac"
70f8133
    ls -l $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
70f8133
    sha512hmac $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer | sed -e "s,$RPM_BUILD_ROOT,," > $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac;
70f8133
Jesse Keating 7a32965
    mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer
Jesse Keating 7a32965
    # Override $(mod-fw) because we don't want it to install any firmware
Kyle McMartin eb0d563
    # we'll get it from the linux-firmware package and we don't want conflicts
Jesse Keating 7a32965
    make -s ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_install KERNELRELEASE=$KernelVer mod-fw=
c2a12cd
Jesse Keating 7a32965
%ifarch %{vdso_arches}
Jesse Keating 7a32965
    make -s ARCH=$Arch INSTALL_MOD_PATH=$RPM_BUILD_ROOT vdso_install KERNELRELEASE=$KernelVer
Jesse Keating 7a32965
    if [ ! -s ldconfig-kernel.conf ]; then
Jesse Keating 7a32965
      echo > ldconfig-kernel.conf "\
Jesse Keating 7a32965
# Placeholder file, no vDSO hwcap entries used in this kernel."
Jesse Keating 7a32965
    fi
Jesse Keating 7a32965
    %{__install} -D -m 444 ldconfig-kernel.conf \
Jesse Keating 7a32965
        $RPM_BUILD_ROOT/etc/ld.so.conf.d/kernel-$KernelVer.conf
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
    # And save the headers/makefiles etc for building modules against
Jesse Keating 7a32965
    #
Jesse Keating 7a32965
    # This all looks scary, but the end result is supposed to be:
Jesse Keating 7a32965
    # * all arch relevant include/ files
Jesse Keating 7a32965
    # * all Makefile/Kconfig files
Jesse Keating 7a32965
    # * all script/ files
Jesse Keating 7a32965
Jesse Keating 7a32965
    rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a32965
    rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/source
Jesse Keating 7a32965
    mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a32965
    (cd $RPM_BUILD_ROOT/lib/modules/$KernelVer ; ln -s build source)
Jesse Keating 7a32965
    # dirs for additional modules per module-init-tools, kbuild/modules.txt
Jesse Keating 7a32965
    mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/extra
Jesse Keating 7a32965
    mkdir -p $RPM_BUILD_ROOT/lib/modules/$KernelVer/updates
Jesse Keating 7a32965
    # first copy everything
Jesse Keating 7a32965
    cp --parents `find  -type f -name "Makefile*" -o -name "Kconfig*"` $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a32965
    cp Module.symvers $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a32965
    cp System.map $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a32965
    if [ -s Module.markers ]; then
Jesse Keating 7a32965
      cp Module.markers $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a32965
    fi
Jesse Keating 7a32965
    # then drop all but the needed Makefiles/Kconfig files
Jesse Keating 7a32965
    rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/Documentation
Jesse Keating 7a32965
    rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts
Jesse Keating 7a32965
    rm -rf $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
Jesse Keating 7a32965
    cp .config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a32965
    cp -a scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Jesse Keating 7a32965
    if [ -d arch/$Arch/scripts ]; then
Jesse Keating 7a32965
      cp -a arch/$Arch/scripts $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch} || :
Jesse Keating 7a32965
    fi
Jesse Keating 7a32965
    if [ -f arch/$Arch/*lds ]; then
Jesse Keating 7a32965
      cp -a arch/$Arch/*lds $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/arch/%{_arch}/ || :
Jesse Keating 7a32965
    fi
Jesse Keating 7a32965
    rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/*.o
Jesse Keating 7a32965
    rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/scripts/*/*.o
3b76903
%ifarch ppc ppc64 ppc64p7
Jesse Keating 7a32965
    cp -a --parents arch/powerpc/lib/crtsavres.[So] $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
    if [ -d arch/%{asmarch}/include ]; then
Jesse Keating 7a32965
      cp -a --parents arch/%{asmarch}/include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
Jesse Keating 7a32965
    fi
3b024eb
    # include the machine specific headers for ARM variants, if available.
3b024eb
%ifarch %{arm}
3b024eb
    if [ -d arch/%{asmarch}/mach-${Flavour}/include ]; then
3b024eb
      cp -a --parents arch/%{asmarch}/mach-${Flavour}/include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/
3b024eb
    fi
3b024eb
%endif
Jesse Keating 7a32965
    cp -a include $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include
Jesse Keating 7a32965
Jesse Keating 7a32965
    # Make sure the Makefile and version.h have a matching timestamp so that
Jesse Keating 7a32965
    # external modules can be built
34e02d7
    touch -r $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/Makefile $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/generated/uapi/linux/version.h
Dave Jones 7fd125c
Jesse Keating 7a32965
    # Copy .config to include/config/auto.conf so "make prepare" is unnecessary.
Jesse Keating 7a32965
    cp $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/.config $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/include/config/auto.conf
Jesse Keating 7a32965
Kyle McMartin 1bfd59b
%if %{with_debuginfo}
Jesse Keating 7a32965
    if test -s vmlinux.id; then
Jesse Keating 7a32965
      cp vmlinux.id $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/vmlinux.id
Jesse Keating 7a32965
    else
Roland McGrath 9b36e58
      echo >&2 "*** ERROR *** no vmlinux build ID! ***"
Roland McGrath 9b36e58
      exit 1
Jesse Keating 7a32965
    fi
Jesse Keating 7a32965
Jesse Keating 7a32965
    #
Jesse Keating 7a32965
    # save the vmlinux file for kernel debugging into the kernel-debuginfo rpm
Jesse Keating 7a32965
    #
Jesse Keating 7a32965
    mkdir -p $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer
Jesse Keating 7a32965
    cp vmlinux $RPM_BUILD_ROOT%{debuginfodir}/lib/modules/$KernelVer
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
    find $RPM_BUILD_ROOT/lib/modules/$KernelVer -name "*.ko" -type f >modnames
Jesse Keating 7a32965
Jesse Keating 7a32965
    # mark modules executable so that strip-to-file can strip them
Jesse Keating 7a32965
    xargs --no-run-if-empty chmod u+x < modnames
Jesse Keating 7a32965
Jesse Keating 7a32965
    # Generate a list of modules for block and networking.
Jesse Keating 7a32965
Dave Jones b89c80f
    grep -F /drivers/ modnames | xargs --no-run-if-empty nm -upA |
Jesse Keating 7a32965
    sed -n 's,^.*/\([^/]*\.ko\):  *U \(.*\)$,\1 \2,p' > drivers.undef
Jesse Keating 7a32965
Jesse Keating 7a32965
    collect_modules_list()
Jesse Keating 7a32965
    {
Jesse Keating 7a32965
      sed -r -n -e "s/^([^ ]+) \\.?($2)\$/\\1/p" drivers.undef |
Jesse Keating 7a32965
      LC_ALL=C sort -u > $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.$1
Jesse Keating 7a32965
    }
Jesse Keating 7a32965
Jesse Keating 7a32965
    collect_modules_list networking \
4215bf0
    			 'register_netdev|ieee80211_register_hw|usbnet_probe|phy_driver_register|rt(l_|2x00)(pci|usb)_probe'
Jesse Keating 7a32965
    collect_modules_list block \
Jesse Keating 7a32965
    			 'ata_scsi_ioctl|scsi_add_host|scsi_add_host_with_dma|blk_init_queue|register_mtd_blktrans|scsi_esp_register|scsi_register_device_handler'
Jesse Keating 7a32965
    collect_modules_list drm \
Jesse Keating 7a32965
    			 'drm_open|drm_init'
Jesse Keating 7a32965
    collect_modules_list modesetting \
Jesse Keating 7a32965
    			 'drm_crtc_init'
Jesse Keating 7a32965
Jesse Keating 7a32965
    # detect missing or incorrect license tags
Jesse Keating 7a32965
    rm -f modinfo
Jesse Keating 7a32965
    while read i
Jesse Keating 7a32965
    do
Jesse Keating 7a32965
      echo -n "${i#$RPM_BUILD_ROOT/lib/modules/$KernelVer/} " >> modinfo
Jesse Keating 7a32965
      /sbin/modinfo -l $i >> modinfo
Jesse Keating 7a32965
    done < modnames
Jesse Keating 7a32965
Dave Jones b89c80f
    grep -E -v \
Jesse Keating 7a32965
    	  'GPL( v2)?$|Dual BSD/GPL$|Dual MPL/GPL$|GPL and additional rights$' \
Jesse Keating 7a32965
	  modinfo && exit 1
Jesse Keating 7a32965
Jesse Keating 7a32965
    rm -f modinfo modnames
Jesse Keating 7a32965
9da87a4
    # Call the modules-extra script to move things around
9da87a4
    %{SOURCE17} $RPM_BUILD_ROOT/lib/modules/$KernelVer %{SOURCE16}
b8b2783
8febe3d
%if %{signmodules}
8febe3d
    # Save off the .tmp_versions/ directory.  We'll use it in the 
8febe3d
    # __debug_install_post macro below to sign the right things
de28018
    # Also save the signing keys so we actually sign the modules with the
de28018
    # right key.
8febe3d
    cp -r .tmp_versions .tmp_versions.sign${Flavour:+.${Flavour}}
de28018
    cp signing_key.priv signing_key.priv.sign${Flavour:+.${Flavour}}
de28018
    cp signing_key.x509 signing_key.x509.sign${Flavour:+.${Flavour}}
8febe3d
%endif
8febe3d
John W. Linville fa580e5
    # remove files that will be auto generated by depmod at rpm -i time
035f913
    for i in alias alias.bin builtin.bin ccwmap dep dep.bin ieee1394map inputmap isapnpmap ofmap pcimap seriomap symbols symbols.bin usbmap devname softdep
John W. Linville fa580e5
    do
John W. Linville fa580e5
      rm -f $RPM_BUILD_ROOT/lib/modules/$KernelVer/modules.$i
John W. Linville fa580e5
    done
John W. Linville fa580e5
Jesse Keating 7a32965
    # Move the devel headers out of the root file system
Kyle McMartin f6c1ae1
    mkdir -p $RPM_BUILD_ROOT/usr/src/kernels
Jesse Keating 7a32965
    mv $RPM_BUILD_ROOT/lib/modules/$KernelVer/build $RPM_BUILD_ROOT/$DevelDir
bddef7d
bddef7d
    # This is going to create a broken link during the build, but we don't use
bddef7d
    # it after this point.  We need the link to actually point to something
bddef7d
    # when kernel-devel is installed, and a relative link doesn't work across
bddef7d
    # the F17 UsrMove feature.
bddef7d
    ln -sf $DevelDir $RPM_BUILD_ROOT/lib/modules/$KernelVer/build
Kyle McMartin 4b3b407
Kyle McMartin 4b3b407
    # prune junk from kernel-devel
Kyle McMartin 4b3b407
    find $RPM_BUILD_ROOT/usr/src/kernels -name ".*.cmd" -exec rm -f {} \;
Jesse Keating 7a32965
}
Jesse Keating 7a32965
Jesse Keating 7a32965
###
Jesse Keating 7a32965
# DO it...
Jesse Keating 7a32965
###
Jesse Keating 7a32965
Jesse Keating 7a32965
# prepare directories
Jesse Keating 7a32965
rm -rf $RPM_BUILD_ROOT
Jesse Keating 7a32965
mkdir -p $RPM_BUILD_ROOT/boot
Jesse Keating 7a32965
mkdir -p $RPM_BUILD_ROOT%{_libexecdir}
Jesse Keating 7a32965
83337ce
cd linux-%{KVERREL}
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{with_debug}
Jesse Keating 7a32965
BuildKernel %make_target %kernel_image debug
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{with_pae_debug}
Jesse Keating 7a32965
BuildKernel %make_target %kernel_image PAEdebug
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{with_pae}
Jesse Keating 7a32965
BuildKernel %make_target %kernel_image PAE
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
534352f
%if %{with_kirkwood}
534352f
BuildKernel %make_target %kernel_image kirkwood
534352f
%endif
534352f
986a9f3
%if %{with_omap}
986a9f3
BuildKernel %make_target %kernel_image omap
986a9f3
%endif
986a9f3
986a9f3
%if %{with_tegra}
986a9f3
BuildKernel %make_target %kernel_image tegra
986a9f3
%endif
986a9f3
Jesse Keating 7a32965
%if %{with_up}
Jesse Keating 7a32965
BuildKernel %make_target %kernel_image
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{with_smp}
Jesse Keating 7a32965
BuildKernel %make_target %kernel_image smp
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Kyle McMartin 8bcddfb
%global perf_make \
Dave Jones 6bffb49
  make %{?_smp_mflags} -C tools/perf -s V=1 WERROR=0 HAVE_CPLUS_DEMANGLE=1 prefix=%{_prefix}
Kyle McMartin 42d4c31
%if %{with_perf}
8addb5f
# perf
Kyle McMartin 8bcddfb
%{perf_make} all
Kyle McMartin 8bcddfb
%{perf_make} man || %{doc_build_fail}
Kyle McMartin 42d4c31
%endif
8addb5f
Kyle McMartin 42d4c31
%if %{with_tools}
8addb5f
%ifarch %{cpupowerarchs}
8addb5f
# cpupower
8addb5f
# make sure version-gen.sh is executable.
8addb5f
chmod +x tools/power/cpupower/utils/version-gen.sh
9c44ba9
make %{?_smp_mflags} -C tools/power/cpupower CPUFREQ_BENCH=false
9c44ba9
%ifarch %{ix86}
8addb5f
    cd tools/power/cpupower/debug/i386
8addb5f
    make %{?_smp_mflags} centrino-decode powernow-k8-decode
8addb5f
    cd -
9c44ba9
%endif
9c44ba9
%ifarch x86_64
9c44ba9
    cd tools/power/cpupower/debug/x86_64
9c44ba9
    make %{?_smp_mflags} centrino-decode powernow-k8-decode
9c44ba9
    cd -
9c44ba9
%endif
b080939
%ifarch %{ix86} x86_64
b080939
   cd tools/power/x86/x86_energy_perf_policy/
b080939
   make
b080939
   cd -
b080939
   cd tools/power/x86/turbostat
b080939
   make
b080939
   cd -
b080939
%endif #turbostat/x86_energy_perf_policy
8addb5f
%endif
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{with_doc}
Jesse Keating 7a32965
# Make the HTML and man pages.
Chuck Ebbert 2247721
make htmldocs mandocs || %{doc_build_fail}
Jesse Keating 7a32965
Jesse Keating 7a32965
# sometimes non-world-readable files sneak into the kernel source tree
Jesse Keating 7a32965
chmod -R a=rX Documentation
Jesse Keating 7a32965
find Documentation -type d | xargs chmod u+w
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
###
Jesse Keating 7a32965
### Special hacks for debuginfo subpackages.
Jesse Keating 7a32965
###
Jesse Keating 7a32965
Jesse Keating 7a32965
# This macro is used by %%install, so we must redefine it before that.
Jesse Keating 7a32965
%define debug_package %{nil}
Jesse Keating 7a32965
8febe3d
# In the modsign case, we do 3 things.  1) We check the "flavour" and hard
8febe3d
# code the value in the following invocations.  This is somewhat sub-optimal
8febe3d
# but we're doing this inside of an RPM macro and it isn't as easy as it
8febe3d
# could be because of that.  2) We restore the .tmp_versions/ directory from
8febe3d
# the one we saved off in BuildKernel above.  This is to make sure we're
8febe3d
# signing the modules we actually built/installed in that flavour.  3) We
8febe3d
# grab the arch and invoke 'make modules_sign' and the mod-extra-sign.sh
8febe3d
# commands to actually sign the modules.
8febe3d
#
8febe3d
# We have to do all of those things _after_ find-debuginfo runs, otherwise
8febe3d
# that will strip the signature off of the modules.
8febe3d
Kyle McMartin 1bfd59b
%if %{with_debuginfo}
Jesse Keating 7a32965
%define __debug_install_post \
Jesse Keating 7a32965
  /usr/lib/rpm/find-debuginfo.sh %{debuginfo_args} %{_builddir}/%{?buildsubdir}\
8febe3d
  if [ "%{signmodules}" == "1" ]; \
8febe3d
  then \
8febe3d
    if [ "%{with_pae}" != "0" ]; \
8febe3d
    then \
8febe3d
      Arch=`head -1 configs/kernel-%{version}-%{_target_cpu}-PAE.config | cut -b 3-` \
8febe3d
      rm -rf .tmp_versions \
8febe3d
      mv .tmp_versions.sign.PAE .tmp_versions \
de28018
      mv signing_key.priv.sign.PAE signing_key.priv \
de28018
      mv signing_key.x509.sign.PAE signing_key.x509 \
8febe3d
      make -s ARCH=$Arch V=1 INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_sign KERNELRELEASE=%{KVERREL}.PAE \
8febe3d
      %{SOURCE18} $RPM_BUILD_ROOT/lib/modules/%{KVERREL}.PAE/extra/ \
8febe3d
    fi \
8febe3d
    if [ "%{with_debug}" != "0" ]; \
8febe3d
    then \
8febe3d
      Arch=`head -1 configs/kernel-%{version}-%{_target_cpu}-debug.config | cut -b 3-` \
8febe3d
      rm -rf .tmp_versions \
8febe3d
      mv .tmp_versions.sign.debug .tmp_versions \
de28018
      mv signing_key.priv.sign.debug signing_key.priv \
de28018
      mv signing_key.x509.sign.debug signing_key.x509 \
8febe3d
      make -s ARCH=$Arch V=1 INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_sign KERNELRELEASE=%{KVERREL}.debug \
8febe3d
      %{SOURCE18} $RPM_BUILD_ROOT/lib/modules/%{KVERREL}.debug/extra/ \
8febe3d
    fi \
8febe3d
    if [ "%{with_pae_debug}" != "0" ]; \
8febe3d
    then \
8febe3d
      Arch=`head -1 configs/kernel-%{version}-%{_target_cpu}-PAEdebug.config | cut -b 3-` \
8febe3d
      rm -rf .tmp_versions \
8febe3d
      mv .tmp_versions.sign.PAEdebug .tmp_versions \
de28018
      mv signing_key.priv.sign.PAEdebug signing_key.priv \
de28018
      mv signing_key.x509.sign.PAEdebug signing_key.x509 \
8febe3d
      make -s ARCH=$Arch V=1 INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_sign KERNELRELEASE=%{KVERREL}.PAEdebug \
8febe3d
      %{SOURCE18} $RPM_BUILD_ROOT/lib/modules/%{KVERREL}.PAEdebug/extra/ \
8febe3d
    fi \
8febe3d
    if [ "%{with_up}" != "0" ]; \
8febe3d
    then \
8febe3d
      Arch=`head -1 configs/kernel-%{version}-%{_target_cpu}.config | cut -b 3-` \
8febe3d
      rm -rf .tmp_versions \
8febe3d
      mv .tmp_versions.sign .tmp_versions \
de28018
      mv signing_key.priv.sign signing_key.priv \
de28018
      mv signing_key.x509.sign signing_key.x509 \
8febe3d
      make -s ARCH=$Arch V=1 INSTALL_MOD_PATH=$RPM_BUILD_ROOT modules_sign KERNELRELEASE=%{KVERREL} \
8febe3d
      %{SOURCE18} $RPM_BUILD_ROOT/lib/modules/%{KVERREL}/extra/ \
8febe3d
    fi \
8febe3d
  fi \
Jesse Keating 7a32965
%{nil}
Jesse Keating 7a32965
Jesse Keating 7a32965
%ifnarch noarch
Jesse Keating 7a32965
%global __debug_package 1
Jesse Keating 7a32965
%files -f debugfiles.list debuginfo-common-%{_target_cpu}
Jesse Keating 7a32965
%defattr(-,root,root)
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
###
Jesse Keating 7a32965
### install
Jesse Keating 7a32965
###
Jesse Keating 7a32965
Jesse Keating 7a32965
%install
Jesse Keating 7a32965
83337ce
cd linux-%{KVERREL}
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{with_doc}
Jesse Keating 7a32965
docdir=$RPM_BUILD_ROOT%{_datadir}/doc/kernel-doc-%{rpmversion}
Jesse Keating 7a32965
man9dir=$RPM_BUILD_ROOT%{_datadir}/man/man9
Jesse Keating 7a32965
Jesse Keating 7a32965
# copy the source over
Jesse Keating 7a32965
mkdir -p $docdir
08ed142
tar -h -f - --exclude=man --exclude='.*' -c Documentation | tar xf - -C $docdir
Jesse Keating 7a32965
Jesse Keating 7a32965
# Install man pages for the kernel API.
Jesse Keating 7a32965
mkdir -p $man9dir
Jesse Keating 7a32965
find Documentation/DocBook/man -name '*.9.gz' -print0 |
Jesse Keating 7a32965
xargs -0 --no-run-if-empty %{__install} -m 444 -t $man9dir $m
Jesse Keating 7a32965
ls $man9dir | grep -q '' || > $man9dir/BROKEN
Jesse Keating 7a32965
%endif # with_doc
Jesse Keating 7a32965
8addb5f
# We have to do the headers install before the tools install because the
8addb5f
# kernel headers_install will remove any header files in /usr/include that
8addb5f
# it doesn't install itself.
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{with_headers}
Jesse Keating 7a32965
# Install kernel headers
Jesse Keating 7a32965
make ARCH=%{hdrarch} INSTALL_HDR_PATH=$RPM_BUILD_ROOT/usr headers_install
Jesse Keating 7a32965
Jesse Keating 7a32965
# Do headers_check but don't die if it fails.
Jesse Keating 7a32965
make ARCH=%{hdrarch} INSTALL_HDR_PATH=$RPM_BUILD_ROOT/usr headers_check \
Jesse Keating 7a32965
     > hdrwarnings.txt || :
Jesse Keating 7a32965
if grep -q exist hdrwarnings.txt; then
Jesse Keating 7a32965
   sed s:^$RPM_BUILD_ROOT/usr/include/:: hdrwarnings.txt
Jesse Keating 7a32965
   # Temporarily cause a build failure if header inconsistencies.
Jesse Keating 7a32965
   # exit 1
Jesse Keating 7a32965
fi
Jesse Keating 7a32965
Jesse Keating 7a32965
find $RPM_BUILD_ROOT/usr/include \
Jesse Keating 7a32965
     \( -name .install -o -name .check -o \
Jesse Keating 7a32965
     	-name ..install.cmd -o -name ..check.cmd \) | xargs rm -f
Jesse Keating 7a32965
Jesse Keating 7a32965
# glibc provides scsi headers for itself, for now
Jesse Keating 7a32965
rm -rf $RPM_BUILD_ROOT/usr/include/scsi
Jesse Keating 7a32965
rm -f $RPM_BUILD_ROOT/usr/include/asm*/atomic.h
Jesse Keating 7a32965
rm -f $RPM_BUILD_ROOT/usr/include/asm*/io.h
Jesse Keating 7a32965
rm -f $RPM_BUILD_ROOT/usr/include/asm*/irq.h
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Kyle McMartin 42d4c31
%if %{with_perf}
8addb5f
# perf tool binary and supporting scripts/binaries
Kyle McMartin 8bcddfb
%{perf_make} DESTDIR=$RPM_BUILD_ROOT install
8addb5f
Kyle McMartin ec31efd
# python-perf extension
Kyle McMartin 8bcddfb
%{perf_make} DESTDIR=$RPM_BUILD_ROOT install-python_ext
Kyle McMartin ec31efd
8addb5f
# perf man pages (note: implicit rpm magic compresses them later)
Kyle McMartin 8bcddfb
%{perf_make} DESTDIR=$RPM_BUILD_ROOT install-man || %{doc_build_fail}
Kyle McMartin 42d4c31
%endif
8addb5f
Kyle McMartin 42d4c31
%if %{with_tools}
8addb5f
%ifarch %{cpupowerarchs}
9c44ba9
make -C tools/power/cpupower DESTDIR=$RPM_BUILD_ROOT libdir=%{_libdir} mandir=%{_mandir} CPUFREQ_BENCH=false install
8addb5f
rm -f %{buildroot}%{_libdir}/*.{a,la}
8addb5f
%find_lang cpupower
8addb5f
mv cpupower.lang ../
9c44ba9
%ifarch %{ix86}
8addb5f
    cd tools/power/cpupower/debug/i386
8addb5f
    install -m755 centrino-decode %{buildroot}%{_bindir}/centrino-decode
8addb5f
    install -m755 powernow-k8-decode %{buildroot}%{_bindir}/powernow-k8-decode
8addb5f
    cd -
9c44ba9
%endif
9c44ba9
%ifarch x86_64
9c44ba9
    cd tools/power/cpupower/debug/x86_64
9c44ba9
    install -m755 centrino-decode %{buildroot}%{_bindir}/centrino-decode
9c44ba9
    install -m755 powernow-k8-decode %{buildroot}%{_bindir}/powernow-k8-decode
9c44ba9
    cd -
9c44ba9
%endif
8addb5f
chmod 0755 %{buildroot}%{_libdir}/libcpupower.so*
8addb5f
mkdir -p %{buildroot}%{_unitdir} %{buildroot}%{_sysconfdir}/sysconfig
8addb5f
install -m644 %{SOURCE2000} %{buildroot}%{_unitdir}/cpupower.service
8addb5f
install -m644 %{SOURCE2001} %{buildroot}%{_sysconfdir}/sysconfig/cpupower
8addb5f
%endif
b080939
%ifarch %{ix86} x86_64
b080939
   mkdir -p %{buildroot}%{_mandir}/man8
b080939
   cd tools/power/x86/x86_energy_perf_policy
b080939
   make DESTDIR=%{buildroot} install
b080939
   cd -
b080939
   cd tools/power/x86/turbostat
b080939
   make DESTDIR=%{buildroot} install
b080939
   cd -
b080939
%endif #turbostat/x86_energy_perf_policy
8addb5f
%endif
8addb5f
Jesse Keating 7a32965
%if %{with_bootwrapper}
Jesse Keating 7a32965
make DESTDIR=$RPM_BUILD_ROOT bootwrapper_install WRAPPER_OBJDIR=%{_libdir}/kernel-wrapper WRAPPER_DTSDIR=%{_libdir}/kernel-wrapper/dts
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
Jesse Keating 7a32965
###
Jesse Keating 7a32965
### clean
Jesse Keating 7a32965
###
Jesse Keating 7a32965
Jesse Keating 7a32965
%clean
Jesse Keating 7a32965
rm -rf $RPM_BUILD_ROOT
Jesse Keating 7a32965
Jesse Keating 7a32965
###
Jesse Keating 7a32965
### scripts
Jesse Keating 7a32965
###
Jesse Keating 7a32965
93e7772
%if %{with_tools}
8addb5f
%post -n kernel-tools
8addb5f
/sbin/ldconfig
8addb5f
8addb5f
%postun -n kernel-tools
8addb5f
/sbin/ldconfig
93e7772
%endif
8addb5f
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# This macro defines a %%post script for a kernel*-devel package.
Jesse Keating 7a32965
#	%%kernel_devel_post [<subpackage>]
Jesse Keating 7a32965
#
Jesse Keating 7a32965
%define kernel_devel_post() \
Jesse Keating 7a32965
%{expand:%%post %{?1:%{1}-}devel}\
Jesse Keating 7a32965
if [ -f /etc/sysconfig/kernel ]\
Jesse Keating 7a32965
then\
Jesse Keating 7a32965
    . /etc/sysconfig/kernel || exit $?\
Jesse Keating 7a32965
fi\
Jesse Keating 7a32965
if [ "$HARDLINK" != "no" -a -x /usr/sbin/hardlink ]\
Jesse Keating 7a32965
then\
Jesse Keating 7a32965
    (cd /usr/src/kernels/%{KVERREL}%{?1:.%{1}} &&\
Jesse Keating 7a32965
     /usr/bin/find . -type f | while read f; do\
Jesse Keating 7a32965
       hardlink -c /usr/src/kernels/*.fc*.*/$f $f\
Jesse Keating 7a32965
     done)\
Jesse Keating 7a32965
fi\
Jesse Keating 7a32965
%{nil}
Jesse Keating 7a32965
b8b2783
#
b8b2783
# This macro defines a %%post script for a kernel*-modules-extra package.
b8b2783
#	%%kernel_modules-extra_post [<subpackage>]
b8b2783
#
b8b2783
%define kernel_modules_extra_post() \
b8b2783
%{expand:%%post %{?1:%{1}-}modules-extra}\
b8b2783
/sbin/depmod -a %{KVERREL}%{?1:.%{1}}\
b8b2783
%{nil}
8addb5f
Jesse Keating 7a32965
# This macro defines a %%posttrans script for a kernel package.
Jesse Keating 7a32965
#	%%kernel_variant_posttrans [<subpackage>]
Jesse Keating 7a32965
# More text can follow to go at the end of this variant's %%post.
Jesse Keating 7a32965
#
Jesse Keating 7a32965
%define kernel_variant_posttrans() \
Jesse Keating 7a32965
%{expand:%%posttrans %{?1}}\
Jesse Keating 7a32965
/sbin/new-kernel-pkg --package kernel%{?-v:-%{-v*}} --mkinitrd --dracut --depmod --update %{KVERREL}%{?-v:.%{-v*}} || exit $?\
Jesse Keating 7a32965
/sbin/new-kernel-pkg --package kernel%{?1:-%{1}} --rpmposttrans %{KVERREL}%{?1:.%{1}} || exit $?\
Jesse Keating 7a32965
%{nil}
Jesse Keating 7a32965
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# This macro defines a %%post script for a kernel package and its devel package.
Jesse Keating 7a32965
#	%%kernel_variant_post [-v <subpackage>] [-r <replace>]
Jesse Keating 7a32965
# More text can follow to go at the end of this variant's %%post.
Jesse Keating 7a32965
#
Jesse Keating 7a32965
%define kernel_variant_post(v:r:) \
Jesse Keating 7a32965
%{expand:%%kernel_devel_post %{?-v*}}\
b8b2783
%{expand:%%kernel_modules_extra_post %{?-v*}}\
Jesse Keating 7a32965
%{expand:%%kernel_variant_posttrans %{?-v*}}\
Jesse Keating 7a32965
%{expand:%%post %{?-v*}}\
Jesse Keating 7a32965
%{-r:\
Jesse Keating 7a32965
if [ `uname -i` == "x86_64" -o `uname -i` == "i386" ] &&\
Jesse Keating 7a32965
   [ -f /etc/sysconfig/kernel ]; then\
Jesse Keating 7a32965
  /bin/sed -r -i -e 's/^DEFAULTKERNEL=%{-r*}$/DEFAULTKERNEL=kernel%{?-v:-%{-v*}}/' /etc/sysconfig/kernel || exit $?\
Jesse Keating 7a32965
fi}\
Jesse Keating 7a32965
%{expand:\
Jesse Keating 7a32965
/sbin/new-kernel-pkg --package kernel%{?-v:-%{-v*}} --install %{KVERREL}%{?-v:.%{-v*}} || exit $?\
Jesse Keating 7a32965
}\
Jesse Keating 7a32965
%{nil}
Jesse Keating 7a32965
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# This macro defines a %%preun script for a kernel package.
Jesse Keating 7a32965
#	%%kernel_variant_preun <subpackage>
Jesse Keating 7a32965
#
Jesse Keating 7a32965
%define kernel_variant_preun() \
Jesse Keating 7a32965
%{expand:%%preun %{?1}}\
Jesse Keating 7a32965
/sbin/new-kernel-pkg --rminitrd --rmmoddep --remove %{KVERREL}%{?1:.%{1}} || exit $?\
Jesse Keating 7a32965
%{nil}
Jesse Keating 7a32965
Jesse Keating 7a32965
%kernel_variant_preun
Jesse Keating 7a32965
%kernel_variant_post -r kernel-smp
Jesse Keating 7a32965
Jesse Keating 7a32965
%kernel_variant_preun smp
Jesse Keating 7a32965
%kernel_variant_post -v smp
Jesse Keating 7a32965
Jesse Keating 7a32965
%kernel_variant_preun PAE
Jesse Keating 7a32965
%kernel_variant_post -v PAE -r (kernel|kernel-smp)
Jesse Keating 7a32965
Jesse Keating 7a32965
%kernel_variant_preun debug
Jesse Keating 7a32965
%kernel_variant_post -v debug
Jesse Keating 7a32965
Jesse Keating 7a32965
%kernel_variant_post -v PAEdebug -r (kernel|kernel-smp)
Jesse Keating 7a32965
%kernel_variant_preun PAEdebug
Jesse Keating 7a32965
534352f
%kernel_variant_preun kirkwood
534352f
%kernel_variant_post -v kirkwood
534352f
986a9f3
%kernel_variant_preun omap
986a9f3
%kernel_variant_post -v omap
986a9f3
986a9f3
%kernel_variant_preun tegra
986a9f3
%kernel_variant_post -v tegra
986a9f3
Jesse Keating 7a32965
if [ -x /sbin/ldconfig ]
Jesse Keating 7a32965
then
Jesse Keating 7a32965
    /sbin/ldconfig -X || exit $?
Jesse Keating 7a32965
fi
Jesse Keating 7a32965
Jesse Keating 7a32965
###
Jesse Keating 7a32965
### file lists
Jesse Keating 7a32965
###
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{with_headers}
Jesse Keating 7a32965
%files headers
Jesse Keating 7a32965
%defattr(-,root,root)
Jesse Keating 7a32965
/usr/include/*
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
%if %{with_bootwrapper}
Jesse Keating 7a32965
%files bootwrapper
Jesse Keating 7a32965
%defattr(-,root,root)
Jesse Keating 7a32965
/usr/sbin/*
Jesse Keating 7a32965
%{_libdir}/kernel-wrapper
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Jesse Keating 7a32965
# only some architecture builds need kernel-doc
Jesse Keating 7a32965
%if %{with_doc}
Jesse Keating 7a32965
%files doc
Jesse Keating 7a32965
%defattr(-,root,root)
Jesse Keating 7a32965
%{_datadir}/doc/kernel-doc-%{rpmversion}/Documentation/*
Jesse Keating 7a32965
%dir %{_datadir}/doc/kernel-doc-%{rpmversion}/Documentation
Jesse Keating 7a32965
%dir %{_datadir}/doc/kernel-doc-%{rpmversion}
Jesse Keating 7a32965
%{_datadir}/man/man9/*
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Kyle McMartin 42d4c31
%if %{with_perf}
Kyle McMartin 42d4c31
%files -n perf
Jesse Keating 7a32965
%defattr(-,root,root)
Jesse Keating 7a32965
%{_bindir}/perf
Jesse Keating 7a32965
%dir %{_libexecdir}/perf-core
Jesse Keating 7a32965
%{_libexecdir}/perf-core/*
Kyle McMartin 42d4c31
%{_mandir}/man[1-8]/perf*
5b55e64
%{_sysconfdir}/bash_completion.d/perf
83337ce
%doc linux-%{KVERREL}/tools/perf/Documentation/examples.txt
Kyle McMartin 42d4c31
Kyle McMartin 42d4c31
%files -n python-perf
Kyle McMartin 42d4c31
%defattr(-,root,root)
Kyle McMartin 42d4c31
%{python_sitearch}
Kyle McMartin 42d4c31
Kyle McMartin 42d4c31
%if %{with_debuginfo}
Kyle McMartin 42d4c31
%files -f perf-debuginfo.list -n perf-debuginfo
Kyle McMartin 42d4c31
%defattr(-,root,root)
27d8a0e
27d8a0e
%files -f python-perf-debuginfo.list -n python-perf-debuginfo
27d8a0e
%defattr(-,root,root)
Kyle McMartin 42d4c31
%endif
Kyle McMartin 42d4c31
%endif # with_perf
Roland McGrath 3c4ea9a
Kyle McMartin 42d4c31
%if %{with_tools}
Kyle McMartin 42d4c31
%files -n kernel-tools -f cpupower.lang
Kyle McMartin 42d4c31
%defattr(-,root,root)
8addb5f
%ifarch %{cpupowerarchs}
8addb5f
%{_bindir}/cpupower
6ec053a
%ifarch %{ix86} x86_64
8addb5f
%{_bindir}/centrino-decode
8addb5f
%{_bindir}/powernow-k8-decode
6ec053a
%endif
8addb5f
%{_unitdir}/cpupower.service
Kyle McMartin 42d4c31
%{_mandir}/man[1-8]/cpupower*
8addb5f
%config(noreplace) %{_sysconfdir}/sysconfig/cpupower
b080939
%ifarch %{ix86} x86_64
b080939
%{_bindir}/x86_energy_perf_policy
b080939
%{_mandir}/man8/x86_energy_perf_policy*
b080939
%{_bindir}/turbostat
b080939
%{_mandir}/man8/turbostat*
b080939
%endif
8addb5f
%endif
8addb5f
Roland McGrath 3c4ea9a
%if %{with_debuginfo}
8addb5f
%files -f kernel-tools-debuginfo.list -n kernel-tools-debuginfo
Roland McGrath 3c4ea9a
%defattr(-,root,root)
Roland McGrath 3c4ea9a
%endif
8addb5f
8addb5f
%ifarch %{cpupowerarchs}
3b80ddd
%files -n kernel-tools-libs
3b80ddd
%{_libdir}/libcpupower.so.0
3b80ddd
%{_libdir}/libcpupower.so.0.0.0
3b80ddd
3b80ddd
%files -n kernel-tools-libs-devel
8addb5f
%{_libdir}/libcpupower.so
8addb5f
%{_includedir}/cpufreq.h
8addb5f
%endif
Kyle McMartin 42d4c31
%endif # with_perf
Jesse Keating 7a32965
Dave Jones 166b79a
# This is %%{image_install_path} on an arch where that includes ELF files,
Jesse Keating 7a32965
# or empty otherwise.
Jesse Keating 7a32965
%define elf_image_install_path %{?kernel_image_elf:%{image_install_path}}
Jesse Keating 7a32965
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# This macro defines the %%files sections for a kernel package
Jesse Keating 7a32965
# and its devel and debuginfo packages.
Jesse Keating 7a32965
#	%%kernel_variant_files [-k vmlinux] <condition> <subpackage>
Jesse Keating 7a32965
#
Jesse Keating 7a32965
%define kernel_variant_files(k:) \
Jesse Keating 7a32965
%if %{1}\
Jesse Keating 7a32965
%{expand:%%files %{?2}}\
Jesse Keating 7a32965
%defattr(-,root,root)\
Kyle McMartin f6dd1f4
/%{image_install_path}/%{?-k:%{-k*}}%{!?-k:vmlinuz}-%{KVERREL}%{?2:.%{2}}\
70f8133
/%{image_install_path}/.vmlinuz-%{KVERREL}%{?2:.%{2}}.hmac \
556ae3e
%ifarch %{arm}\
556ae3e
/%{image_install_path}/dtb-%{KVERREL}%{?2:.%{2}} \
556ae3e
%endif\
Kyle McMartin d287769
%attr(600,root,root) /boot/System.map-%{KVERREL}%{?2:.%{2}}\
Jesse Keating 7a32965
/boot/config-%{KVERREL}%{?2:.%{2}}\
Jesse Keating 7a32965
%dir /lib/modules/%{KVERREL}%{?2:.%{2}}\
Jesse Keating 7a32965
/lib/modules/%{KVERREL}%{?2:.%{2}}/kernel\
Jesse Keating 7a32965
/lib/modules/%{KVERREL}%{?2:.%{2}}/build\
Jesse Keating 7a32965
/lib/modules/%{KVERREL}%{?2:.%{2}}/source\
Jesse Keating 7a32965
/lib/modules/%{KVERREL}%{?2:.%{2}}/updates\
Jesse Keating 7a32965
%ifarch %{vdso_arches}\
Jesse Keating 7a32965
/lib/modules/%{KVERREL}%{?2:.%{2}}/vdso\
Jesse Keating 7a32965
/etc/ld.so.conf.d/kernel-%{KVERREL}%{?2:.%{2}}.conf\
Jesse Keating 7a32965
%endif\
Jesse Keating 7a32965
/lib/modules/%{KVERREL}%{?2:.%{2}}/modules.*\
Jesse Keating 7a32965
%ghost /boot/initramfs-%{KVERREL}%{?2:.%{2}}.img\
Jesse Keating 7a32965
%{expand:%%files %{?2:%{2}-}devel}\
Jesse Keating 7a32965
%defattr(-,root,root)\
Jesse Keating 7a32965
/usr/src/kernels/%{KVERREL}%{?2:.%{2}}\
b8b2783
%{expand:%%files %{?2:%{2}-}modules-extra}\
b8b2783
%defattr(-,root,root)\
b8b2783
/lib/modules/%{KVERREL}%{?2:.%{2}}/extra\
Jesse Keating 7a32965
%if %{with_debuginfo}\
Jesse Keating 7a32965
%ifnarch noarch\
Jesse Keating 7a32965
%{expand:%%files -f debuginfo%{?2}.list %{?2:%{2}-}debuginfo}\
Jesse Keating 7a32965
%defattr(-,root,root)\
Jesse Keating 7a32965
%endif\
Jesse Keating 7a32965
%endif\
Jesse Keating 7a32965
%endif\
Jesse Keating 7a32965
%{nil}
Jesse Keating 7a32965
Jesse Keating 7a32965
Jesse Keating 7a32965
%kernel_variant_files %{with_up}
Jesse Keating 7a32965
%kernel_variant_files %{with_smp} smp
Jesse Keating 7a32965
%kernel_variant_files %{with_debug} debug
Jesse Keating 7a32965
%kernel_variant_files %{with_pae} PAE
Jesse Keating 7a32965
%kernel_variant_files %{with_pae_debug} PAEdebug
534352f
%kernel_variant_files %{with_kirkwood} kirkwood
986a9f3
%kernel_variant_files %{with_omap} omap
986a9f3
%kernel_variant_files %{with_tegra} tegra
Jesse Keating 7a32965
Jesse Keating 7a32965
# plz don't put in a version string unless you're going to tag
Jesse Keating 7a32965
# and build.
Jesse Keating 7a32965
3575ffb
#  ___________________________________________________________
49977fe
# / This branch is for Fedora 18. You probably want to commit \
49977fe
# \ to the F-17 branch instead, or in addition to this one.   /
3575ffb
#  -----------------------------------------------------------
3575ffb
#         \   ^__^
3575ffb
#          \  (@@)\_______
3575ffb
#             (__)\       )\/\
3575ffb
#                 ||----w |
3575ffb
#                 ||     ||
Jesse Keating 7a32965
%changelog
Dave Jones a13d73a
* Tue Feb 12 2013 Dave Jones <davej@redhat.com>
Dave Jones a13d73a
- Silence brcmsmac warnings. (Fixed in 3.8, but not backporting to 3.7)
Dave Jones a13d73a
ffb7a52
* Tue Feb 12 2013 Justin M. Forbes <jforbes@redhat.com>
ffb7a52
- Linux v3.7.7
ffb7a52
31d6439
* Mon Feb 11 2013 Josh Boyer <jwboyer@redhat.com>
4c338c6
- Add patch from Kees Cook to restrict MSR writting in secure boot mode
31d6439
- Add patch to honor MokSBState (rhbz 907406)
31d6439
7234330
* Thu Feb  7 2013 Peter Robinson <pbrobinson@fedoraproject.org>
7234330
- Minor ARM build fixes
7234330
2256aa8
* Wed Feb 06 2013 Josh Boyer <jwboyer@redhat.com>
2256aa8
- Add patch to fix ath9k dma stop checks (rhbz 892811)
2256aa8
bd4318b
* Mon Feb 04 2013 Josh Boyer <jwboyer@redhat.com>
bd4318b
- Linux v3.7.6
bd4318b
- Update secure-boot patchset
0f4abb5
- Fix rtlwifi scheduling while atomic from Larry Finger (rhbz 903881)
bd4318b
07ef26c
* Tue Jan 29 2013 Josh Boyer <jwboyer@redhat.com>
07ef26c
- Backport driver for Cypress PS/2 trackpad (rhbz 799564)
07ef26c
bedfc39
* Mon Jan 28 2013 Josh Boyer <jwboyer@redhat.com> - 3.7.5-201
4eae979
- Linux v3.7.5
82e26bd
- Add patch to fix iwlwifi issues (rhbz 863424)
4eae979
556ae3e
* Sun Jan 27 2013 Peter Robinson <pbrobinson@fedoraproject.org>
556ae3e
- Build and package dtbs on ARM
274e520
- Enable FB options for qemu vexpress on unified
556ae3e
70cf0f2
* Fri Jan 25 2013 Justin M. Forbes <jforbes@redhat.com>
70cf0f2
- Turn off THP for 32bit
70cf0f2
dd35eb3
* Wed Jan 23 2013 Justin M. Forbes <jforbes@redhat.com> - 3.7.4-204
dd35eb3
- brcmsmac fixes from upstream (rhbz 892428)
dd35eb3
Dave Jones 79cfaf9
* Wed Jan 23 2013 Dave Jones <davej@redhat.com>
Dave Jones 79cfaf9
- Remove warnings about empty IPI masks.
Dave Jones 79cfaf9
d483733
* Tue Jan 22 2013 Justin M. Forbes <jforbes@redhat.com> - 3.7.4-203
d483733
- Add i915 bugfix from airlied
d483733
2ddf29a
* Tue Jan 22 2013 Peter Robinson <pbrobinson@fedoraproject.org>
2ddf29a
- Apply ARM errata fix
2ddf29a
- disable HVC_DCC and VIRTIO_CONSOLE on ARM
2ddf29a
56666ff
* Tue Jan 22 2013 Josh Boyer <jwboyer@redhat.com>
56666ff
- Fix libata settings bug (rhbz 902523)
56666ff
bd5d1b4
* Mon Jan 21 2013 Josh Boyer <jwboyer@redhat.com> - 3.7.4-201
bd5d1b4
- Linux v3.7.4
bd5d1b4
c7c083e
* Fri Jan 18 2013 Justin M. Forbes <jforbes@redhat.com> 3.7.3-201
c7c083e
- Linux v3.7.3
c7c083e
0f00853
* Thu Jan 17 2013 Peter Robinson <pbrobinson@fedoraproject.org>
0f00853
- Merge 3.7 ARM kernel including unified kernel
0f00853
- Drop separate IMX and highbank kernels
0f00853
- Disable ARM PL310 errata that crash highbank
0f00853
2026088
* Wed Jan 16 2013 Josh Boyer <jwboyer@redhat.com>
2026088
- Fix power management sysfs on non-secure boot machines (rhbz 896243)
2026088
e4e27aa
* Wed Jan 16 2013 Justin M. Forbes <jforbes@redhat.com>  3.7.2-204
e4e27aa
- Fix for CVE-2013-0190 xen corruption with 32bit pvops (rhbz 896051 896038)
e4e27aa
d613208
* Wed Jan 16 2013 Josh Boyer <jwboyer@redhat.com>
d613208
- Add patch from Stanislaw Gruszka to fix iwlegacy IBSS cleanup (rhbz 886946)
d613208
b7b0a09
* Tue Jan 15 2013 Justin M. Forbes <jforbes@redhat.com> 3.7.2-203
b7b0a09
- Turn off Intel IOMMU by default
b7b0a09
- Stable queue from 3.7.3 with many relevant fixes
b7b0a09
3d3849a
* Tue Jan 15 2013 Josh Boyer <jwboyer@redhat.com>
3d3849a
- Enable CONFIG_DVB_USB_V2 (rhbz 895460)
3d3849a
2aae8f4
* Mon Jan 14 2013 Josh Boyer <jwboyer@redhat.com>
2aae8f4
- Enable Orinoco drivers in kernel-modules-extra (rhbz 894069)
2aae8f4
08c8fb2
* Fri Jan 11 2013 Justin M. Forbes <jforbes@redhat.com> 3.7.1-1
08c8fb2
- Linux v3.7.2
08c8fb2
- Enable Intel IOMMU by default
08c8fb2
Dave Jones dc100f5
* Thu Jan 10 2013 Dave Jones <davej@redhat.com>
Dave Jones dc100f5
- Add audit-libs-devel to perf build-deps to enable trace command. (rhbz 892893)
Dave Jones dc100f5
a3656fe
* Tue Jan 08 2013 Josh Boyer <jwboyer@redhat.com>
a3656fe
- Add patch to fix shutdown on some machines (rhbz 890547)
a3656fe
ac003e4
* Mon Jan 07 2013 Josh Boyer <jwboyer@redhat.com>
ac003e4
- Patch to fix efivarfs underflow from Lingzhu Xiang (rhbz 888163)
ac003e4
34e02d7
* Sun Jan 06 2013 Josh Boyer <jwboyer@redhat.com>
635263a
- Fix version.h include due to UAPI change in 3.7 (rhbz 892373)
34e02d7
3ae631a
* Fri Jan 04 2013 Josh Boyer <jwboyer@redhat.com>
3ae631a
- Fix oops on aoe module removal (rhbz 853064)
3ae631a
5b55e64
* Thu Jan 03 2013 Josh Boyer <jwboyer@redhat.com> - 3.7.1-2
5b55e64
- Fixup secure boot patchset for 3.7 rebase
5b55e64
- Package bash completion script for perf
5b55e64
Dave Jones 03fb1ee
* Thu Jan 03 2013 Dave Jones <davej@redhat.com>
Dave Jones 03fb1ee
- Rebase to 3.7.1
Dave Jones 03fb1ee
e88e9e6
* Wed Jan 02 2013 Josh Boyer <jwboyer@redhat.com>
8b89f2c
- Fix autofs issue in 3.6 (rhbz 874372)
e88e9e6
- BR the hostname package (rhbz 886113)
e88e9e6
e423a47
* Mon Dec 17 2012 Josh Boyer <jwboyer@redhat.com> - 3.6.11-3
87a62d8
- Linux v3.6.11
87a62d8
0689821
* Mon Dec 17 2012 Dennis Gilmore <dennis@ausil.us>
0689821
- disable gpiolib on vexpress
0689821
820fdaa
* Mon Dec 17 2012 Josh Boyer <jwboyer@redhat.com>
820fdaa
- Fix oops in sony-laptop setup (rhbz 873107)
820fdaa
2dfbeb6
* Wed Dec 12 2012 Josh Boyer <jwboyer@redhat.com> - 3.6.10-5
666877e
- Fix infinite loop in efi signature parser
666877e
- Don't error out if db doesn't exist
666877e
389b112
* Tue Dec 11 2012 Josh Boyer <jwboyer@redhat.com> - 3.6.10-4
389b112
- Update secure boot patches to include MoK support
90c0d24
- Fix IBSS scanning in mac80211 (rhbz 883414)
90c0d24
6cd918b
* Tue Dec 11 2012 Justin M. Forbes <jforbes@redhat.com> 3.6.10-1
6cd918b
- Linux 3.6.10
6cd918b
Dave Jones 8c7aca4
* Wed Dec 05 2012 Dave Jones <davej@redhat.com>
Dave Jones 8c7aca4
- Team driver updates (Jiri Pirko)
Dave Jones 8c7aca4
e0377be
* Mon Dec 03 2012 Josh Boyer <jwboyer@redhat.com> - 3.6.9-2
e0377be
- Backport 3 upstream fixes to resolve radeon schedule IB errors (rhbz 855275)
e0377be
77b6d85
* Mon Dec 03 2012 Justin M. Forbes <jforbes@redhat.com> 3.6.9-1
77b6d85
- Linux 3.6.9
77b6d85
d974a4b
* Thu Nov 29 2012 Peter Robinson <pbrobinson@fedoraproject.org>
d974a4b
- Update some ARM GPIO and I2C configs
d974a4b
bbc321a
* Tue Nov 27 2012 Josh Boyer <jwboyer@redhat.com>
bbc321a
- Update patches for 8139cp issues from David Woodhouse (rhbz 851278)
bbc321a
c5c071b
* Mon Nov 26 2012 Josh Boyer <jwboyer@redhat.com> - 3.6.8-1
c5c071b
- Linux v3.6.8
c5c071b
4703e15
* Mon Nov 26 2012 Josh Boyer <jwboyer@redhat.com>
e9b768c
- Fix regression in 8139cp driver, debugged by William J. Eaton (rhbz 851278)
84597ee
- Fix ACPI video after _DOD errors (rhbz 869383)
8d6940a
- Fix ata command timeout oops in mvsas (rhbz 869629)
2bfaae5
- Enable CONFIG_UIO_PDRV on ppc64 (rhbz 878180)
4703e15
- CVE-2012-4530: stack disclosure binfmt_script load_script (rhbz 868285 880147)
4703e15
a6a4f9a
* Tue Nov 20 2012 Josh Boyer <jwboyer@redhat.com> - 3.6.7-5
645afa7
- CVE-2012-4461: kvm: invalid opcode oops on SET_SREGS with OSXSAVE bit set (rhbz 878518 862900)
9bb5a1f
- Add VC_MUTE ioctl (rhbz 859485)
ddbf9b7
- Add support for BCM20702A0 (rhbz 874791)
ddbf9b7
8b21b3a
* Tue Nov 20 2012 Peter Robinson <pbrobinson@fedoraproject.org>
8b21b3a
- Change the minimum mmap address back to 32768 on ARM systems (thanks to Jon Masters)
8b21b3a
b0cdc7c
* Mon Nov 19 2012 Josh Boyer <jwboyer@redhat.com>
b0cdc7c
- Apply patches from Jeff Moyer to fix direct-io oops (rhbz 812129)
b0cdc7c
e375935
* Sat Nov 17 2012 Justin M. Forbes <jforbes@linuxtx.org> - 3.6.7-1
e375935
- linux 3.6.7
e375935
208c5d0
* Fri Nov 16 2012 Josh Boyer <jwboyer@redhat.com> - 3.6.6-9
c1d9f39
- Fix oops causing typo in keyspan driver (rhbz 870562)
2d2a20c
- Don't WARN_ON empty queues in iwlwifi (rhbz 873001)
2d2a20c
c428a20
* Thu Nov 15 2012 Justin M. Forbes <jforbes@redhat.com>
2d2a20c
- Fix panic in  panic in smp_irq_move_cleanup_interrupt (rhbz 869341)
c428a20
de28018
* Wed Nov 14 2012 Josh Boyer <jwboyer@redhat.com>
de28018
- Fix module signing of kernel flavours
de28018
4040634
* Mon Nov 12 2012 Justin M. Forbes <jforbes@redhat.com>
4040634
- fix list_del corruption warning on USB audio with twinkle (rhbz 871078)
4040634
bcf7eac
* Fri Nov 09 2012 Josh Boyer <jwboyer@redhat.com>
bcf7eac
- Fix vanilla kernel builds (reported by Thorsten Leemhuis)
bcf7eac
cd6bdb9
* Wed Nov 07 2012 Josh Boyer <jwboyer@redhat.com>
cd6bdb9
- Add patch to not break modules_install for external module builds
cd6bdb9
0854ddf
* Mon Nov 05 2012 Josh Boyer <jwboyer@redhat.com> - 3.6.6-3
0854ddf
- Backport efivarfs from efi/next for moktools
7002a8c
- Fix build break without CONFIG_EFI set (reported by Peter W. Bowey)
fd50c1c
- Linux v3.6.6
fd50c1c
David Woodhouse 4f94f04
* Mon Nov 05 2012 David Woodhouse <David.Woodhouse@intel.com> - 3.6.5-3
David Woodhouse 4f94f04
- Fix EFI framebuffer handling
David Woodhouse 4f94f04
f8f8ccf
* Wed Oct 31 2012 Josh Boyer <jwboyer@redhat.com> - 3.6.5-2
f8f8ccf
- Update modsign to what is currently in 3.7-rc2
f8f8ccf
- Update secure boot support for UEFI cert importing.
f8f8ccf
f8f8ccf
* Wed Oct 31 2012 Josh Boyer <jwboyer@redhat.com> - 3.6.5-1
f1dd1c4
- Linux v3.6.5
1e3ce10
- CVE-2012-4565 net: divide by zero in tcp algorithm illinois (rhbz 871848 871923)
1e3ce10
4acebb2
* Tue Oct 30 2012 Josh Boyer <jwboyer@redhat.com>
4acebb2
- Move power-x86-destdir.patch to apply on vanilla kernels (thanks knurd)
4acebb2
ddc5dcd
* Mon Oct 29 2012 Justin M. Forbes <jforbes@redhat.com>
ddc5dcd
- Uprobes backports from upstream
ddc5dcd
39c7bf3
* Mon Oct 29 2012 Peter Robinson <pbrobinson@fedoraproject.org>
39c7bf3
- Update ARM alignment patch to upstream
39c7bf3
a0a8db5
* Mon Oct 29 2012 Justin M. Forbes <jforbes@redhat.com> 3.6.4-1
a0a8db5
- Linux 3.6.4
a0a8db5
1c1fad8
* Thu Oct 25 2012 Justin M. Forbes <jforbes@redhat.com>
1c1fad8
- CVE-2012-4508: ext4: AIO vs fallocate stale data exposure (rhbz 869904 869909)
1c1fad8
9c72450
* Wed Oct 24 2012 Josh Boyer <jwboyer@redhat.com>
73a1592
- Remove patch added for rhbz 856863
9c72450
- Add patch to fix corrupted text with i915 (rhbz 852210)
9c72450
a0177af
* Tue Oct 23 2012 Peter Robinson <pbrobinson@fedoraproject.org>
a0177af
- Update OMAP Video config options
a0177af
a40ef16
* Mon Oct 22 2012 Peter Robinson <pbrobinson@fedoraproject.org>
a40ef16
- VIFO fails on ARM at the moment so disable it for the time being
a40ef16
d5d47dc
* Mon Oct 22 2012 Josh Boyer <jwboyer@redhat.com>
f87521d
- Add patch to fix CIFS oops from Jeff Layton (rhbz 867344)
06c67c2
- CVE-2012-0957: uts: stack memory leak in UNAME26 (rhbz 862877 864824)
d5d47dc
- Fix rt2x00 usb reset resume (rhbz 856863)
d5d47dc
aefdd98
* Mon Oct 22 2012 Justin M. Forbes <jforbes@linuxtx.org> - 3.6.3-1
aefdd98
- Linux 3.6.3
aefdd98
6419bc9
* Mon Oct 22 2012 Peter Robinson <pbrobinson@fedoraproject.org>
6419bc9
- Revert ARM misaligned access check to stop kernel OOPS
6419bc9
- Actually apply highbank sata patch
6419bc9
aa337a7
* Thu Oct 18 2012 Josh Boyer <jwboyer@redhat.com>
5a7aaca
- Patch to have mac80211 connect with HT20 if HT40 is not allowed (rhbz 866013)
023c26f
- Enable VFIO (rhbz 867152)
c7a63b9
- Apply patch from Stanislaw Gruszka to fix mac80211 issue (rhbz 862168)
aa337a7
- Apply patch to fix iwlwifi crash (rhbz 770484)
aa337a7
Mauro Carvalho Chehab 83707cd
* Tue Oct 16 2012 Mauro Carvalho Chehab <mchehab@redhat.com> - 3.6.2-2
Mauro Carvalho Chehab 83707cd
- Fix i82975x_edac OOPS
Mauro Carvalho Chehab 83707cd
d098f2b
* Tue Oct 16 2012 Justin M. Forbes <jforbes@redhat.com>
d098f2b
- Enable CONFIG_TCM_VHOST (rhbz 866981)
d098f2b
bf61942
* Mon Oct 15 2012 Justin M. Forbes <jforbes@redhat.com> 3.6.2-1
bf61942
- Linux 3.6.2
bf61942
162ad0f
* Thu Oct 11 2012 Peter Robinson <pbrobinson@fedoraproject.org> 3.6.1-2
9abf1b6
- Update ARM config for missing newoption items
9abf1b6
9d69565
* Tue Oct 09 2012 Josh Boyer <jwboyer@redhat.com>
9d69565
- Drop unhandled irq polling patch
9d69565
5768fde
* Mon Oct 08 2012 Justin M. Forbes <jforbes@redhat.com> 3.6.1-1
5768fde
- Linux 3.6.1
5768fde
cc41f66
* Sat Oct 06 2012 Josh Boyer <jwboyer@redhat.com>
cc41f66
- secure boot modsign depends on CONFIG_MODULE_SIG not CONFIG_MODULES
cc41f66
0f1408f
* Fri Oct 05 2012 Josh Boyer <jwboyer@redhat.com>
0f1408f
- Adjust secure boot modsign patch
0f1408f
5873a55
* Fri Oct  5 2012 Peter Robinson <pbrobinson@fedoraproject.org>
5873a55
- Build MMC in on OMAP and Tegra until we work out why modules don't work
5873a55
dd2f784
* Wed Oct 03 2012 Adam Jackson <ajax@redhat.com>
dd2f784
- Drop vgem patches, not doing anything yet.
dd2f784
b12047e
* Wed Oct 03 2012 Josh Boyer <jwboyer@redhat.com>
b12047e
- Make sure kernel-tools-libs-devel provides kernel-tools-devel
b12047e
b48142e
* Tue Oct 02 2012 Justin M. Forbes <jforbes@redhat.com> - 3.6.0-2
b48142e
- Power: Fix VMX fix for memcpy case (rhbz 862420)
b48142e
8c28af1
* Tue Oct 02 2012 Josh Boyer <jwboyer@redhat.com>
8c28af1
- Patch from David Howells to fix overflow on 32-bit X.509 certs (rhbz 861322)
8c28af1
63d5279
* Tue Oct  2 2012 Peter Robinson <pbrobinson@fedoraproject.org>
63d5279
- Update ARM configs for 3.6 final
63d5279
- Add highbank SATA driver for stability
63d5279
- Build in OMAP MMC and DMA drivers to fix borkage for now
63d5279
85cffef
* Mon Oct 01 2012 Justin M. Forbes <jforbes@redhat.com> - 3.6.0-1
85cffef
- Linux 3.6.0
85cffef
- Disable debugging options.
85cffef
Jesse Keating 7a32965
###
Jesse Keating 7a32965
# The following Emacs magic makes C-c C-e use UTC dates.
Jesse Keating 7a32965
# Local Variables:
Jesse Keating 7a32965
# rpm-change-log-uses-utc: t
Jesse Keating 7a32965
# End:
Jesse Keating 7a32965
###