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.
Josh Boyer 3704ea2
%global released_kernel 0
Jesse Keating 7a32965
Josh Boyer c2a12cd
# Sign modules on x86.  Make sure the config files match this setting if more
Josh Boyer c2a12cd
# architectures are added.
Josh Boyer c2a12cd
%ifarch %{ix86} x86_64
Josh Boyer c2a12cd
%global signmodules 1
Josh Boyer c2a12cd
%else
Josh Boyer c2a12cd
%global signmodules 0
Josh Boyer c2a12cd
%endif
Josh Boyer 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
#
Josh Boyer 774576e
%global baserelease 2
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.
Josh Boyer b1b2d34
%define base_sublevel 8
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?
Josh Boyer e8409b1
%define stable_update 0
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}
Josh Boyer 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
Dave Jones 1740c33
%define rcrev 4
Jesse Keating 7a32965
# The git snapshot level
Dave Jones 1740c33
%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}
8c4242c
# ARM Cortex-A15 support with LPAE and HW Virtualisation
8c4242c
%define with_lpae      %{?_without_lpae:      0} %{?!_without_lpae:      1}
986a9f3
# kernel-tegra (only valid for arm)
986a9f3
%define with_tegra       %{?_without_tegra:       0} %{?!_without_tegra:       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'.
Dave Jones af585ae
%define debugbuildsenabled 0
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
Dave Jones af585ae
%define rawhide_skip_docs 1
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}
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
8c4242c
# kernel up (unified kernel target), unified LPAE, tegra are only built on armv7 hfp
8c4242c
%ifnarch armv7hl
8c4242c
%define with_lpae 0
89e02ff
%endif
cfeb472
%define with_tegra 0
201cb5c
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.
Josh Boyer 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
Josh Boyer 59694fb
# only ppc needs a separate smp kernel
Josh Boyer 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
Josh Boyer 3b76903
%ifnarch ppc ppc64 ppc64p7
Jesse Keating 7a32965
%define with_bootwrapper 0
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Josh Boyer 59694fb
# sparse blows up on ppc64 and sparc64
5d109f0
%ifarch ppc64 ppc 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
Josh Boyer 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 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
Josh Boyer 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 834dba8
# Should make listnewconfig fail if there's config options
Dave Jones 834dba8
# printed out?
Dave Jones 834dba8
%if %{nopatches}%{using_upstream_branch}
Dave Jones 834dba8
%define listnewconfig_fail 0
Dave Jones 834dba8
%else
Dave Jones 834dba8
%define listnewconfig_fail 1
Dave Jones 834dba8
%endif
Dave Jones 834dba8
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...
5d109f0
%define nobuildarches i386 s390
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
Josh Boyer 8addb5f
# Architectures we build tools/cpupower on
Josh Boyer 3b76903
%define cpupowerarchs %{ix86} x86_64 ppc ppc64 ppc64p7 %{arm}
Josh Boyer 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}}\
8c4242c
Provides: kernel-highbank\
8c4242c
Provides: kernel-highbank-uname-r = %{KVERREL}%{?1:.%{1}}\
8c4242c
Provides: kernel-omap\
8c4242c
Provides: kernel-omap-uname-r = %{KVERREL}%{?1:.%{1}}\
Jesse Keating 7a32965
Requires(pre): %{kernel_prereq}\
Jesse Keating 7a32965
Requires(pre): %{initrd_prereq}\
Josh Boyer 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 702ef34
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
5d109f0
ExclusiveArch: noarch %{all_x86} x86_64 ppc ppc64 ppc64p7 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
Dave Jones 8b1aec1
BuildRequires: bzip2, xz, findutils, gzip, m4, perl, perl-Carp, make >= 3.78, diffutils, gawk
Josh Boyer 70f8133
BuildRequires: gcc >= 3.4.2, binutils >= 2.12, redhat-rpm-config, hmaccalc
Josh Boyer 951b84a
BuildRequires: net-tools, hostname, bc
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}
3117421
BuildRequires: elfutils-devel zlib-devel binutils-devel newt-devel python-devel perl(ExtUtils::Embed) bison
Josh Boyer ad6cd36
BuildRequires: 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.
Kyle McMartin 0f6d46f
# The -r flag to find-debuginfo.sh invokes eu-strip --reloc-debug-sections
Kyle McMartin 0f6d46f
# which reduces the number of relocations in kernel module .ko.debug files and
Kyle McMartin 0f6d46f
# was 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
Josh Boyer c2a12cd
%if %{signmodules}
Josh Boyer f0f4ff2
BuildRequires: openssl
Josh Boyer bf81d15
BuildRequires: pesign >= 0.10-4
Josh Boyer c2a12cd
%endif
Josh Boyer c2a12cd
Dave Jones 8959a0e
Source0: ftp://ftp.kernel.org/pub/linux/kernel/v3.0/linux-%{kversion}.tar.xz
Jesse Keating 7a32965
Josh Boyer c2a12cd
%if %{signmodules}
Josh Boyer f0f4ff2
Source11: x509.genkey
Josh Boyer c2a12cd
%endif
Josh Boyer c2a12cd
Jesse Keating 7a32965
Source15: merge.pl
Josh Boyer b8b2783
Source16: mod-extra.list
Josh Boyer 0b43386
Source17: mod-extra.sh
Kyle McMartin d0a8cf5
Source18: mod-sign.sh
Kyle McMartin d0a8cf5
%define modsign_cmd %{SOURCE18}
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
Josh Boyer 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
Josh Boyer 3b76903
Source54: config-powerpc64p7
Jesse Keating 7a32965
Jesse Keating 7a32965
Source70: config-s390x
Jesse Keating 7a32965
faa8d0c
# Unified ARM kernels
8c4242c
Source100: config-armv7-generic
8c4242c
Source101: config-armv7
8c4242c
Source102: config-armv7-lpae
faa8d0c
faa8d0c
# Legacy ARM kernels
faa8d0c
Source105: config-arm-generic
749420c
Source110: config-arm-omap
986a9f3
Source111: config-arm-tegra
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
Josh Boyer 8addb5f
# Sources for kernel-tools
Josh Boyer 8addb5f
Source2000: cpupower.service
Josh Boyer 8addb5f
Source2001: cpupower.config
Josh Boyer 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}
Josh Boyer 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}
Josh Boyer 471066e
Patch00: patch-3.%{upstream_sublevel}-rc%{rcrev}.xz
Jesse Keating 7a32965
%if 0%{?gitrev}
Josh Boyer 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
Dave Jones efd70b8
Patch04: compile-fixes.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# build tweak for build ID magic, even for -vanilla
Dave Jones efd70b8
Patch05: makefile-after_link.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
%if !%{nopatches}
Jesse Keating 7a32965
Kyle McMartin 201b16f
Jesse Keating 7a32965
# revert upstream patches we get via other methods
Dave Jones efd70b8
Patch09: 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
Dave Jones efd70b8
Patch390: defaults-acpi-video.patch
Dave Jones efd70b8
Patch391: acpi-video-dos.patch
Dave Jones a4b83ee
Patch396: acpi-sony-nonvs-blacklist.patch
Jesse Keating 7a32965
Dave Jones efd70b8
Patch450: input-kill-stupid-messages.patch
Dave Jones efd70b8
Patch452: no-pcspkr-modalias.patch
Jesse Keating 7a32965
Dave Jones efd70b8
Patch460: serial-460800.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
Patch470: die-floppy-die.patch
Jesse Keating 7a32965
Dave Jones efd70b8
Patch510: silence-noise.patch
Dave Jones efd70b8
Patch530: silence-fbcon-logo.patch
Jesse Keating 7a32965
Dave Jones efd70b8
Patch800: crash-driver.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# crypto/
Josh Boyer 306dfcc
Josh Boyer 306dfcc
# secure boot
Josh Boyer 2ff0508
Patch1000: devel-pekey-secure-boot-20130306.patch
Matthew Garrett 447e3a6
Jesse Keating 7a32965
# virt + ksm patches
Jesse Keating 7a32965
Jesse Keating 7a32965
# DRM
Josh Boyer 0e0a3af
#atch1700: drm-edid-try-harder-to-fix-up-broken-headers.patch
569c36b
#Patch1800: drm-vgem.patch
Dave Airlie 5cf9b33
Patch1700: drm-ttm-exports-for-qxl.patch
Dave Airlie 5cf9b33
Patch1701: drm-qxl-driver.patch
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
Dave Jones efd70b8
Patch2802: silence-acpi-blacklist.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# media patches
Dave Jones efd70b8
Patch2899: v4l-dvb-fixes.patch
Dave Jones efd70b8
Patch2900: v4l-dvb-update.patch
Dave Jones efd70b8
Patch2901: 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
Josh Boyer bc12142
Patch13003: efi-dont-map-boot-services-on-32bit.patch
Josh Boyer bc12142
Josh Boyer fcbaf26
Patch14000: hibernate-freeze-filesystems.patch
Josh Boyer fcbaf26
Dave Jones abc7c8e
Patch14010: lis3-improve-handling-of-null-rate.patch
Dave Jones abc7c8e
7a9e3a0
df483e6
# ARM
faa8d0c
Patch21000: arm-export-read_current_timer.patch
ad887f5
cfeb472
# lpae
cfeb472
Patch21001: arm-lpae-ax88796.patch
cfeb472
cfeb472
# ARM omap
cfeb472
Patch21002: arm-omap-fix-usb-mvebu-conflict.patch
df483e6
df483e6
# ARM tegra
8efb1fa
Patch21004: arm-tegra-nvec-kconfig.patch
df483e6
Patch21005: arm-tegra-usb-no-reset-linux33.patch
c30bd63
Josh Boyer af1af57
#rhbz 754518
Josh Boyer af1af57
Patch21235: scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch
Josh Boyer af1af57
Josh Boyer 35ceed2
#rhbz 859485
Josh Boyer 35ceed2
Patch21226: vt-Drop-K_OFF-for-VC_MUTE.patch
Josh Boyer 35ceed2
Josh Boyer ebd1a17
# https://fedoraproject.org/wiki/Features/Checkpoint_Restore
Josh Boyer ebd1a17
Patch21242: criu-no-expert.patch
Josh Boyer ebd1a17
Josh Boyer 27e48a6
#rhbz 892811
Josh Boyer 27e48a6
Patch21247: ath9k_rx_dma_stop_check.patch
Josh Boyer 27e48a6
Josh Boyer c040d8c
#rhbz 903192
Josh Boyer c040d8c
Patch21261: 0001-kmsg-Honor-dmesg_restrict-sysctl-on-dev-kmsg.patch
Josh Boyer c040d8c
Josh Boyer 318f655
#rhbz 914737
Josh Boyer 318f655
Patch21262: x86-mm-Fix-vmalloc_fault-oops-during-lazy-MMU-updates.patch
Josh Boyer 318f655
Josh Boyer 28ce01f
#rhbz 856863 892599
Josh Boyer b3c93b2
Patch21273: cfg80211-mac80211-disconnect-on-suspend.patch
Josh Boyer 28ce01f
Patch21274: mac80211_fixes_for_ieee80211_do_stop_while_suspend_v3.9.patch
Josh Boyer b3c93b2
Josh Boyer 60b78be
#rhbz 920218
Josh Boyer 60b78be
Patch21276: mac80211-Dont-restart-sta-timer-if-not-running.patch
Josh Boyer 60b78be
Josh Boyer 8a56c6c
#rhbz 859282
Josh Boyer 8a56c6c
Patch21275: VMX-x86-handle-host-TSC-calibration-failure.patch
Josh Boyer 8a56c6c
Josh Boyer 774576e
#rhbz 907221
Josh Boyer 774576e
Patch21277: HID-usbhid-quirk-for-MSI-GX680R-led-panel.patch
Josh Boyer 774576e
Josh Boyer 8816de0
#rhbz 806587
Josh Boyer 8816de0
Patch21278: HID-usbhid-quirk-for-Realtek-Multi-card-reader.patch
Josh Boyer 8816de0
Josh Boyer dadd60b
Patch22000: weird-root-dentry-name-debug.patch
Josh Boyer dadd60b
Josh Boyer dadd60b
#selinux ptrace child permissions
Josh Boyer dadd60b
Patch22001: selinux-apply-different-permission-to-ptrace-child.patch
Josh Boyer dadd60b
Dave Jones 6f9fa1a
Patch23000: cpufreq-intel-pstate-validate-msrs.patch
Dave Jones 749c877
Patch23001: cpufreq-intel-pstate-max-is-in-the-max-variable-who-knew.patch
Dave Jones 6f9fa1a
f62d812
#rhbz 927469
f62d812
Patch23006: fix-child-thread-introspection.patch
f62d812
Josh Boyer 812ba1a
# END OF PATCH DEFINITIONS
Josh Boyer 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
Josh Boyer 27d8a0e
%package -n python-perf-debuginfo
Josh Boyer 27d8a0e
Summary: Debug information for package perf python bindings
Josh Boyer 27d8a0e
Group: Development/Debug
Josh Boyer 27d8a0e
Requires: %{name}-debuginfo-common-%{_target_cpu} = %{version}-%{release}
Josh Boyer 27d8a0e
AutoReqProv: no
Josh Boyer 27d8a0e
%description -n python-perf-debuginfo
Josh Boyer 27d8a0e
This package provides debug information for the perf python bindings.
Josh Boyer 27d8a0e
Josh Boyer 27d8a0e
# the python_sitearch macro should already be defined from above
Josh Boyer 27d8a0e
%{expand:%%global debuginfo_args %{?debuginfo_args} -p '.*%%{python_sitearch}/perf.so(\.debug)?|XXX' -o python-perf-debuginfo.list}
Josh Boyer 27d8a0e
Josh Boyer 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
Josh Boyer 02587b4
Provides:  cpupowerutils = 1:009-0.6.p1
Josh Boyer 02587b4
Obsoletes: cpupowerutils < 1:009-0.6.p1
Josh Boyer 02587b4
Provides:  cpufreq-utils = 1:009-0.6.p1
Josh Boyer 02587b4
Provides:  cpufrequtils = 1:009-0.6.p1
Josh Boyer 02587b4
Obsoletes: cpufreq-utils < 1:009-0.6.p1
Josh Boyer 02587b4
Obsoletes: cpufrequtils < 1:009-0.6.p1
Josh Boyer 02587b4
Obsoletes: cpuspeed < 1:1.5-16
Josh Boyer 55e586c
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
Josh Boyer 55e586c
%package -n kernel-tools-libs
Josh Boyer 55e586c
Summary: Libraries for the kernels-tools
Josh Boyer 55e586c
Group: Development/System
Josh Boyer 55e586c
License: GPLv2
Josh Boyer 55e586c
%description -n kernel-tools-libs
Josh Boyer 55e586c
This package contains the libraries built from the tools/ directory
Josh Boyer 55e586c
from the kernel source.
Josh Boyer 55e586c
Josh Boyer 55e586c
%package -n kernel-tools-libs-devel
Josh Boyer 8addb5f
Summary: Assortment of tools for the Linux kernel
Josh Boyer 8addb5f
Group: Development/System
Josh Boyer 8addb5f
License: GPLv2
Josh Boyer 02587b4
Requires: kernel-tools = %{version}-%{release}
Josh Boyer 0ad3713
Provides:  cpupowerutils-devel = 1:009-0.6.p1
Josh Boyer 0ad3713
Obsoletes: cpupowerutils-devel < 1:009-0.6.p1
Josh Boyer 55e586c
Requires: kernel-tools-libs = %{version}-%{release}
Josh Boyer a5b375c
Provides: kernel-tools-devel
Josh Boyer 55e586c
%description -n kernel-tools-libs-devel
Josh Boyer 8addb5f
This package contains the development files for the tools/ directory from
Josh Boyer 8addb5f
the kernel source.
Josh Boyer 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.
Josh Boyer 6cb4b8d
%{expand:%%global debuginfo_args %{?debuginfo_args} -p '.*%%{_bindir}/centrino-decode(\.debug)?|.*%%{_bindir}/powernow-k8-decode(\.debug)?|.*%%{_bindir}/cpupower(\.debug)?|.*%%{_libdir}/libcpupower.*|.*%%{_bindir}/turbostat(\.debug)?|.*%%{_bindir}/x86_energy_perf_policy(\.debug)?|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
#
Josh Boyer b8b2783
# This macro creates a kernel-<subpackage>-modules-extra package.
Josh Boyer b8b2783
#	%%kernel_modules-extra_package <subpackage> <pretty-name>
Josh Boyer b8b2783
#
Josh Boyer b8b2783
%define kernel_modules-extra_package() \
Josh Boyer b8b2783
%package %{?1:%{1}-}modules-extra\
Josh Boyer b8b2783
Summary: Extra kernel modules to match the %{?2:%{2} }kernel\
Josh Boyer b8b2783
Group: System Environment/Kernel\
Josh Boyer b8b2783
Provides: kernel%{?1:-%{1}}-modules-extra-%{_target_cpu} = %{version}-%{release}\
Josh Boyer b8b2783
Provides: kernel-modules-extra-%{_target_cpu} = %{version}-%{release}%{?1:.%{1}}\
Josh Boyer b8b2783
Provides: kernel-modules-extra = %{version}-%{release}%{?1:.%{1}}\
Josh Boyer 6721e49
Provides: installonlypkg(kernel-module)\
Josh Boyer b8b2783
Provides: kernel-modules-extra-uname-r = %{KVERREL}%{?1:.%{1}}\
Josh Boyer b66345b
Requires: kernel-uname-r = %{KVERREL}%{?1:.%{1}}\
Josh Boyer b8b2783
AutoReqProv: no\
Josh Boyer b8b2783
%description -n kernel%{?variant}%{?1:-%{1}}-modules-extra\
Josh Boyer b8b2783
This package provides less commonly used kernel modules for the %{?2:%{2} }kernel package.\
Josh Boyer b8b2783
%{nil}
Josh Boyer b8b2783
Josh Boyer 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*}}}\
Josh Boyer 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
Josh Boyer 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
8c4242c
%define variant_summary The Linux kernel compiled for Cortex-A15
8c4242c
%kernel_variant_package lpae
8c4242c
%description lpae
986a9f3
This package includes a version of the Linux kernel with support for
8c4242c
Cortex-A15 devices with LPAE and HW virtualisation support
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
Josh Boyer 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
Josh Boyer 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}
Josh Boyer 471066e
    ApplyPatch patch-3.%{upstream_sublevel}-rc%{rcrev}.xz
Jesse Keating 7a32965
%if 0%{?gitrev}
Josh Boyer 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.
Josh Boyer 83337ce
cp -rl vanilla-%{vanillaversion} linux-%{KVERREL}
Jesse Keating 7a32965
Josh Boyer 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
Dave Jones efd70b8
ApplyPatch makefile-after_link.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
#
Jesse Keating 7a32965
# misc small stuff to make things compile
Jesse Keating 7a32965
#
Dave Jones efd70b8
ApplyOptionalPatch compile-fixes.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
%if !%{nopatches}
Jesse Keating 7a32965
Jesse Keating 7a32965
# revert patches from upstream that conflict or that we get via other means
Dave Jones efd70b8
ApplyOptionalPatch upstream-reverts.patch -R
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
#
faa8d0c
ApplyPatch arm-export-read_current_timer.patch
cfeb472
ApplyPatch arm-lpae-ax88796.patch
cfeb472
# ApplyPatch arm-omap-fix-usb-mvebu-conflict.patch
f82b107
# ApplyPatch arm-tegra-nvec-kconfig.patch
df483e6
ApplyPatch arm-tegra-usb-no-reset-linux33.patch
986a9f3
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
Dave Jones efd70b8
ApplyPatch defaults-acpi-video.patch
Dave Jones efd70b8
ApplyPatch acpi-video-dos.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.
Dave Jones efd70b8
ApplyPatch 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
Dave Jones efd70b8
ApplyPatch no-pcspkr-modalias.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# Allow to use 480600 baud on 16C950 UARTs
Dave Jones efd70b8
ApplyPatch serial-460800.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# Silence some useless messages that still get printed with 'quiet'
Dave Jones efd70b8
ApplyPatch silence-noise.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# Make fbcon not show the penguins with 'quiet'
Dave Jones efd70b8
ApplyPatch silence-fbcon-logo.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# Changes to upstream defaults.
Jesse Keating 7a32965
Jesse Keating 7a32965
Jesse Keating 7a32965
# /dev/crash driver.
Dave Jones efd70b8
ApplyPatch crash-driver.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# crypto/
Josh Boyer 306dfcc
Josh Boyer 306dfcc
# secure boot
Josh Boyer 2ff0508
ApplyPatch devel-pekey-secure-boot-20130306.patch
Matthew Garrett 447e3a6
Jesse Keating 7a32965
# Assorted Virt Fixes
Jesse Keating 7a32965
Kyle McMartin d3e4af8
# DRM core
Dave Airlie 5cf9b33
ApplyPatch drm-ttm-exports-for-qxl.patch
Dave Airlie 5cf9b33
ApplyPatch drm-qxl-driver.patch
Josh Boyer 0e0a3af
#ApplyPatch drm-edid-try-harder-to-fix-up-broken-headers.patch
bac708d
#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
Dave Jones efd70b8
ApplyPatch silence-acpi-blacklist.patch
Jesse Keating 7a32965
Jesse Keating 7a32965
# V4L/DVB updates/fixes/experimental drivers
Jesse Keating 7a32965
#  apply if non-empty
Dave Jones efd70b8
ApplyOptionalPatch v4l-dvb-fixes.patch
Dave Jones efd70b8
ApplyOptionalPatch v4l-dvb-update.patch
Dave Jones efd70b8
ApplyOptionalPatch 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
Josh Boyer bc12142
ApplyPatch efi-dont-map-boot-services-on-32bit.patch
Josh Boyer bc12142
Dave Jones 7bd4dec
# FIXME: REBASE
Dave Jones 7bd4dec
#ApplyPatch hibernate-freeze-filesystems.patch
Josh Boyer fcbaf26
Dave Jones abc7c8e
ApplyPatch lis3-improve-handling-of-null-rate.patch
Dave Jones abc7c8e
Josh Boyer af1af57
#rhbz 754518
Josh Boyer af1af57
ApplyPatch scsi-sd_revalidate_disk-prevent-NULL-ptr-deref.patch
Josh Boyer 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
Dave Jones 6f9fa1a
# rhbz 922923
Dave Jones 6f9fa1a
ApplyPatch cpufreq-intel-pstate-validate-msrs.patch
Dave Jones 749c877
ApplyPatch cpufreq-intel-pstate-max-is-in-the-max-variable-who-knew.patch
Dave Jones 6f9fa1a
Josh Boyer 35ceed2
#rhbz 859485
Josh Boyer 35ceed2
ApplyPatch vt-Drop-K_OFF-for-VC_MUTE.patch
Josh Boyer 35ceed2
Josh Boyer ebd1a17
# https://fedoraproject.org/wiki/Features/Checkpoint_Restore
Josh Boyer ebd1a17
ApplyPatch criu-no-expert.patch
Josh Boyer ebd1a17
Josh Boyer 27e48a6
#rhbz 892811
Josh Boyer 27e48a6
ApplyPatch ath9k_rx_dma_stop_check.patch
Josh Boyer 27e48a6
Josh Boyer c040d8c
#rhbz 903192
Josh Boyer c040d8c
ApplyPatch 0001-kmsg-Honor-dmesg_restrict-sysctl-on-dev-kmsg.patch
Josh Boyer c040d8c
Josh Boyer 318f655
#rhbz 914737
Josh Boyer 318f655
ApplyPatch x86-mm-Fix-vmalloc_fault-oops-during-lazy-MMU-updates.patch
Josh Boyer 318f655
Josh Boyer 28ce01f
#rhbz 856863 892599
Josh Boyer b3c93b2
ApplyPatch cfg80211-mac80211-disconnect-on-suspend.patch
Josh Boyer 28ce01f
ApplyPatch mac80211_fixes_for_ieee80211_do_stop_while_suspend_v3.9.patch
Josh Boyer b3c93b2
Josh Boyer 8a56c6c
#rhbz 859282
Josh Boyer 8a56c6c
ApplyPatch VMX-x86-handle-host-TSC-calibration-failure.patch
Josh Boyer 8a56c6c
Josh Boyer 60b78be
#rhbz 920218
Josh Boyer 60b78be
ApplyPatch mac80211-Dont-restart-sta-timer-if-not-running.patch
Josh Boyer 60b78be
Josh Boyer 774576e
#rhbz 907221
Josh Boyer 774576e
ApplyPatch HID-usbhid-quirk-for-MSI-GX680R-led-panel.patch
Josh Boyer 774576e
Josh Boyer 8816de0
#rhbz 806587
Josh Boyer 8816de0
ApplyPatch HID-usbhid-quirk-for-Realtek-Multi-card-reader.patch
Josh Boyer 8816de0
f62d812
#rhbz 927469
f62d812
ApplyPatch fix-child-thread-introspection.patch
f62d812
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
%if !%{debugbuildsenabled}
Jesse Keating 7a32965
rm -f kernel-%{version}-*debug.config
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Dave Jones 834dba8
# now run oldconfig over all the config files
Dave Jones 834dba8
for i in *.config
Dave Jones 834dba8
do
Dave Jones 834dba8
  mv $i .config
Dave Jones 834dba8
  Arch=`head -1 .config | cut -b 3-`
Dave Jones 834dba8
  make ARCH=$Arch listnewconfig | grep -E '^CONFIG_' >.newoptions || true
Dave Jones 834dba8
%if %{listnewconfig_fail}
Dave Jones 834dba8
  if [ -s .newoptions ]; then
Dave Jones 834dba8
    cat .newoptions
Dave Jones 834dba8
    exit 1
Dave Jones 834dba8
  fi
Dave Jones 834dba8
%endif
Dave Jones 834dba8
  rm -f .newoptions
Dave Jones 834dba8
  make ARCH=$Arch oldnoconfig
Dave Jones 834dba8
  echo "# $Arch" > configs/$i
Dave Jones 834dba8
  cat .config >> configs/$i
Dave Jones 834dba8
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
Kyle McMartin 9fc584b
    Flav=${Flavour:+.${Flavour}}
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
Kyle McMartin 9fc584b
    DevelDir=/usr/src/kernels/%{KVERREL}${Flav}
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
Kyle McMartin 9fc584b
    KernelVer=%{version}-%{release}.%{_target_cpu}${Flav}
Jesse Keating 7a32965
    echo BUILDING A KERNEL FOR ${Flavour} %{_target_cpu}...
Jesse Keating 7a32965
Josh Boyer 740de53
    %if 0%{?stable_update}
Josh Boyer 740de53
    # make sure SUBLEVEL is incremented on a stable release.  Sigh 3.x.
Josh Boyer 740de53
    perl -p -i -e "s/^SUBLEVEL.*/SUBLEVEL = %{?stablerev}/" Makefile
Josh Boyer 740de53
    %endif
Josh Boyer 740de53
Jesse Keating 7a32965
    # make sure EXTRAVERSION says what we want it to say
Kyle McMartin 9fc584b
    perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = -%{release}.%{_target_cpu}${Flav}/" Makefile
Jesse Keating 7a32965
Josh Boyer 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}
Josh Boyer 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
Josh Boyer 6e2d2c5
    %if %{signmodules}
Josh Boyer 6e2d2c5
    cp %{SOURCE11} .
Josh Boyer 6e2d2c5
    %endif
Josh Boyer 6e2d2c5
Josh Boyer ef06d4b
    chmod +x scripts/sign-file
Josh Boyer ef06d4b
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
783eee9
783eee9
    make -s ARCH=$Arch V=1 dtbs
783eee9
    mkdir -p $RPM_BUILD_ROOT/%{image_install_path}/dtb-$KernelVer
783eee9
    install -m 644 arch/arm/boot/dts/*.dtb $RPM_BUILD_ROOT/boot/dtb-$KernelVer/
5341f55
    rm -f arch/arm/boot/dts/*.dtb
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
Josh Boyer 70f8133
    # hmac sign the kernel for FIPS
Josh Boyer 70f8133
    echo "Creating hmac file: $RPM_BUILD_ROOT/%{image_install_path}/.vmlinuz-$KernelVer.hmac"
Josh Boyer 70f8133
    ls -l $RPM_BUILD_ROOT/%{image_install_path}/$InstallName-$KernelVer
Josh Boyer 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;
Josh Boyer 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=
Josh Boyer 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
Josh Boyer 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
1ef1d3d
    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 c809286
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 \
Kyle McMartin 52da9d6
    			 'register_netdev|ieee80211_register_hw|usbnet_probe|phy_driver_register|rt(l_|2x00)(pci|usb)_probe|register_netdevice'
Jesse Keating 7a32965
    collect_modules_list block \
Kyle McMartin 52da9d6
    			 'ata_scsi_ioctl|scsi_add_host|scsi_add_host_with_dma|blk_init_queue|register_mtd_blktrans|scsi_esp_register|scsi_register_device_handler|blk_queue_physical_block_size'
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
Josh Boyer 0b43386
    # Call the modules-extra script to move things around
Josh Boyer 0b43386
    %{SOURCE17} $RPM_BUILD_ROOT/lib/modules/$KernelVer %{SOURCE16}
Josh Boyer b8b2783
Josh Boyer f0f4ff2
%if %{signmodules}
Kyle McMartin 249d64d
    # Save the signing keys so we can sign the modules in __modsign_install_post
Kyle McMartin 9fc584b
    cp signing_key.priv signing_key.priv.sign${Flav}
Kyle McMartin 9fc584b
    cp signing_key.x509 signing_key.x509.sign${Flav}
Josh Boyer f0f4ff2
%endif
Josh Boyer f0f4ff2
John W. Linville fa580e5
    # remove files that will be auto generated by depmod at rpm -i time
Josh Boyer 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
Josh Boyer bddef7d
Josh Boyer bddef7d
    # This is going to create a broken link during the build, but we don't use
Josh Boyer bddef7d
    # it after this point.  We need the link to actually point to something
Josh Boyer bddef7d
    # when kernel-devel is installed, and a relative link doesn't work across
Josh Boyer bddef7d
    # the F17 UsrMove feature.
Josh Boyer 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
Josh Boyer 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
8c4242c
%if %{with_lpae}
8c4242c
BuildKernel %make_target %kernel_image lpae
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 \
Josh Boyer 2192022
  make %{?_smp_mflags} -C tools/perf -s V=1 WERROR=0 NO_LIBUNWIND=1 HAVE_CPLUS_DEMANGLE=1 NO_GTK2=1 NO_LIBNUMA=1 NO_STRLCPY=1 prefix=%{_prefix}
Kyle McMartin 42d4c31
%if %{with_perf}
Josh Boyer 8addb5f
# perf
Kyle McMartin 8bcddfb
%{perf_make} all
Kyle McMartin 8bcddfb
%{perf_make} man || %{doc_build_fail}
Kyle McMartin 42d4c31
%endif
Josh Boyer 8addb5f
Kyle McMartin 42d4c31
%if %{with_tools}
Josh Boyer 8addb5f
%ifarch %{cpupowerarchs}
Josh Boyer 8addb5f
# cpupower
Josh Boyer 8addb5f
# make sure version-gen.sh is executable.
Josh Boyer 8addb5f
chmod +x tools/power/cpupower/utils/version-gen.sh
Josh Boyer 9c44ba9
make %{?_smp_mflags} -C tools/power/cpupower CPUFREQ_BENCH=false
Josh Boyer 9c44ba9
%ifarch %{ix86}
Kyle McMartin 0769445
    pushd tools/power/cpupower/debug/i386
Josh Boyer 8addb5f
    make %{?_smp_mflags} centrino-decode powernow-k8-decode
Kyle McMartin 0769445
    popd
Josh Boyer 9c44ba9
%endif
Josh Boyer 9c44ba9
%ifarch x86_64
Kyle McMartin 0769445
    pushd tools/power/cpupower/debug/x86_64
Josh Boyer 9c44ba9
    make %{?_smp_mflags} centrino-decode powernow-k8-decode
Kyle McMartin 0769445
    popd
Josh Boyer 9c44ba9
%endif
Josh Boyer b080939
%ifarch %{ix86} x86_64
Kyle McMartin 0769445
   pushd tools/power/x86/x86_energy_perf_policy/
Josh Boyer b080939
   make
Kyle McMartin 0769445
   popd
Kyle McMartin 0769445
   pushd tools/power/x86/turbostat
Josh Boyer b080939
   make
Kyle McMartin 0769445
   popd
Josh Boyer b080939
%endif #turbostat/x86_energy_perf_policy
Josh Boyer 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
Josh Boyer f0f4ff2
# In the modsign case, we do 3 things.  1) We check the "flavour" and hard
Josh Boyer f0f4ff2
# code the value in the following invocations.  This is somewhat sub-optimal
Josh Boyer f0f4ff2
# but we're doing this inside of an RPM macro and it isn't as easy as it
Josh Boyer f0f4ff2
# could be because of that.  2) We restore the .tmp_versions/ directory from
Josh Boyer f0f4ff2
# the one we saved off in BuildKernel above.  This is to make sure we're
Josh Boyer f0f4ff2
# signing the modules we actually built/installed in that flavour.  3) We
Kyle McMartin d0a8cf5
# grab the arch and invoke mod-sign.sh command to actually sign the modules.
Josh Boyer f0f4ff2
#
Josh Boyer f0f4ff2
# We have to do all of those things _after_ find-debuginfo runs, otherwise
Josh Boyer f0f4ff2
# that will strip the signature off of the modules.
Josh Boyer f0f4ff2
Kyle McMartin 92559e2
%define __modsign_install_post \
Kyle McMartin 92559e2
  if [ "%{signmodules}" == "1" ]; then \
Kyle McMartin 63cb38b
    if [ "%{with_pae}" -ne "0" ]; then \
Kyle McMartin 63cb38b
      %{modsign_cmd} signing_key.priv.sign.PAE signing_key.x509.sign.PAE $RPM_BUILD_ROOT/lib/modules/%{KVERREL}.PAE/ \
Josh Boyer f0f4ff2
    fi \
Kyle McMartin 63cb38b
    if [ "%{with_debug}" -ne "0" ]; then \
Kyle McMartin 63cb38b
      %{modsign_cmd} signing_key.priv.sign.debug signing_key.x509.sign.debug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}.debug/ \
Josh Boyer f0f4ff2
    fi \
Kyle McMartin 63cb38b
    if [ "%{with_pae_debug}" -ne "0" ]; then \
Kyle McMartin 63cb38b
      %{modsign_cmd} signing_key.priv.sign.PAEdebug signing_key.x509.sign.PAEdebug $RPM_BUILD_ROOT/lib/modules/%{KVERREL}.PAEdebug/ \
Josh Boyer f0f4ff2
    fi \
Kyle McMartin 63cb38b
    if [ "%{with_up}" != -ne "0" ]; then \
Kyle McMartin 63cb38b
      %{modsign_cmd} signing_key.priv.sign signing_key.x509.sign $RPM_BUILD_ROOT/lib/modules/%{KVERREL}/ \
Josh Boyer f0f4ff2
    fi \
Josh Boyer f0f4ff2
  fi \
Jesse Keating 7a32965
%{nil}
Jesse Keating 7a32965
Kyle McMartin 92559e2
###
Kyle McMartin 92559e2
### Special hacks for debuginfo subpackages.
Kyle McMartin 92559e2
###
Kyle McMartin 92559e2
Kyle McMartin 92559e2
# This macro is used by %%install, so we must redefine it before that.
Kyle McMartin 92559e2
%define debug_package %{nil}
Kyle McMartin 92559e2
Kyle McMartin 92559e2
%if %{with_debuginfo}
Kyle McMartin 92559e2
Kyle McMartin 92559e2
%define __debug_install_post \
Kyle McMartin 92559e2
  /usr/lib/rpm/find-debuginfo.sh %{debuginfo_args} %{_builddir}/%{?buildsubdir}\
Kyle McMartin 92559e2
%{nil}
Kyle McMartin 92559e2
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
Kyle McMartin 92559e2
Jesse Keating 7a32965
%endif
Jesse Keating 7a32965
Kyle McMartin 92559e2
#
Kyle McMartin 92559e2
# Disgusting hack alert! We need to ensure we sign modules *after* all
Kyle McMartin 92559e2
# invocations of strip occur, which is in __debug_install_post if
Kyle McMartin 92559e2
# find-debuginfo.sh runs, and __os_install_post if not.
Kyle McMartin 92559e2
#
Kyle McMartin 92559e2
%define __spec_install_post \
Kyle McMartin 92559e2
  %{?__debug_package:%{__debug_install_post}}\
Kyle McMartin 92559e2
  %{__arch_install_post}\
Kyle McMartin 92559e2
  %{__os_install_post}\
Kyle McMartin 92559e2
  %{__modsign_install_post}
Kyle McMartin 92559e2
Jesse Keating 7a32965
###
Jesse Keating 7a32965
### install
Jesse Keating 7a32965
###
Jesse Keating 7a32965
Jesse Keating 7a32965
%install
Jesse Keating 7a32965
Josh Boyer 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
Josh Boyer 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
Josh Boyer 8addb5f
# We have to do the headers install before the tools install because the
Josh Boyer 8addb5f
# kernel headers_install will remove any header files in /usr/include that
Josh Boyer 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}
Josh Boyer 8addb5f
# perf tool binary and supporting scripts/binaries
Kyle McMartin 8bcddfb
%{perf_make} DESTDIR=$RPM_BUILD_ROOT install
Josh Boyer 8addb5f
Kyle McMartin ec31efd
# python-perf extension
Kyle McMartin 8bcddfb
%{perf_make} DESTDIR=$RPM_BUILD_ROOT install-python_ext
Kyle McMartin ec31efd
Josh Boyer 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
Josh Boyer 8addb5f
Kyle McMartin 42d4c31
%if %{with_tools}
Josh Boyer 8addb5f
%ifarch %{cpupowerarchs}
Josh Boyer 9c44ba9
make -C tools/power/cpupower DESTDIR=$RPM_BUILD_ROOT libdir=%{_libdir} mandir=%{_mandir} CPUFREQ_BENCH=false install
Josh Boyer 8addb5f
rm -f %{buildroot}%{_libdir}/*.{a,la}
Josh Boyer 8addb5f
%find_lang cpupower
Josh Boyer 8addb5f
mv cpupower.lang ../
Josh Boyer 9c44ba9
%ifarch %{ix86}
Kyle McMartin 0769445
    pushd tools/power/cpupower/debug/i386
Josh Boyer 8addb5f
    install -m755 centrino-decode %{buildroot}%{_bindir}/centrino-decode
Josh Boyer 8addb5f
    install -m755 powernow-k8-decode %{buildroot}%{_bindir}/powernow-k8-decode
Kyle McMartin 0769445
    popd
Josh Boyer 9c44ba9
%endif
Josh Boyer 9c44ba9
%ifarch x86_64
Kyle McMartin 0769445
    pushd tools/power/cpupower/debug/x86_64
Josh Boyer 9c44ba9
    install -m755 centrino-decode %{buildroot}%{_bindir}/centrino-decode
Josh Boyer 9c44ba9
    install -m755 powernow-k8-decode %{buildroot}%{_bindir}/powernow-k8-decode
Kyle McMartin 0769445
    popd
Josh Boyer 9c44ba9
%endif
Josh Boyer 8addb5f
chmod 0755 %{buildroot}%{_libdir}/libcpupower.so*
Josh Boyer 8addb5f
mkdir -p %{buildroot}%{_unitdir} %{buildroot}%{_sysconfdir}/sysconfig
Josh Boyer 8addb5f
install -m644 %{SOURCE2000} %{buildroot}%{_unitdir}/cpupower.service
Josh Boyer 8addb5f
install -m644 %{SOURCE2001} %{buildroot}%{_sysconfdir}/sysconfig/cpupower
Josh Boyer 8addb5f
%endif
Josh Boyer b080939
%ifarch %{ix86} x86_64
Josh Boyer b080939
   mkdir -p %{buildroot}%{_mandir}/man8
Kyle McMartin 0769445
   pushd tools/power/x86/x86_energy_perf_policy
Josh Boyer b080939
   make DESTDIR=%{buildroot} install
Kyle McMartin 0769445
   popd
Kyle McMartin 0769445
   pushd tools/power/x86/turbostat
Josh Boyer b080939
   make DESTDIR=%{buildroot} install
Kyle McMartin 0769445
   popd
Josh Boyer b080939
%endif #turbostat/x86_energy_perf_policy
Josh Boyer 8addb5f
%endif
Josh Boyer 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
Josh Boyer 93e7772
%if %{with_tools}
Josh Boyer 8addb5f
%post -n kernel-tools
Josh Boyer 8addb5f
/sbin/ldconfig
Josh Boyer 8addb5f
Josh Boyer 8addb5f
%postun -n kernel-tools
Josh Boyer 8addb5f
/sbin/ldconfig
Josh Boyer 93e7772
%endif
Josh Boyer 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
Josh Boyer b8b2783
#
Josh Boyer b8b2783
# This macro defines a %%post script for a kernel*-modules-extra package.
Josh Boyer b8b2783
#	%%kernel_modules-extra_post [<subpackage>]
Josh Boyer b8b2783
#
Josh Boyer b8b2783
%define kernel_modules_extra_post() \
Josh Boyer b8b2783
%{expand:%%post %{?1:%{1}-}modules-extra}\
Josh Boyer b8b2783
/sbin/depmod -a %{KVERREL}%{?1:.%{1}}\
Josh Boyer b8b2783
%{nil}
Josh Boyer 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*}}\
Josh Boyer 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
8c4242c
%kernel_variant_preun lpae
8c4242c
%kernel_variant_post -v lpae
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*
6e82a62
%{_sysconfdir}/bash_completion.d/perf
Josh Boyer 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)
Josh Boyer 27d8a0e
Josh Boyer 27d8a0e
%files -f python-perf-debuginfo.list -n python-perf-debuginfo
Josh Boyer 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)
Josh Boyer 8addb5f
%ifarch %{cpupowerarchs}
Josh Boyer 8addb5f
%{_bindir}/cpupower
Josh Boyer 6ec053a
%ifarch %{ix86} x86_64
Josh Boyer 8addb5f
%{_bindir}/centrino-decode
Josh Boyer 8addb5f
%{_bindir}/powernow-k8-decode
Josh Boyer 6ec053a
%endif
Josh Boyer 8addb5f
%{_unitdir}/cpupower.service
Kyle McMartin 42d4c31
%{_mandir}/man[1-8]/cpupower*
Josh Boyer 8addb5f
%config(noreplace) %{_sysconfdir}/sysconfig/cpupower
Josh Boyer b080939
%ifarch %{ix86} x86_64
Josh Boyer b080939
%{_bindir}/x86_energy_perf_policy
Josh Boyer b080939
%{_mandir}/man8/x86_energy_perf_policy*
Josh Boyer b080939
%{_bindir}/turbostat
Josh Boyer b080939
%{_mandir}/man8/turbostat*
Josh Boyer b080939
%endif
Josh Boyer 8addb5f
%endif
Josh Boyer 8addb5f
Roland McGrath 3c4ea9a
%if %{with_debuginfo}
Josh Boyer 8addb5f
%files -f kernel-tools-debuginfo.list -n kernel-tools-debuginfo
Roland McGrath 3c4ea9a
%defattr(-,root,root)
Roland McGrath 3c4ea9a
%endif
Josh Boyer 8addb5f
Josh Boyer 8addb5f
%ifarch %{cpupowerarchs}
Josh Boyer 55e586c
%files -n kernel-tools-libs
Josh Boyer 55e586c
%{_libdir}/libcpupower.so.0
Josh Boyer 55e586c
%{_libdir}/libcpupower.so.0.0.0
Josh Boyer 55e586c
Josh Boyer 55e586c
%files -n kernel-tools-libs-devel
Josh Boyer 8addb5f
%{_libdir}/libcpupower.so
Josh Boyer 8addb5f
%{_includedir}/cpufreq.h
Josh Boyer 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}}\
Josh Boyer 70f8133
/%{image_install_path}/.vmlinuz-%{KVERREL}%{?2:.%{2}}.hmac \
783eee9
%ifarch %{arm}\
783eee9
/%{image_install_path}/dtb-%{KVERREL}%{?2:.%{2}} \
783eee9
%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}}\
Josh Boyer b8b2783
%{expand:%%files %{?2:%{2}-}modules-extra}\
Josh Boyer b8b2783
%defattr(-,root,root)\
Josh Boyer 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
8c4242c
%kernel_variant_files %{with_lpae} lpae
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
Josh Boyer 3575ffb
#  ___________________________________________________________
Dave Jones 36ee79b
# / This branch is for Fedora 20. You probably want to commit \
Dave Jones 36ee79b
# \ to the F-19 branch instead, or in addition to this one.   /
Josh Boyer 3575ffb
#  -----------------------------------------------------------
Josh Boyer 3575ffb
#         \   ^__^
Josh Boyer 3575ffb
#          \  (@@)\_______
Josh Boyer 3575ffb
#             (__)\       )\/\
Josh Boyer 3575ffb
#                 ||----w |
Josh Boyer 3575ffb
#                 ||     ||
Jesse Keating 7a32965
%changelog
60044b9
* Thu Mar 28 2013 Peter Robinson <pbrobinson@fedoraproject.org> 
60044b9
- Update ARM unified config for OMAP
60044b9
f62d812
* Tue Mar 26 2013 Justin M. Forbes <jforbes@redhat.com>
f62d812
- Fix child thread introspection of of /proc/self/exe (rhbz 927469)
f62d812
Dave Jones a9ccf7f
* Tue Mar 26 2013 Dave Jones <davej@redhat.com>
Dave Jones a9ccf7f
- Enable CONFIG_DM_CACHE (rhbz 924325)
Dave Jones a9ccf7f
Josh Boyer 774576e
* Tue Mar 26 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 8816de0
- Add quirk for Realtek card reader to avoid 10 sec boot delay (rhbz 806587)
Josh Boyer 774576e
- Add quirk for MSI keyboard backlight to avoid 10 sec boot delay (rhbz 907221)
Josh Boyer 774576e
4a5e3ac
* Mon Mar 25 2013 Justin M. Forbes <jforbes@redhat.com>
4a5e3ac
- disable whci-hcd since it doesnt seem to have users (rhbz 919289)
4a5e3ac
Dave Jones 1740c33
* Sun Mar 24 2013 Dave Jones <davej@redhat.com> -3.9.0-0.rc4.git0.1
Dave Jones 1740c33
- Linux 3.9-rc4
Dave Jones 1740c33
  merged: drm-i915-bounds-check-execbuffer-relocation-count.patch
Dave Jones 1740c33
cfeb472
* Sun Mar 24 2013 Peter Robinson <pbrobinson@fedoraproject.org>
cfeb472
- Update ARM config for OMAP/mvebu/lpae
cfeb472
Dave Jones 749c877
* Fri Mar 22 2013 Dave Jones <davej@redhat.com>
Dave Jones 749c877
- Fix calculation of current frequency in intel_pstate driver. (rhbz 923942)
Dave Jones 8b1aec1
- Add missing build-req for perl-Carp
Dave Jones 749c877
Josh Boyer 60b78be
* Thu Mar 21 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 60b78be
- Fix workqueue crash in mac80211 (rhbz 920218)
Josh Boyer 60b78be
Josh Boyer f09cfb8
* Thu Mar 21 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc3.git1.1
Josh Boyer f09cfb8
- Linux v3.9-rc3-148-g2ffdd7e
Josh Boyer f09cfb8
- Fixes CVE-2013-1796, CVE-2013-1797, CVE-2013-1798 in kvm.
Josh Boyer f09cfb8
Dave Jones eeb8b24
* Wed Mar 20 2013 Dave Jones <davej@redhat.com>
Dave Jones eeb8b24
- Enable CONFIG_DM_DELAY (rhbz 923721)
Dave Jones eeb8b24
Dave Jones af585ae
* Tue Mar 19 2013 Dave Jones <davej@redhat.com> - 3.9.0-0.rc3.git0.5
Dave Jones af585ae
- Reenable debugging options.
Dave Jones af585ae
Dave Jones 6f9fa1a
* Tue Mar 19 2013 Dave Jones <davej@redhat.com>
Dave Jones 6f9fa1a
- cpufreq/intel_pstate: Add function to check that all MSR's are valid (rhbz 922923)
Dave Jones 6f9fa1a
Dave Jones 31befe5
* Mon Mar 18 2013 Dave Jones <davej@redhat.com> - 3.9.0-0.rc3.git0.4
Dave Jones 31befe5
- s390x config option changes from Dan Horák <dan@danny.cz>
Dave Jones 31befe5
   - enable PCI
Dave Jones 31befe5
   - disable few useless drivers
Dave Jones 31befe5
   - disable drivers conflicting with s390x
Dave Jones 31befe5
Dave Jones 422866d
* Mon Mar 18 2013 Dave Jones <davej@redhat.com> - 3.9.0-0.rc3.git0.3
Dave Jones 422866d
- Linux v3.9-rc3
Dave Jones 422866d
  merged: w1-fix-oops-when-w1_search-is-called-from.patch
Dave Jones 422866d
- Disable debugging options.
Dave Jones 422866d
8c4242c
* Sun Mar 17 2013 Peter Robinson <pbrobinson@fedoraproject.org>
8c4242c
- Merge OMAP support into ARM unified kernel
8c4242c
- Add ARM LPAE kernel for Cortex A-15 devices that support LPAE and HW virtualisation
8c4242c
- Unified ARM kernel provides highbank and OMAP support
8c4242c
- Drop remantents of ARM softfp kernels
8c4242c
Josh Boyer 8a56c6c
* Fri Mar 15 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 8a56c6c
- Fix divide by zero on host TSC calibration failure (rhbz 859282)
Josh Boyer 8a56c6c
Josh Boyer 73964d9
* Fri Mar 15 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc2.git1.1
Josh Boyer 73964d9
- Linux v3.9-rc2-292-ga2362d2
Josh Boyer 73964d9
- Fixes CVE-2013-1860 kernel: usb: cdc-wdm buffer overflow triggered by device
Josh Boyer 73964d9
Dave Jones 994c15c
* Thu Mar 14 2013 Dave Jones <davej@redhat.com>
Dave Jones 994c15c
- Move cpufreq drivers to be modular (rhbz 746372)
Dave Jones 994c15c
Dave Jones bb8f037
* Wed Mar 13 2013 Dave Jones <davej@redhat.com> - 3.9.0-0.rc2.git0.3
Dave Jones bb8f037
- Reenable debugging options.
Dave Jones bb8f037
Josh Boyer 18917ef
* Tue Mar 12 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 28ce01f
- Add patch to fix ieee80211_do_stop (rhbz 892599)
Josh Boyer b3c93b2
- Add patches to fix cfg80211 issues with suspend (rhbz 856863)
Josh Boyer c9ae2ee
- CVE-2013-0913 drm/i915: head writing overflow (rhbz 920471 920529)
Josh Boyer 18917ef
- CVE-2013-0914 sa_restorer information leak (rhbz 920499 920510)
Josh Boyer 18917ef
Dave Airlie 5cf9b33
* Tue Mar 12 2013 Dave Airlie <airlied@redhat.com>
Dave Airlie 5cf9b33
- add QXL driver (f19 only)
Dave Airlie 5cf9b33
Dave Jones fb08f46
* Mon Mar 11 2013 Dave Jones <davej@redhat.com> - 3.9.0-0.rc2.git0.2
Dave Jones fb08f46
- Disable debugging options.
Dave Jones fb08f46
Dave Jones fb08f46
* Mon Mar 11 2013 Dave Jones <davej@redhat.com>
Dave Jones fb08f46
- Linux 3.9-rc2
Dave Jones fb08f46
Josh Boyer 7a56714
* Mon Mar 11 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 4051476
- Add patch to allow "8250." prefix to keep working (rhbz 911771)
Josh Boyer 7a56714
- Add patch to fix w1_search oops (rhbz 857954)
Josh Boyer 7a56714
Josh Boyer cd62a77
* Sun Mar 10 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc1.git2.1
Josh Boyer cd62a77
- Linux v3.9-rc1-278-g8343bce
Josh Boyer cd62a77
90b9a4e
* Sun Mar 10 2013 Peter Robinson <pbrobinson@fedoraproject.org>
90b9a4e
- Enable Xilinx Zynq
90b9a4e
- Enable highbank cpufreq driver
90b9a4e
Josh Boyer 6cb4b8d
* Fri Mar 08 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 6cb4b8d
- Add turbostat and x86_engery_perf_policy debuginfo to kernel-tools-debuginfo
Josh Boyer 6cb4b8d
Josh Boyer 194fd44
* Fri Mar 08 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc1.git1.1
Josh Boyer 194fd44
- Linux v3.9-rc1-211-g47b3bc9
Josh Boyer 194fd44
- Reenable debugging options.
Josh Boyer 194fd44
- CVE-2013-1828 sctp: SCTP_GET_ASSOC_STATS stack buffer overflow (rhbz 919315 919316)
Josh Boyer 194fd44
Josh Boyer 4bd0ec9
* Thu Mar 07 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 4bd0ec9
- CVE-2013-1792 keys: race condition in install_user_keyrings (rhbz 916646 919021)
Josh Boyer 4bd0ec9
Josh Boyer bb07d25
* Wed Mar 06 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 2ff0508
- Adjust secure-boot patchset to work with boot_params sanitizing
Josh Boyer bb07d25
- Don't clear efi_info in boot_params (rhbz 918408)
Josh Boyer bb07d25
Josh Boyer bb07d25
* Wed Mar 06 2013 Peter Robinson <pbrobinson@fedoraproject.org>
d77d603
- Update ARM mvebu config
d77d603
Dave Jones 674fbcc
* Wed Mar 06 2013 Dave Jones <davej@redhat.com>
Dave Jones 674fbcc
- drop acpi debugging patch.
Dave Jones 674fbcc
a728032
* Wed Mar 06 2013 Justin M. Forbes <jforbes@redhat.com>
a728032
- Remove Ricoh multifunction DMAR patch as it's no longer needed (rhbz 880051)
a728032
Josh Boyer 3ce66bc
* Tue Mar 05 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc1.git0.3
Josh Boyer 3ce66bc
- Fix intel_pstate init error path (rhbz 916833)
Josh Boyer 3ce66bc
993b479
* Tue Mar  5 2013 Peter Robinson <pbrobinson@fedoraproject.org>
993b479
- Temporarily disable tegra until we get a fix from upstream
993b479
Josh Boyer 4d1cff5
* Tue Mar 05 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 4d1cff5
- Add 3 fixes for efi issues (rhbz 917984)
Josh Boyer e4ac04d
- Enable CONFIG_IP6_NF_TARGET_MASQUERADE
Josh Boyer 4d1cff5
Josh Boyer 68c1caa
* Mon Mar 04 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc1.git0.1
Josh Boyer 68c1caa
- Linux v3.9-rc1
Josh Boyer 68c1caa
- Add patch from Dirk Brandewie to fix intel pstate divide error (rhbz 916833)
Josh Boyer 68c1caa
- Disable debugging options.
Josh Boyer 68c1caa
83ef26c
* Mon Mar  4 2013 Peter Robinson <pbrobinson@fedoraproject.org>
5341f55
- Update vexpress and omap options (fix MMC on qemu, hopefully fix OMAP3)
83ef26c
Josh Boyer 9608524
* Sun Mar 03 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git15.1
Josh Boyer 9608524
- Linux v3.8-10734-ga7c1120
Josh Boyer 9608524
Josh Boyer f5e36b4
* Fri Mar 01 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git14.1
Josh Boyer f5e36b4
- Linux v3.8-10206-gb0af9cd
Josh Boyer f5e36b4
Josh Boyer 5e517eb
* Fri Mar 01 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git13.1
Josh Boyer 5e517eb
- Linux v3.8-9761-gde1a226
Josh Boyer 5e517eb
Kyle McMartin 3537f29
* Thu Feb 28 2013 Kyle McMartin <kmcmarti@redhat.com>
Kyle McMartin 3537f29
- Make iso9660 a module.
Kyle McMartin 3537f29
Josh Boyer 4751013
* Thu Feb 28 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git12.1
Josh Boyer 4751013
- Linux v3.8-9633-g2a7d2b9
Josh Boyer 4751013
a9221ac
* Wed Feb 27 2013 Peter Robinson <pbrobinson@fedoraproject.org>
a9221ac
- Drop ARM kirkwood kernel
a9221ac
- Enable SPI on ARM
a9221ac
- General 3.9 updates
a9221ac
Josh Boyer 0a85b3e
* Wed Feb 27 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git11.1
Josh Boyer 0a85b3e
- Linux v3.8-9456-g309667e
Josh Boyer 0a85b3e
Josh Boyer 0ace7eb
* Wed Feb 27 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git10.1
Josh Boyer 0ace7eb
- Linux v3.8-9405-gd895cb1
Josh Boyer 0ace7eb
Josh Boyer 55b874d
* Tue Feb 26 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git9.1
Josh Boyer 55b874d
- Linux v3.8-9165-g1cef935
Josh Boyer 55b874d
Kyle McMartin 41df8b4
* Tue Feb 26 2013 Kyle McMartin <kmcmarti@redhat.com>
Kyle McMartin 41df8b4
- Move VMXNET3 to config-x86-generic from config-generic, it's VMware
Kyle McMartin 41df8b4
  virtual ethernet.
Kyle McMartin 41df8b4
Josh Boyer ab465cb
* Tue Feb 26 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git8.1
Josh Boyer ab465cb
- Linux v3.8-8664-gc41b381
Josh Boyer ab465cb
Kyle McMartin 52da9d6
* Tue Feb 26 2013 Kyle McMartin <kmcmarti@redhat.com>
Kyle McMartin 52da9d6
- Add blk_queue_physical_block_size and register_netdevice to the symbols
Kyle McMartin 52da9d6
  used for initrd generation (synched from .el6)
Josh Boyer ab465cb
- ipr.ko driven SAS VRAID cards found on x86_64 machines these days, and not
Josh Boyer ab465cb
  just on ppc64
Kyle McMartin 52da9d6
Josh Boyer 318f655
* Tue Feb 26 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 318f655
- Fix vmalloc_fault oops during lazy MMU (rhbz 914737)
Josh Boyer 318f655
Josh Boyer 45d5b3f
* Mon Feb 25 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git7.1
Josh Boyer c040d8c
- Honor dmesg_restrict for /dev/kmsg (rhbz 903192)
Josh Boyer 45d5b3f
- Linux v3.8-7888-gab78265
Josh Boyer 45d5b3f
Josh Boyer 4e8a0d7
* Sun Feb 24 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git6.1
Josh Boyer 4e8a0d7
- Linux v3.8-6988-g9e2d59a
Josh Boyer 4e8a0d7
Josh Boyer 2347988
* Sun Feb 24 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 2347988
- CVE-2013-1763 sock_diag: out-of-bounds access to sock_diag_handlers (rhbz 915052,915057)
Josh Boyer 2347988
Josh Boyer e41bfbe
* Fri Feb 22 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git5.1
Josh Boyer e41bfbe
- Linux v3.8-6071-g8b5628a
Josh Boyer e41bfbe
Josh Boyer 8be986a
* Fri Feb 22 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git4.1
Josh Boyer 8be986a
- Linux v3.8-6071-g8b5628a
Josh Boyer 8be986a
- Enable the rtl8192e driver (rhbz 913753)
Josh Boyer 8be986a
Josh Boyer bf2d203
* Thu Feb 21 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git3.1
Josh Boyer bf2d203
- Linux v3.8-3195-g024e4ec
Josh Boyer 2192022
- Shut up perf about missing build things we don't care about
Josh Boyer 2192022
- Drop the old aic7xxx driver, from Paul Bolle
Josh Boyer 2192022
Josh Boyer 0b030fa
* Thu Feb 21 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git2.1
Josh Boyer 0b030fa
- Linux v3.8-3040-ga0b1c42
Josh Boyer 0b030fa
Josh Boyer 3704ea2
* Thu Feb 21 2013 Josh Boyer <jwboyer@redhat.com> - 3.9.0-0.rc0.git1.1
Josh Boyer 3704ea2
- Linux v3.8-523-gece8e0b
Josh Boyer 3704ea2
- Reenable debugging options.
Josh Boyer 3704ea2
Josh Boyer 032cd0b
* Tue Feb 19 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-2
Josh Boyer 032cd0b
- Add pekey support from David Howells and rework secure-boot patchset on top
Josh Boyer f540242
- Add support for Atheros 04ca:3004 bluetooth devices (rhbz 844750)
Josh Boyer 5c86018
- Backport support for newer ALPS touchpads (rhbz 812111)
Josh Boyer 3c64815
- Enable CONFIG_AUDIT_LOGINUID_IMMUTABLE
Josh Boyer 3c64815
Josh Boyer b1b2d34
* Tue Feb 19 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-1
Josh Boyer b1b2d34
- Linux v3.8
Josh Boyer b1b2d34
- Fix build with CONFIG_EFI disabled, reported by Peter Bowey (rhbz 911833)
Josh Boyer b1b2d34
- Disable debugging options.
Josh Boyer b1b2d34
Josh Boyer b8330c9
* Mon Feb 18 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-0.rc7.git4.1
Josh Boyer b8330c9
- Linux v3.8-rc7-93-gf741656
Josh Boyer b8330c9
Josh Boyer 8bcc7be
* Thu Feb 14 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-0.rc7.git3.1
Josh Boyer 8bcc7be
- Linux v3.8-rc7-73-g323a72d
Josh Boyer 8bcc7be
Josh Boyer f052f6b
* Thu Feb 14 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 04aff46
- Add patch to fix corruption on newer M6116 SATA bridges (rhbz 909591)
Josh Boyer f052f6b
- CVE-2013-0228 xen: xen_iret() invalid %ds local DoS (rhbz 910848 906309)
Josh Boyer f052f6b
1d8418f
* Wed Feb 13 2013 Peter Robinson <pbrobinson@fedoraproject.org>
1d8418f
- Disable tegra30
1d8418f
Josh Boyer 8371157
* Wed Feb 13 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-0.rc7.git2.1
Josh Boyer 8371157
- Linux v3.8-rc7-32-gecf223f
Josh Boyer 8371157
Josh Boyer 8827d3f
* Tue Feb 12 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 8827d3f
- Add patch to create a convenient mount point for pstore (rhbz 910126)
Josh Boyer 8827d3f
Josh Boyer 526e2f3
* Tue Feb 12 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-0.rc7.git1.1
Josh Boyer 526e2f3
- Linux v3.8-rc7-6-g211b0cd
Josh Boyer 526e2f3
- Reenable debugging options.
Josh Boyer 526e2f3
Josh Boyer e6a8495
* Mon Feb 11 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 79353e6
- Add patch from Kees Cook to restrict MSR writting in secure boot mode
Josh Boyer e6a8495
- Build PATA_MACIO in on powerpc (rhbz 831361)
Josh Boyer e6a8495
Josh Boyer a6e3960
* Fri Feb 08 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-0.rc7.git0.1
Josh Boyer a6e3960
- Linux v3.8-rc7
Josh Boyer a6e3960
- Add patch to fix atomic sleep issue on alloc_pid failure (rhbz 894623)
Josh Boyer a6e3960
- Disable debugging options.
Josh Boyer a6e3960
676a807
* Thu Feb  7 2013 Peter Robinson <pbrobinson@fedoraproject.org>
676a807
- Minor ARM build fixes
676a807
Josh Boyer f39ad01
* Wed Feb 06 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-0.rc6.git3.3
Josh Boyer f39ad01
- Enable CONFIG_NAMESPACES everywhere (rhbz 907576)
Josh Boyer 27e48a6
- Add patch to fix ath9k dma stop checks (rhbz 892811)
Josh Boyer 27e48a6
Josh Boyer b342019
* Wed Feb 06 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-0.rc6.git3.1
Josh Boyer b342019
- Linux v3.8-rc6-98-g1589a3e
Josh Boyer b342019
- Add patch to honor MokSBState (rhbz 907406)
Josh Boyer b342019
Josh Boyer f6882f7
* Tue Feb 05 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-0.rc6.git2.1
Josh Boyer f6882f7
- Linux v3.8-rc6-62-gfe547d7
Josh Boyer f6882f7
- Enable CONFIG_DRM_VMWGFX_FBCON (rhbz 907620)
Josh Boyer f6882f7
- Enable CONFIG_DETECT_HUNG_TASK
Josh Boyer f6882f7
Josh Boyer b5da79f
* Mon Feb 04 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-0.rc6.git1.1
Josh Boyer b5da79f
- Linux v3.8-rc6-22-g6edacf0
Josh Boyer b5da79f
- Enable CONFIG_EXT4_DEBUG
Josh Boyer a78de7a
- Fix rtlwifi scheduling while atomic from Larry Finger (rhbz 903881)
Josh Boyer b5da79f
Josh Boyer 9f81bc0
* Fri Feb 01 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-0.rc6.git0.1
Josh Boyer 72b2eb9
- Linux v3.8-rc6
Josh Boyer 72b2eb9
- Enable CONFIG_DMA_API_DEBUG
Josh Boyer f63d946
- Add patches to improve mac80211 latency and throughput (rhbz 830151)
Josh Boyer 72b2eb9
Josh Boyer 47a1ebc
* Thu Jan 31 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-0.rc5.git3.1
Josh Boyer 47a1ebc
- Linux v3.8-rc5-245-g04c2eee
Josh Boyer 47a1ebc
- Enable CONFIG_DEBUG_STACK_USAGE
Josh Boyer 47a1ebc
Josh Boyer ebd1a17
* Wed Jan 30 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-0.rc5.git2.1
Josh Boyer ebd1a17
- Linux v3.8-rc5-218-ga56e160
Josh Boyer ebd1a17
- Enable NAMESPACES and CHECKPOINT_RESTORE on x86_64 for F19 CRIU feature
Josh Boyer ebd1a17
- Enable CONFIG_DEBUG_ATOMIC_SLEEP
Josh Boyer ebd1a17
Josh Boyer 1a1f3b0
* Tue Jan 29 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-0.rc5.git1.1
Josh Boyer 1a1f3b0
- Linux v3.8-rc5-150-g6abb7c2
Josh Boyer 1a1f3b0
Josh Boyer 655567c
* Tue Jan 29 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 655567c
- Backport driver for Cypress PS/2 trackpad (rhbz 799564)
Josh Boyer 655567c
Josh Boyer 1c73ec9
* Mon Jan 28 2013 Josh Boyer <jwboyer@redhat.com> - 3.8.0-0.rc5.git0.1
Josh Boyer 87df459
- Linux v3.8-rc5
Josh Boyer 87df459
- Add patches to fix issues with iwlwifi (rhbz 863424)
Josh Boyer 87df459
- Enable CONFIG_PROVE_RCU
Josh Boyer 87df459
783eee9
* Sun Jan 27 2013 Peter Robinson <pbrobinson@fedoraproject.org>
783eee9
- Reenable perf on ARM (was suppose to be temporary)
783eee9
- Build and package dtbs on ARM
f28d195
- Enable FB options for qemu vexpress on unified
783eee9
Kyle McMartin d0a8cf5
* Fri Jan 25 2013 Kyle McMartin <kmcmarti@redhat.com>
Kyle McMartin d0a8cf5
- Sign all modules with the mod-extra-sign.sh script, ensures nothing gets
Kyle McMartin d0a8cf5
  missed because of .config differences between invocations of BuildKernel.
Kyle McMartin d0a8cf5
e66c8fd
* Fri Jan 25 2013 Justin M. Forbes <jforbes@redhat.com>
e66c8fd
- Turn off THP for 32bit
e66c8fd
e65ebc2
* Fri Jan 25 2013 Justin M. Forbes <jforbes@redhat.com> - 3.8.0-0.rc4.git5.1
e65ebc2
- Linux v3.8-rc4-277-g66e2d3e
e65ebc2
- Enable slub debug
e65ebc2
Josh Boyer a8e5aec
* Thu Jan 24 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer a8e5aec
- Update secure-boot patchset
Josh Boyer a8e5aec
09eb2a3
* Thu Jan 24 2013 Justin M. Forbes <jforbes@redhat.com> - 3.8.0-0.rc4.git4.1
09eb2a3
- Linux v3.8-rc4-183-gff7532c
09eb2a3
- Enable lockdep
09eb2a3
11dc6fb
* Wed Jan 23 2013 Justin M. Forbes <jforbes@redhat.com> - 3.8.0-0.rc4.git3.1
11dc6fb
- Linux v3.8-rc4-139-g1d85490
11dc6fb
- Enable debug spinlocks
11dc6fb
Dave Jones 0246c53
* Wed Jan 23 2013 Dave Jones <davej@redhat.com>
Dave Jones 0246c53
- Remove warnings about empty IPI masks.
Dave Jones 0246c53
e45a618
* Sun Jan 20 2013 Peter Robinson <pbrobinson@fedoraproject.org>
e45a618
- Remove obsolete ARM configs
e45a618
- Update OMAP config for TI AM35XX SoCs
c30bd63
- Add patch to fix versatile build failure
e45a618
708151e
* Sat Jan 19 2013 Justin M. Forbes <jforbes@redhat.com> - 3.8.0-0.rc4.git1.1
708151e
- Linux v3.8-rc4-42-g5da1f88
708151e
1d0a762
* Fri Jan 18 2013 Justin M. Forbes <jforbes@redhat.com> - 3.8.0-0.rc4.git0.1
1d0a762
- Linux v3.8-rc4
1d0a762
- Disable debugging options.
1d0a762
ba00a4b
* Fri Jan 18 2013 Peter Robinson <pbrobinson@fedoraproject.org>
ba00a4b
- Disable problematic PL310 ARM errata
ba00a4b
- Minor ARM config tweaks
1828015
- OMAP DRM driver to fix OMAP kernel build
ba00a4b
Josh Boyer de47636
* Wed Jan 16 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer de47636
- Fix power management sysfs on non-secure boot machines (rhbz 896243)
Josh Boyer de47636
Dave Jones 74cf392
* Wed Jan 16 2013 Dave Jones <davej@redhat.com>
Dave Jones 74cf392
- Experiment: Double the length of the brcmsmac transmit timeout.
Dave Jones 74cf392
Josh Boyer f6e1793
* Wed Jan 16 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer f6e1793
- Add patch from Stanislaw Gruszka to fix iwlegacy IBSS cleanup (rhbz 886946)
Josh Boyer f6e1793
45aa9a2
* Tue Jan 15 2013 Justin M. Forbes <jforbes@redhat.com> - 3.8.0-0.rc3.git2.1
45aa9a2
- Linux v3.8-rc3-293-g406089d
45aa9a2
Josh Boyer aef2a4b
* Tue Jan 15 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer aef2a4b
- Enable CONFIG_DVB_USB_V2 (rhbz 895460)
Josh Boyer aef2a4b
Josh Boyer d30a701
* Mon Jan 14 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer d30a701
- Enable Orinoco drivers in kernel-modules-extra (rhbz 894069)
Josh Boyer d30a701
9385068
* Mon Jan 14 2013 Justin M. Forbes <jforbes@redhat.com> - 3.8.0-0.rc3.git1.1
9385068
- Linux v3.8-rc3-74-gb719f43
9385068
Josh Boyer 95c6648
* Fri Jan 11 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 95c6648
- Update secure-boot patchset
Josh Boyer 95c6648
7ef2fa6
* Thu Jan 10 2013 Justin M. Forbes <jforbes@redhat.com> - 3.8.0-0.rc3.git0.2
7ef2fa6
- Reenable debugging options.
7ef2fa6
Dave Jones 793b41f
* Thu Jan 10 2013 Dave Jones <davej@redhat.com>
Dave Jones 793b41f
- Drop old Montevina era E1000 workaround.
Dave Jones 793b41f
1cdf6c9
* Thu Jan 10 2013 Justin M. Forbes <jforbes@redhat.com> - 3.8.0-0.rc3.git0.1
1cdf6c9
- Linux v3.8-rc3
1cdf6c9
- Disable debugging options.
1cdf6c9
1f105b6
* Wed Jan 09 2013 Justin M. Forbes <jforbes@redhat.com> - 3.8.0-0.rc2.git4.1
1f105b6
- Linux v3.8-rc2-370-g57a0c1e
1f105b6
bc880f5
* Wed Jan  9 2013 Peter Robinson <pbrobinson@fedoraproject.org>
bc880f5
- Update ARM mvebu config
bc880f5
Josh Boyer 8b0ebc3
* Wed Jan 09 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 8b0ebc3
- Enable CONFIG_CIFS_DEBUG as it was on before it was split out
Josh Boyer 8b0ebc3
Kyle McMartin 92559e2
* Tue Jan 08 2013 Kyle McMartin <kmcmarti@redhat.com>
Kyle McMartin 92559e2
- Ensure modules are signed even if *-debuginfo rpms are not produced by
Kyle McMartin 92559e2
  re-defining __spec_install_post and adding a hook after all strip
Kyle McMartin 92559e2
  invocations. Ideally, in the future, we could patch the rpm macro and
Kyle McMartin 92559e2
  remove the re-define from kernel.spec, but that's another windmill to tilt
Kyle McMartin 92559e2
  at.
Kyle McMartin 92559e2
9198b1c
* Tue Jan 08 2013 Justin M. Forbes <jforbes@redhat.com> - 3.8.0-0.rc2.git3.1
9198b1c
- Linux v3.8-rc2-222-g2a893f9
9198b1c
41659d6
* Mon Jan 07 2013 Justin M. Forbes <jforbes@redhat.com> - 3.8.0-0.rc2.git2.1
41659d6
- Linux v3.8-rc2-191-gd287b87
c011f81
- remove the namei-include.patch, it's upstream now
41659d6
41659d6
* Mon Jan 07 2013 Justin M. Forbes <jforbes@redhat.com> - 3.8.0-0.rc2.git1.2
41659d6
- Reenable debugging options.
41659d6
6f61d3d
* Mon Jan  7 2013 Peter Robinson <pbrobinson@fedoraproject.org>
6f61d3d
- Further ARM config updates
6f61d3d
- Add patch to fix building omapdrm
6f61d3d
af8f3eb
* Mon Jan 07 2013 Justin M. Forbes <jforbes@redhat.com>
5d109f0
- Bye sparc
5d109f0
5d109f0
* Mon Jan 07 2013 Justin M. Forbes <jforbes@redhat.com>
af8f3eb
- Fix up configs for build
af8f3eb
Josh Boyer fd89f36
* Mon Jan 07 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer fd89f36
- Patch to fix efivarfs underflow from Lingzhu Xiang (rhbz 888163)
Josh Boyer fd89f36
14f894d
* Sat Jan  5 2013 Peter Robinson <pbrobinson@fedoraproject.org>
14f894d
- Initial update of ARM configs for 3.8
14f894d
- Enable DRM driver for tegra
14f894d
- Drop separate imx kernel. Will be reintroduced soon in unified
14f894d
f82b107
* Fri Jan 04 2013 Justin M. Forbes <jforbes@redhat.com> - 3.8.0-0.rc2.git1.1
f82b107
- Linux v3.8-rc2-116-g5f243b9
f82b107
f82b107
* Thu Jan 03 2013 Justin M. Forbes <jforbes@redhat.com>
f82b107
- Initial 3.8-rc2 rebase
f82b107
Josh Boyer 5a4dd83
* Wed Jan 02 2013 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 5a4dd83
- BR the hostname package (rhbz 886113)
Josh Boyer 5a4dd83
Dave Jones 834dba8
* Tue Dec 18 2012 Dave Jones <davej@redhat.com>
Dave Jones 834dba8
- On rebases, list new config options.
Dave Jones 834dba8
  (Revert to pre-18 behaviour)
Dave Jones 834dba8
Josh Boyer 0aeca8e
* Mon Dec 17 2012 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 0aeca8e
- Fix oops in sony-laptop setup (rhbz 873107)
Josh Boyer 0aeca8e
878f7ae
* Fri Dec 14 2012 Peter Robinson <pbrobinson@fedoraproject.org>
878f7ae
- Add patch to fix arm imx drm driver build
878f7ae
Josh Boyer e1b90cc
* Wed Dec 12 2012 Josh Boyer <jwboyer@redhat.com>
Josh Boyer e1b90cc
- Fix infinite loop in efi signature parser
Josh Boyer e1b90cc
- Don't error out if db doesn't exist
Josh Boyer e1b90cc
d787679
* Tue Dec 11 2012 Peter Robinson <pbrobinson@fedoraproject.org>
d787679
- Update ARM configs for latest 3.7
d787679
- Drop highbank kernel build variant as its in unified kernel
d787679
Josh Boyer 2df5ebe
* Tue Dec 11 2012 Josh Boyer <jwboyer@redhat.com>
Josh Boyer 4fc17ca
- Update secure boot patches to include MoK support
Josh Boyer 2df5ebe
- Fix IBSS scanning in mac80211 (rhbz 883414)
Josh Boyer 2df5ebe
Dave Jones 8a3c3fe
* Tue Dec 11 2012 Dave Jones <davej@redhat.com> - 3.7.0-2
Dave Jones 8a3c3fe
- Reenable debugging options.
Dave Jones 8a3c3fe
Dave Jones 53fa0ab
* Tue Dec 11 2012 Dave Jones <davej@redhat.com> - 3.7.0-1
Dave Jones 53fa0ab
- Linux v3.7
Dave Jones 53fa0ab
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
###