commit d4bcf2abd85a8d69da9d3f3e4e5dc57c556bca61
OBS-URL: https://build.opensuse.org/package/show/Kernel:stable/kernel-source?expand=0&rev=546
This commit is contained in:
parent
4250b75f6f
commit
8236c75d57
20
_constraints
20
_constraints
@ -4,10 +4,9 @@
|
||||
<conditions>
|
||||
<package>kernel-debug</package>
|
||||
<package>kernel-default</package>
|
||||
<package>kernel-ec2</package>
|
||||
<package>kernel-lpae</package>
|
||||
<package>kernel-pae</package>
|
||||
<package>kernel-vanilla</package>
|
||||
<package>kernel-xen</package>
|
||||
<package>kernel-zfcpdump</package>
|
||||
</conditions>
|
||||
<hardware>
|
||||
<disk>
|
||||
@ -21,10 +20,9 @@
|
||||
<arch>s390x</arch>
|
||||
<package>kernel-debug</package>
|
||||
<package>kernel-default</package>
|
||||
<package>kernel-ec2</package>
|
||||
<package>kernel-lpae</package>
|
||||
<package>kernel-pae</package>
|
||||
<package>kernel-vanilla</package>
|
||||
<package>kernel-xen</package>
|
||||
<package>kernel-zfcpdump</package>
|
||||
</conditions>
|
||||
<hardware>
|
||||
<disk>
|
||||
@ -39,10 +37,9 @@
|
||||
<arch>x86_64</arch>
|
||||
<package>kernel-debug</package>
|
||||
<package>kernel-default</package>
|
||||
<package>kernel-ec2</package>
|
||||
<package>kernel-lpae</package>
|
||||
<package>kernel-pae</package>
|
||||
<package>kernel-vanilla</package>
|
||||
<package>kernel-xen</package>
|
||||
<package>kernel-zfcpdump</package>
|
||||
</conditions>
|
||||
<hardware>
|
||||
<processors>8</processors>
|
||||
@ -56,10 +53,9 @@
|
||||
<arch>ppc64le</arch>
|
||||
<package>kernel-debug</package>
|
||||
<package>kernel-default</package>
|
||||
<package>kernel-ec2</package>
|
||||
<package>kernel-lpae</package>
|
||||
<package>kernel-pae</package>
|
||||
<package>kernel-vanilla</package>
|
||||
<package>kernel-xen</package>
|
||||
<package>kernel-zfcpdump</package>
|
||||
</conditions>
|
||||
<hardware>
|
||||
<processors>4</processors>
|
||||
|
@ -1,3 +1,21 @@
|
||||
-------------------------------------------------------------------
|
||||
Fri Sep 25 20:35:38 UTC 2015 - mmarek@suse.com
|
||||
|
||||
- Drop the -desktop flavors and merge these settings back to
|
||||
i386/pae and x86_64/default, respectively:
|
||||
- CONFIG_PREEMPT=y
|
||||
- vm.dirty_ratio=20
|
||||
The builtin driver choices of the desktop configs were discarded
|
||||
and CONFIG_HZ is 250 (fate#319416).
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 13 14:58:32 CET 2015 - jdelvare@suse.de
|
||||
|
||||
- On x86 and ppc*:
|
||||
- CONFIG_I2C_SLAVE=n
|
||||
There is currently no known use case for this feature on these
|
||||
architectures, and it has a small build time and size cost.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri May 23 10:04:27 UTC 2014 - ddiss@suse.com
|
||||
|
||||
@ -9,13 +27,6 @@ Fri May 23 10:04:27 UTC 2014 - ddiss@suse.com
|
||||
(fate#317480).
|
||||
- CONFIG_CIFS_SMB2=y
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue May 20 08:30:56 CEST 2014 - jdelvare@suse.de
|
||||
|
||||
- drbd will be shipped as a KMP in SLE12 HA only (not SLES nor
|
||||
SLED).
|
||||
- CONFIG_BLK_DEV_DRBD=n
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Mar 6 10:48:07 CET 2014 - jdelvare@suse.de
|
||||
|
||||
@ -28,20 +39,7 @@ Thu Mar 6 10:48:07 CET 2014 - jdelvare@suse.de
|
||||
- CONFIG_THERMAL=y
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Mar 4 11:14:43 CET 2014 - jdelvare@suse.de
|
||||
|
||||
- The core leds module is small (14 kB on x86_64) and many drivers
|
||||
depend on it or even select it, in particular laptop-specific
|
||||
drivers and wireless network drivers. So the core leds module
|
||||
will end up being loaded on most laptop systems, where boot time
|
||||
matters. On top of that, different architectures have different
|
||||
dependencies, some of them requiring that the core leds module is
|
||||
built-in. So the easiest way forward is to just keep the core
|
||||
leds module built into the kernel on all architectures.
|
||||
- CONFIG_LEDS_CLASS=y
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Fri Feb 28 10:17:34 CET 2014 - jdelvare@suse.de
|
||||
Fri Feb 28 18:38:01 CET 2014 - jdelvare@suse.de
|
||||
|
||||
- The msr driver creates /dev/cpu/*/msr through which you can poke
|
||||
at all the MSRs if you have CAP_SYS_RAWIO. We prefer to be able
|
||||
@ -49,13 +47,21 @@ Fri Feb 28 10:17:34 CET 2014 - jdelvare@suse.de
|
||||
- CONFIG_X86_MSR=m
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jan 9 14:48:09 CET 2014 - jdelvare@suse.de
|
||||
Tue Feb 25 11:44:55 CET 2014 - jdelvare@suse.de
|
||||
|
||||
- systemd requires autofs, so autofs4.ko will always be loaded on
|
||||
boot. For performance reasons, it makes sense to build it into
|
||||
the kernel (bnc#863771).
|
||||
- CONFIG_AUTOFS4_FS=y
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Jan 9 14:38:52 CET 2014 - jdelvare@suse.de
|
||||
|
||||
- Forcing module unloading can't lead to anything good. If
|
||||
reference counting is wrong then it should be fixed. If the
|
||||
reference count is right and a regular (unforced) unloading
|
||||
doesn't work, then a forced unloading can only lead to chaos and
|
||||
ultimately a kernel crash (bnc#854171).
|
||||
ultimately a kernel crash.
|
||||
- CONFIG_MODULE_FORCE_UNLOAD=n
|
||||
|
||||
-------------------------------------------------------------------
|
||||
|
19
config.conf
19
config.conf
@ -8,18 +8,31 @@
|
||||
# kernel-binary and kernel-source rely on this
|
||||
#
|
||||
|
||||
+i386 i386/default
|
||||
+i386 i386/pae
|
||||
+i386 -syms i386/debug
|
||||
+i386 i386/vanilla
|
||||
|
||||
+x86_64 x86_64/default
|
||||
+x86_64 x86_64/xen
|
||||
+x86_64 -syms x86_64/ec2
|
||||
+x86_64 -syms x86_64/debug
|
||||
+x86_64 x86_64/vanilla
|
||||
|
||||
+ppc64 ppc64/default
|
||||
+ppc64 -syms ppc64/debug
|
||||
+ppc64 ppc64/vanilla
|
||||
|
||||
+ppc64le ppc64le/default
|
||||
+ppc64le -syms ppc64le/debug
|
||||
+ppc64le ppc64le/vanilla
|
||||
|
||||
# ARM architectures
|
||||
+armv6hl armv6hl/default
|
||||
+armv6hl armv6hl/vanilla
|
||||
+armv7hl armv7hl/default
|
||||
+armv7hl armv7hl/vanilla
|
||||
+armv7hl armv7hl/lpae
|
||||
+arm64 arm64/default
|
||||
+arm64 arm64/vanilla
|
||||
|
||||
+s390x s390x/default
|
||||
+s390x s390x/vanilla
|
||||
+s390x -syms s390x/zfcpdump
|
||||
|
@ -1,7 +1,10 @@
|
||||
# The version of the main tarball to use
|
||||
SRCVERSION=3.12
|
||||
SRCVERSION=4.6
|
||||
# variant of the kernel-source package, either empty or "-rt"
|
||||
VARIANT=
|
||||
# buildservice projects to build the kernel against
|
||||
OBS_PROJECT=SUSE:SLE-12:Update
|
||||
IBS_PROJECT=SUSE:SLE-12:Update
|
||||
OBS_PROJECT=openSUSE:Factory
|
||||
OBS_PROJECT_ARM=openSUSE:Factory:ARM
|
||||
OBS_PROJECT_PPC=openSUSE:Factory:PowerPC
|
||||
IBS_PROJECT=SUSE:Factory:Head
|
||||
IBS_PROJECT_ARM=Devel:ARM:Factory
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d569fb589b6c9109c29e39330db12aca305d4e3fc854d0fad31236e33e2700f7
|
||||
size 88678
|
||||
oid sha256:3316d6c430f31f9c14043e72ba4e2a6dbbbe2057be2d15630b5dec0f60816047
|
||||
size 231204
|
||||
|
45
find-requires
Normal file
45
find-requires
Normal file
@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Generate dependencies for KMPs defined in supported.conf. We look at each
|
||||
# modules 'depends' field in modinfo and use the $name-kmp-modules lists
|
||||
# in builddir to map dependencies to package names. We do it this way instead
|
||||
# of relying on the ksym() dependencies, because KMPs built from the kernel
|
||||
# spec file are not shared among kernel versions.
|
||||
|
||||
package_name=$1
|
||||
version_release=$2
|
||||
builddir=$3
|
||||
|
||||
trap 'rm -f "$filelist"' EXIT
|
||||
filelist=$(mktemp -t ${0##*/}.XXXXXXXXXX)
|
||||
cat >"$filelist"
|
||||
|
||||
# is this module part of any KMP?
|
||||
in_kmp()
|
||||
{
|
||||
local mod=${1//[-_]/[-_]} res
|
||||
|
||||
for f in "$builddir"/*-kmp-modules; do
|
||||
if grep -q "/$mod\$" "$f"; then
|
||||
res=${f##*/}
|
||||
echo "${res%-modules}"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
grep '\.ko$' "$filelist" | while read f; do
|
||||
mod=${f##*/}
|
||||
kmp=$(in_kmp "$mod")
|
||||
if test -z "$kmp"; then
|
||||
continue
|
||||
fi
|
||||
for dep in $(IFS=,; set -- $(/sbin/modinfo -F depends "$f"); echo $*); do
|
||||
kmp2=$(in_kmp "$dep.ko")
|
||||
if test -n "$kmp2" -a "$kmp2" != "$kmp"; then
|
||||
# Needs another KMP
|
||||
echo "$kmp2-${package_name#kernel-} = $version_release"
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
/usr/lib/rpm/find-requires "$package_name" <"$filelist"
|
BIN
kabi.tar.bz2
(Stored with Git LFS)
BIN
kabi.tar.bz2
(Stored with Git LFS)
Binary file not shown.
@ -28,7 +28,6 @@
|
||||
|
||||
%define build_flavor @FLAVOR@
|
||||
%define build_default ("%build_flavor" == "default")
|
||||
%define build_xen ("%build_flavor" == "xen" || "%build_flavor" == "ec2")
|
||||
%define build_vanilla ("%build_flavor" == "vanilla")
|
||||
|
||||
%if ! %build_vanilla
|
||||
@ -80,6 +79,8 @@ BuildRequires: modutils
|
||||
# Used to sign the kernel in the buildservice
|
||||
BuildRequires: openssl
|
||||
BuildRequires: pesign-obs-integration
|
||||
# for objtool
|
||||
BuildRequires: libelf-devel
|
||||
Provides: %name = %version-%source_rel
|
||||
# bnc#901925
|
||||
Provides: %name-%version-%source_rel
|
||||
@ -135,9 +136,6 @@ BuildRequires: dwarfextract
|
||||
%ifarch %arm
|
||||
BuildRequires: u-boot-tools
|
||||
%endif
|
||||
%if %build_xen
|
||||
#!BuildIgnore: xen
|
||||
%endif
|
||||
|
||||
Obsoletes: microcode_ctl
|
||||
|
||||
@ -154,6 +152,9 @@ Conflicts: udev < 118
|
||||
Conflicts: lvm2 < 2.02.33
|
||||
# Interface to hv_kvp_daemon changed
|
||||
Conflicts: hyper-v < 4
|
||||
%ifarch %ix86
|
||||
Conflicts: libc.so.6()(64bit)
|
||||
%endif
|
||||
Provides: kernel = %version-%source_rel
|
||||
@PROVIDES_OBSOLETES@
|
||||
@PROVIDES_OBSOLETES_BASE@
|
||||
@ -162,6 +163,16 @@ Provides: kernel = %version-%source_rel
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
ExclusiveArch: @ARCHS@
|
||||
%define kmp_target_cpu %_target_cpu
|
||||
%ifarch %ix86
|
||||
# Only i386/default supports i586, mark other flavors' packages as i686
|
||||
%if ! %build_default
|
||||
BuildArch: i686
|
||||
# KMPs are always built as i586, because rpm does not allow to build
|
||||
# subpackages for different architectures. Therefore, we change the
|
||||
# /usr/src/linux-obj/<arch> symlink to i586.
|
||||
%define kmp_target_cpu i586
|
||||
%endif
|
||||
%endif
|
||||
|
||||
# These files are found in the kernel-source package:
|
||||
@NOSOURCE@
|
||||
@ -214,10 +225,17 @@ Provides: ath3k-firmware = 1.0
|
||||
%obsolete_kmp compat-wireless 3.12
|
||||
%obsolete_kmp rts5229 1.08
|
||||
%obsolete_kmp rts_pstor 1.11
|
||||
# sle12-sp1 / Leap 42.1
|
||||
%obsolete_kmp xen 4.6.1
|
||||
%obsolete_kmp compat-wireless 4.4
|
||||
|
||||
# Provide the exported symbols as "ksym(symbol) = hash"
|
||||
%define _use_internal_dependency_generator 0
|
||||
%define __find_provides %_sourcedir/find-provides %name
|
||||
|
||||
# Generate dependencies for KMPs defined in supported.conf
|
||||
%define __find_requires %_sourcedir/find-requires %name %version-%release %my_builddir
|
||||
|
||||
# Will modules not listed in supported.conf abort the kernel build (0/1)?
|
||||
%define supported_modules_check 0
|
||||
|
||||
@ -247,15 +265,11 @@ mkdir -p %kernel_build_dir
|
||||
# Generate a list of modules with their support status marking
|
||||
%_sourcedir/guards --list --with-guards <%_sourcedir/supported.conf | \
|
||||
awk '
|
||||
/^\+(base|yes) / {
|
||||
print $(NF);
|
||||
next;
|
||||
}
|
||||
/^\+external / {
|
||||
/\+external / {
|
||||
print $(NF) " external";
|
||||
next;
|
||||
}
|
||||
/^[-+]/ {
|
||||
/^-/ {
|
||||
print $(NF) " no";
|
||||
next;
|
||||
}
|
||||
@ -263,8 +277,11 @@ awk '
|
||||
print $(NF);
|
||||
}
|
||||
' >%kernel_build_dir/Module.supported
|
||||
%_sourcedir/guards --default=0 base < %_sourcedir/supported.conf | \
|
||||
sed 's,.*/,,; s,\.ko$,,' | sort -u >%kernel_build_dir/Module.base
|
||||
for package in base @KMPS@; do
|
||||
%_sourcedir/guards --default=0 "$package" \
|
||||
<%_sourcedir/supported.conf | sed 's,.*/,,; s,\.ko$,,' | \
|
||||
sort -u >%kernel_build_dir/Module."$package"
|
||||
done
|
||||
|
||||
cd linux-%srcversion
|
||||
|
||||
@ -295,7 +312,17 @@ if [ -f %_sourcedir/localversion ] ; then
|
||||
cat %_sourcedir/localversion > localversion
|
||||
fi
|
||||
|
||||
vanilla_base="default"
|
||||
%ifarch %ix86
|
||||
vanilla_base="pae"
|
||||
%endif
|
||||
if ! grep -q CONFIG_MMU= "%my_builddir/config/%cpu_arch_flavor"; then
|
||||
cp "%my_builddir/config/%cpu_arch/$vanilla_base" .config
|
||||
../scripts/kconfig/merge_config.sh -m .config \
|
||||
%my_builddir/config/%cpu_arch_flavor
|
||||
else
|
||||
cp %my_builddir/config/%cpu_arch_flavor .config
|
||||
fi
|
||||
if test -e %my_builddir/config.addon/%cpu_arch_flavor; then
|
||||
# FIXME: config.addon doesn't affect the %CONFIG_ macros defined at
|
||||
# the top of the specfile
|
||||
@ -333,7 +360,8 @@ fi
|
||||
make clean $MAKE_ARGS
|
||||
|
||||
rm -f source
|
||||
find . ! -type d -printf '%%P\n' > %my_builddir/obj-files
|
||||
find . ! -type d ! -name 'Module.base' ! -name 'Module.*-kmp' -printf '%%P\n' \
|
||||
> %my_builddir/obj-files
|
||||
|
||||
%build
|
||||
cd %kernel_build_dir
|
||||
@ -344,43 +372,21 @@ if test -e %my_builddir/kabi/%cpu_arch/symtypes-%build_flavor; then
|
||||
%_sourcedir/modversions --unpack . < $_
|
||||
fi
|
||||
|
||||
# copy optional module signing files:
|
||||
# *.x509, *.crt
|
||||
# - certificates with pubkeys used to verify module and firmware signatures
|
||||
# at runtime. *.crt files assumed to be in the PEM format.
|
||||
# signing_key.priv
|
||||
# - unencrypted private key used to sign modules and firmware during build
|
||||
# x509.genkey
|
||||
# - openssl req config to generate a new signing_key.{x509,priv} pair for the
|
||||
# build
|
||||
for f in %_sourcedir/*.x509 %_sourcedir/{signing_key.priv,x509.genkey}; do
|
||||
if test -e "$f"; then
|
||||
cp "$f" .
|
||||
fi
|
||||
done
|
||||
# copy module signing certificate(s)
|
||||
for f in %_sourcedir/*.crt; do
|
||||
if ! test -e "$f"; then
|
||||
continue
|
||||
fi
|
||||
out=${f##*/}
|
||||
out=${out%.crt}.x509
|
||||
openssl x509 -inform PEM -in "$f" -outform DER -out "$out"
|
||||
case "${f##*/}" in
|
||||
SLES-UEFI*.crt)
|
||||
../scripts/config --set-str CONFIG_MODULE_SIG_KEY "${f##*/}"
|
||||
cp "$f" .
|
||||
;;
|
||||
*)
|
||||
cat "$f" >>keyring.crt
|
||||
../scripts/config --set-str CONFIG_SYSTEM_TRUSTED_KEYS "keyring.crt"
|
||||
esac
|
||||
done
|
||||
# Convince kernel/Makefile not to generate a new keypair
|
||||
touch x509.genkey
|
||||
touch signing_key.x509
|
||||
%if %build_vanilla
|
||||
# workaround for the 3.12 vanilla kernel which does not have
|
||||
# f0e6d22 ("KEYS: Load *.x509 files into kernel keyring)
|
||||
# but supports an "extra_certificates" file instead
|
||||
for f in *.x509; do
|
||||
if test ! -e "$f" -o "$f" = "signing_key.x509"; then
|
||||
continue
|
||||
fi
|
||||
cat "$f" >>extra_certificates
|
||||
done
|
||||
%endif
|
||||
|
||||
|
||||
MAKE_ARGS="$MAKE_ARGS %{?_smp_mflags}"
|
||||
|
||||
@ -412,6 +418,11 @@ export BRP_PESIGN_FILES="*.ko"
|
||||
%if %CONFIG_EFI_STUB == "y"
|
||||
BRP_PESIGN_FILES="$BRP_PESIGN_FILES /boot/vmlinuz-%kernelrelease-%build_flavor"
|
||||
%endif
|
||||
%ifarch %ix86
|
||||
# XXX: do not sign on x86, as the repackaging changes kernel-pae
|
||||
# from i686 to i586
|
||||
BRP_PESIGN_FILES=""
|
||||
%endif
|
||||
|
||||
# get rid of /usr/lib/rpm/brp-strip-debug
|
||||
# strip removes too much from the vmlinux ELF binary
|
||||
@ -460,9 +471,6 @@ add_vmlinux()
|
||||
%ifarch %ix86 x86_64
|
||||
add_vmlinux --compressed
|
||||
image=bzImage
|
||||
%if %build_xen
|
||||
test -f arch/x86/boot/$image || image=vmlinuz
|
||||
%endif
|
||||
cp -p arch/x86/boot/$image %buildroot/boot/vmlinuz-%kernelrelease-%build_flavor
|
||||
image=vmlinuz
|
||||
%endif
|
||||
@ -520,12 +528,6 @@ if test %CONFIG_MODULE_SIG = "y"; then
|
||||
done
|
||||
fi
|
||||
|
||||
# Install the frontend driver selector file for xen/ec2
|
||||
%if %build_xen
|
||||
mkdir -p %buildroot/etc/modprobe.d
|
||||
cp %_sourcedir/modprobe-xen.conf %buildroot/etc/modprobe.d/50-xen.conf
|
||||
%endif
|
||||
|
||||
for sub in '-base' '' '-extra'; do
|
||||
case "$sub" in
|
||||
'-base' | '') base_package=1 ;;
|
||||
@ -563,7 +565,7 @@ for sub in '-base' '' '-extra'; do
|
||||
done
|
||||
done
|
||||
|
||||
%if %build_xen || %build_vanilla
|
||||
%if %build_vanilla
|
||||
# keep this -suffix list in sync with post.sh and postun.sh
|
||||
suffix=-%build_flavor
|
||||
%endif
|
||||
@ -655,7 +657,7 @@ if [ %CONFIG_MODULES = y ]; then
|
||||
%if %split_base
|
||||
%_sourcedir/split-modules -d %buildroot \
|
||||
-o %my_builddir \
|
||||
-b %kernel_build_dir/Module.base \
|
||||
-b %kernel_build_dir \
|
||||
%if %CONFIG_SUSE_KERNEL_SUPPORTED == "y"
|
||||
-e \
|
||||
%endif
|
||||
@ -666,18 +668,18 @@ if [ %CONFIG_MODULES = y ]; then
|
||||
cat %my_builddir/unsupported-modules >>%my_builddir/main-modules
|
||||
%endif
|
||||
|
||||
# The modules.dep file is sorted randomly which produces strange file
|
||||
# checksums. As the file is not included in the resulting RPM, it's
|
||||
# pointless to rely on its contents. Replacing by zeros to make the
|
||||
# checksums always the same for several builds of the same package.
|
||||
dd if=/dev/zero of=%buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep ibs=`stat -c%s %buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep` count=1
|
||||
|
||||
%else
|
||||
( cd %buildroot
|
||||
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
|
||||
) > %my_builddir/base-modules
|
||||
%endif
|
||||
|
||||
# The modules.dep file is sorted randomly which produces strange file
|
||||
# checksums. As the file is not included in the resulting RPM, it's
|
||||
# pointless to rely on its contents. Replacing by zeros to make the
|
||||
# checksums always the same for several builds of the same package.
|
||||
dd if=/dev/zero of=%buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep ibs=`stat -c%s %buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep` count=1
|
||||
|
||||
res=0
|
||||
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
|
||||
# check for kabi changes
|
||||
@ -784,26 +786,35 @@ done | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
||||
if test %CONFIG_MODULE_SIG = "y" -a -d etc/uefi/certs; then
|
||||
find etc/uefi/certs -type f -printf '/%%p\n'
|
||||
fi
|
||||
# optional per-kernel-release module config workarounds
|
||||
if test -d etc/modprobe.d; then
|
||||
find etc/modprobe.d -type f -printf '%%%%config(noreplace) /%%p\n'
|
||||
if test -d lib/firmware/%kernelrelease-%build_flavor; then
|
||||
%if %split_base
|
||||
echo "%%dir /lib/firmware/%kernelrelease-%build_flavor"
|
||||
cat %my_builddir/base-firmware
|
||||
%else
|
||||
echo "/lib/firmware/%kernelrelease-%build_flavor"
|
||||
%endif
|
||||
fi
|
||||
test -d lib/firmware/%kernelrelease-%build_flavor && \
|
||||
find lib/firmware/%kernelrelease-%build_flavor \
|
||||
-type d -o \
|
||||
-printf '/%%p\n'
|
||||
if [ -e .%_docdir/%name ]; then
|
||||
echo "%%doc %_docdir/%name"
|
||||
fi
|
||||
} | sort -u | add_dirs_to_filelist >%my_builddir/kernel-base.files
|
||||
|
||||
%if %split_base
|
||||
add_dirs_to_filelist %my_builddir/{kernel-base.files,main-modules} \
|
||||
> %my_builddir/kernel-main.files
|
||||
{
|
||||
add_dirs_to_filelist %my_builddir/{kernel-base.files,main-modules}
|
||||
if test -d %buildroot/lib/firmware/%kernelrelease-%build_flavor; then
|
||||
echo "/lib/firmware/%kernelrelease-%build_flavor"
|
||||
fi
|
||||
} > %my_builddir/kernel-main.files
|
||||
%endif
|
||||
%if %split_extra
|
||||
add_dirs_to_filelist %my_builddir/unsupported-modules > %my_builddir/kernel-extra.files
|
||||
%endif
|
||||
for f in %my_builddir/*-kmp-modules; do
|
||||
f2=${f%%-modules}.files
|
||||
add_dirs_to_filelist "$f" >"$f2"
|
||||
done
|
||||
|
||||
|
||||
# Hardlink duplicate files automatically (from package fdupes): It doesn't save
|
||||
# much, but it keeps rpmlint from breaking the package build. Note that we skip
|
||||
@ -838,6 +849,9 @@ Conflicts: %name = %version-%release
|
||||
@COMMON_DEPS@
|
||||
@PROVIDES_OBSOLETES_BASE@
|
||||
%obsolete_rebuilds %name-base
|
||||
%ifarch %ix86
|
||||
Conflicts: libc.so.6()(64bit)
|
||||
%endif
|
||||
|
||||
%description base
|
||||
@DESCRIPTION@
|
||||
@ -875,6 +889,9 @@ Requires(post): mkinitrd
|
||||
@PROVIDES_OBSOLETES_EXTRA@
|
||||
%obsolete_rebuilds %name-extra
|
||||
Supplements: packageand(product(SUSE_SLED):%{name}_%_target_cpu)
|
||||
%ifarch %ix86
|
||||
Conflicts: libc.so.6()(64bit)
|
||||
%endif
|
||||
|
||||
%description extra
|
||||
@DESCRIPTION@
|
||||
@ -900,7 +917,7 @@ This package contains additional modules not supported by Novell.
|
||||
%if %CONFIG_KMSG_IDS == "y"
|
||||
|
||||
%package man
|
||||
Summary: The collection of man pages generated by the kmsg script.
|
||||
Summary: The collection of man pages generated by the kmsg script
|
||||
Group: System/Kernel
|
||||
|
||||
%description man
|
||||
@ -921,6 +938,9 @@ Provides: %name-devel = %version-%source_rel
|
||||
Provides: multiversion(kernel)
|
||||
%if ! %build_vanilla
|
||||
Requires: kernel-devel%variant = %version-%source_rel
|
||||
Recommends: make
|
||||
Recommends: gcc
|
||||
Recommends: perl
|
||||
Supplements: packageand(%name:kernel-devel%variant)
|
||||
%else
|
||||
Requires: kernel-source-vanilla = %version-%source_rel
|
||||
@ -956,4 +976,67 @@ kernel module packages) against the %build_flavor flavor of the kernel.
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if %CONFIG_MODULES == "y" && %CONFIG_SUSE_KERNEL_SUPPORTED == "y"
|
||||
%package kgraft
|
||||
Summary: Metapackage to pull in matching kgraft-patch package
|
||||
Group: System/Kernel
|
||||
Requires: kgraft-patch-%(echo %version-%source_rel | sed 'y/\./_/')-%build_flavor
|
||||
Provides: multiversion(kernel)
|
||||
|
||||
%description kgraft
|
||||
This is a metapackage that pulls in the matching kgraft-patch package for a
|
||||
given kernel version. The advantage of the metapackage is that its name is
|
||||
static, unlike the kgraft-patch-<kernel-version>-flavor package names.
|
||||
|
||||
%files kgraft
|
||||
# rpmlint complains about empty packages, so lets own something
|
||||
%defattr(-, root, root)
|
||||
%dir /lib/modules/%kernelrelease-%build_flavor
|
||||
%endif
|
||||
|
||||
%if %split_base
|
||||
# BEGIN KMP
|
||||
%package -n @KMP_NAME@-%build_flavor
|
||||
Summary: @KMP_SUMMARY@
|
||||
Group: System/Kernel
|
||||
Requires: %name = %version-%release
|
||||
Provides: multiversion(kernel)
|
||||
Provides: @KMP_NAME@ = %version-%release
|
||||
# tell weak-modules2 to ignore this package
|
||||
Provides: kmp_in_kernel
|
||||
Requires(post): suse-module-tools >= 12.4
|
||||
|
||||
%description -n @KMP_NAME@-%build_flavor
|
||||
@KMP_DESCRIPTION@
|
||||
|
||||
%post -n @KMP_NAME@-%build_flavor
|
||||
wm2=/usr/lib/module-init-tools/weak-modules2
|
||||
nvr=@KMP_NAME@-%build_flavor-%version-%release
|
||||
if test -x "$wm2"; then
|
||||
rpm -ql "$nvr" | INITRD_IN_POSTTRANS=1 /bin/bash -${-/e/} "$wm2" \
|
||||
--add-kernel-modules %kernelrelease-%build_flavor
|
||||
fi
|
||||
|
||||
%posttrans -n @KMP_NAME@-%build_flavor
|
||||
%{?regenerate_initrd_posttrans}
|
||||
|
||||
%preun -n @KMP_NAME@-%build_flavor
|
||||
nvr=@KMP_NAME@-%build_flavor-%version-%release
|
||||
rpm -ql "$nvr" | grep '\.ko$' > "/var/run/rpm-$nvr-modules"
|
||||
|
||||
%postun -n @KMP_NAME@-%build_flavor
|
||||
wm2=/usr/lib/module-init-tools/weak-modules2
|
||||
nvr=@KMP_NAME@-%build_flavor-%version-%release
|
||||
if test -x "$wm2"; then
|
||||
/bin/bash -${-/e/} "$wm2" < "/var/run/rpm-$nvr-modules" \
|
||||
--remove-kernel-modules %kernelrelease-%build_flavor
|
||||
fi
|
||||
rm -f "/var/run/rpm-$nvr-modules"
|
||||
|
||||
%files -n @KMP_NAME@-%build_flavor -f @KMP_NAME@.files
|
||||
%defattr(-, root, root)
|
||||
|
||||
# END KMP
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
|
42549
kernel-debug.changes
42549
kernel-debug.changes
File diff suppressed because it is too large
Load Diff
@ -19,8 +19,8 @@
|
||||
# This makes the OBS store the project cert as %_sourcedir/_projectcert.crt
|
||||
# needssslcertforbuild
|
||||
|
||||
%define srcversion 3.12
|
||||
%define patchversion 3.12.61
|
||||
%define srcversion 4.6
|
||||
%define patchversion 4.6.3
|
||||
%define variant %{nil}
|
||||
%define vanilla_only 0
|
||||
|
||||
@ -28,7 +28,6 @@
|
||||
|
||||
%define build_flavor debug
|
||||
%define build_default ("%build_flavor" == "default")
|
||||
%define build_xen ("%build_flavor" == "xen" || "%build_flavor" == "ec2")
|
||||
%define build_vanilla ("%build_flavor" == "vanilla")
|
||||
|
||||
%if ! %build_vanilla
|
||||
@ -40,7 +39,7 @@
|
||||
%define rpm_install_dir %buildroot%obj_install_dir
|
||||
%define kernel_build_dir %my_builddir/linux-%srcversion/linux-obj
|
||||
|
||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,find-provides,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh})
|
||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,find-provides,find-requires,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh})
|
||||
|
||||
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
|
||||
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
||||
@ -62,9 +61,9 @@ Name: kernel-debug
|
||||
Summary: A Debug Version of the Kernel
|
||||
License: GPL-2.0
|
||||
Group: System/Kernel
|
||||
Version: 3.12.61
|
||||
Version: 4.6.3
|
||||
%if 0%{?is_kotd}
|
||||
Release: <RELEASE>.g1c2aaa5
|
||||
Release: <RELEASE>.gd4bcf2a
|
||||
%else
|
||||
Release: 0
|
||||
%endif
|
||||
@ -80,6 +79,8 @@ BuildRequires: modutils
|
||||
# Used to sign the kernel in the buildservice
|
||||
BuildRequires: openssl
|
||||
BuildRequires: pesign-obs-integration
|
||||
# for objtool
|
||||
BuildRequires: libelf-devel
|
||||
Provides: %name = %version-%source_rel
|
||||
# bnc#901925
|
||||
Provides: %name-%version-%source_rel
|
||||
@ -135,9 +136,6 @@ BuildRequires: dwarfextract
|
||||
%ifarch %arm
|
||||
BuildRequires: u-boot-tools
|
||||
%endif
|
||||
%if %build_xen
|
||||
#!BuildIgnore: xen
|
||||
%endif
|
||||
|
||||
Obsoletes: microcode_ctl
|
||||
|
||||
@ -154,11 +152,20 @@ Conflicts: udev < 118
|
||||
Conflicts: lvm2 < 2.02.33
|
||||
# Interface to hv_kvp_daemon changed
|
||||
Conflicts: hyper-v < 4
|
||||
%ifarch %ix86
|
||||
Conflicts: libc.so.6()(64bit)
|
||||
%endif
|
||||
Provides: kernel = %version-%source_rel
|
||||
|
||||
|
||||
%ifarch ppc64
|
||||
Provides: kernel-kdump = 2.6.28
|
||||
Obsoletes: kernel-kdump <= 2.6.28
|
||||
%endif
|
||||
%ifarch ppc64
|
||||
Provides: kernel-kdump-base = 2.6.28
|
||||
Obsoletes: kernel-kdump-base <= 2.6.28
|
||||
%endif
|
||||
%obsolete_rebuilds %name
|
||||
Source0: http://www.kernel.org/pub/linux/kernel/v3.x/linux-%srcversion.tar.xz
|
||||
Source0: http://www.kernel.org/pub/linux/kernel/v4.x/linux-%srcversion.tar.xz
|
||||
Source2: source-post.sh
|
||||
Source3: kernel-source.rpmlintrc
|
||||
Source8: devel-pre.sh
|
||||
@ -180,8 +187,9 @@ Source38: README.KSYMS
|
||||
Source39: config-options.changes.txt
|
||||
Source40: source-timestamp
|
||||
Source44: find-provides
|
||||
Source45: split-modules
|
||||
Source46: modversions
|
||||
Source45: find-requires
|
||||
Source46: split-modules
|
||||
Source47: modversions
|
||||
Source48: macros.kernel-source
|
||||
Source49: kernel-module-subpackage
|
||||
Source50: kabi.pl
|
||||
@ -205,7 +213,6 @@ Source69: try-disable-staging-driver
|
||||
Source70: kernel-obs-build.spec.in
|
||||
Source71: kernel-obs-qa.spec.in
|
||||
Source72: compress-vmlinux.sh
|
||||
Source90: SLES-UEFI-SIGN-Certificate-2048.crt
|
||||
Source100: config.tar.bz2
|
||||
Source101: config.addon.tar.bz2
|
||||
Source102: patches.arch.tar.bz2
|
||||
@ -222,10 +229,19 @@ Source112: patches.trace.tar.bz2
|
||||
Source113: patches.kabi.tar.bz2
|
||||
Source120: kabi.tar.bz2
|
||||
Source121: sysctl.tar.bz2
|
||||
Source122: modprobe-xen.conf
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
ExclusiveArch: ppc64le x86_64
|
||||
ExclusiveArch: %ix86 ppc64 ppc64le x86_64
|
||||
%define kmp_target_cpu %_target_cpu
|
||||
%ifarch %ix86
|
||||
# Only i386/default supports i586, mark other flavors' packages as i686
|
||||
%if ! %build_default
|
||||
BuildArch: i686
|
||||
# KMPs are always built as i586, because rpm does not allow to build
|
||||
# subpackages for different architectures. Therefore, we change the
|
||||
# /usr/src/linux-obj/<arch> symlink to i586.
|
||||
%define kmp_target_cpu i586
|
||||
%endif
|
||||
%endif
|
||||
|
||||
# These files are found in the kernel-source package:
|
||||
NoSource: 0
|
||||
@ -252,6 +268,7 @@ NoSource: 40
|
||||
NoSource: 44
|
||||
NoSource: 45
|
||||
NoSource: 46
|
||||
NoSource: 47
|
||||
NoSource: 48
|
||||
NoSource: 49
|
||||
NoSource: 50
|
||||
@ -275,7 +292,6 @@ NoSource: 69
|
||||
NoSource: 70
|
||||
NoSource: 71
|
||||
NoSource: 72
|
||||
NoSource: 90
|
||||
NoSource: 100
|
||||
NoSource: 101
|
||||
NoSource: 102
|
||||
@ -292,7 +308,6 @@ NoSource: 112
|
||||
NoSource: 113
|
||||
NoSource: 120
|
||||
NoSource: 121
|
||||
NoSource: 122
|
||||
|
||||
# The following KMPs have been integrated into the kernel package,
|
||||
# grouped by the last product that contained them.
|
||||
@ -342,10 +357,17 @@ Provides: ath3k-firmware = 1.0
|
||||
%obsolete_kmp compat-wireless 3.12
|
||||
%obsolete_kmp rts5229 1.08
|
||||
%obsolete_kmp rts_pstor 1.11
|
||||
# sle12-sp1 / Leap 42.1
|
||||
%obsolete_kmp xen 4.6.1
|
||||
%obsolete_kmp compat-wireless 4.4
|
||||
|
||||
# Provide the exported symbols as "ksym(symbol) = hash"
|
||||
%define _use_internal_dependency_generator 0
|
||||
%define __find_provides %_sourcedir/find-provides %name
|
||||
|
||||
# Generate dependencies for KMPs defined in supported.conf
|
||||
%define __find_requires %_sourcedir/find-requires %name %version-%release %my_builddir
|
||||
|
||||
# Will modules not listed in supported.conf abort the kernel build (0/1)?
|
||||
%define supported_modules_check 0
|
||||
|
||||
@ -376,15 +398,11 @@ mkdir -p %kernel_build_dir
|
||||
# Generate a list of modules with their support status marking
|
||||
%_sourcedir/guards --list --with-guards <%_sourcedir/supported.conf | \
|
||||
awk '
|
||||
/^\+(base|yes) / {
|
||||
print $(NF);
|
||||
next;
|
||||
}
|
||||
/^\+external / {
|
||||
/\+external / {
|
||||
print $(NF) " external";
|
||||
next;
|
||||
}
|
||||
/^[-+]/ {
|
||||
/^-/ {
|
||||
print $(NF) " no";
|
||||
next;
|
||||
}
|
||||
@ -392,8 +410,11 @@ awk '
|
||||
print $(NF);
|
||||
}
|
||||
' >%kernel_build_dir/Module.supported
|
||||
%_sourcedir/guards --default=0 base < %_sourcedir/supported.conf | \
|
||||
sed 's,.*/,,; s,\.ko$,,' | sort -u >%kernel_build_dir/Module.base
|
||||
for package in base ; do
|
||||
%_sourcedir/guards --default=0 "$package" \
|
||||
<%_sourcedir/supported.conf | sed 's,.*/,,; s,\.ko$,,' | \
|
||||
sort -u >%kernel_build_dir/Module."$package"
|
||||
done
|
||||
|
||||
cd linux-%srcversion
|
||||
|
||||
@ -424,7 +445,17 @@ if [ -f %_sourcedir/localversion ] ; then
|
||||
cat %_sourcedir/localversion > localversion
|
||||
fi
|
||||
|
||||
vanilla_base="default"
|
||||
%ifarch %ix86
|
||||
vanilla_base="pae"
|
||||
%endif
|
||||
if ! grep -q CONFIG_MMU= "%my_builddir/config/%cpu_arch_flavor"; then
|
||||
cp "%my_builddir/config/%cpu_arch/$vanilla_base" .config
|
||||
../scripts/kconfig/merge_config.sh -m .config \
|
||||
%my_builddir/config/%cpu_arch_flavor
|
||||
else
|
||||
cp %my_builddir/config/%cpu_arch_flavor .config
|
||||
fi
|
||||
if test -e %my_builddir/config.addon/%cpu_arch_flavor; then
|
||||
# FIXME: config.addon doesn't affect the %CONFIG_ macros defined at
|
||||
# the top of the specfile
|
||||
@ -462,7 +493,8 @@ fi
|
||||
make clean $MAKE_ARGS
|
||||
|
||||
rm -f source
|
||||
find . ! -type d -printf '%%P\n' > %my_builddir/obj-files
|
||||
find . ! -type d ! -name 'Module.base' ! -name 'Module.*-kmp' -printf '%%P\n' \
|
||||
> %my_builddir/obj-files
|
||||
|
||||
%build
|
||||
cd %kernel_build_dir
|
||||
@ -473,43 +505,21 @@ if test -e %my_builddir/kabi/%cpu_arch/symtypes-%build_flavor; then
|
||||
%_sourcedir/modversions --unpack . < $_
|
||||
fi
|
||||
|
||||
# copy optional module signing files:
|
||||
# *.x509, *.crt
|
||||
# - certificates with pubkeys used to verify module and firmware signatures
|
||||
# at runtime. *.crt files assumed to be in the PEM format.
|
||||
# signing_key.priv
|
||||
# - unencrypted private key used to sign modules and firmware during build
|
||||
# x509.genkey
|
||||
# - openssl req config to generate a new signing_key.{x509,priv} pair for the
|
||||
# build
|
||||
for f in %_sourcedir/*.x509 %_sourcedir/{signing_key.priv,x509.genkey}; do
|
||||
if test -e "$f"; then
|
||||
cp "$f" .
|
||||
fi
|
||||
done
|
||||
# copy module signing certificate(s)
|
||||
for f in %_sourcedir/*.crt; do
|
||||
if ! test -e "$f"; then
|
||||
continue
|
||||
fi
|
||||
out=${f##*/}
|
||||
out=${out%.crt}.x509
|
||||
openssl x509 -inform PEM -in "$f" -outform DER -out "$out"
|
||||
case "${f##*/}" in
|
||||
SLES-UEFI*.crt)
|
||||
../scripts/config --set-str CONFIG_MODULE_SIG_KEY "${f##*/}"
|
||||
cp "$f" .
|
||||
;;
|
||||
*)
|
||||
cat "$f" >>keyring.crt
|
||||
../scripts/config --set-str CONFIG_SYSTEM_TRUSTED_KEYS "keyring.crt"
|
||||
esac
|
||||
done
|
||||
# Convince kernel/Makefile not to generate a new keypair
|
||||
touch x509.genkey
|
||||
touch signing_key.x509
|
||||
%if %build_vanilla
|
||||
# workaround for the 3.12 vanilla kernel which does not have
|
||||
# f0e6d22 ("KEYS: Load *.x509 files into kernel keyring)
|
||||
# but supports an "extra_certificates" file instead
|
||||
for f in *.x509; do
|
||||
if test ! -e "$f" -o "$f" = "signing_key.x509"; then
|
||||
continue
|
||||
fi
|
||||
cat "$f" >>extra_certificates
|
||||
done
|
||||
%endif
|
||||
|
||||
|
||||
MAKE_ARGS="$MAKE_ARGS %{?_smp_mflags}"
|
||||
|
||||
@ -541,6 +551,11 @@ export BRP_PESIGN_FILES="*.ko"
|
||||
%if %CONFIG_EFI_STUB == "y"
|
||||
BRP_PESIGN_FILES="$BRP_PESIGN_FILES /boot/vmlinuz-%kernelrelease-%build_flavor"
|
||||
%endif
|
||||
%ifarch %ix86
|
||||
# XXX: do not sign on x86, as the repackaging changes kernel-pae
|
||||
# from i686 to i586
|
||||
BRP_PESIGN_FILES=""
|
||||
%endif
|
||||
|
||||
# get rid of /usr/lib/rpm/brp-strip-debug
|
||||
# strip removes too much from the vmlinux ELF binary
|
||||
@ -589,9 +604,6 @@ add_vmlinux()
|
||||
%ifarch %ix86 x86_64
|
||||
add_vmlinux --compressed
|
||||
image=bzImage
|
||||
%if %build_xen
|
||||
test -f arch/x86/boot/$image || image=vmlinuz
|
||||
%endif
|
||||
cp -p arch/x86/boot/$image %buildroot/boot/vmlinuz-%kernelrelease-%build_flavor
|
||||
image=vmlinuz
|
||||
%endif
|
||||
@ -649,12 +661,6 @@ if test %CONFIG_MODULE_SIG = "y"; then
|
||||
done
|
||||
fi
|
||||
|
||||
# Install the frontend driver selector file for xen/ec2
|
||||
%if %build_xen
|
||||
mkdir -p %buildroot/etc/modprobe.d
|
||||
cp %_sourcedir/modprobe-xen.conf %buildroot/etc/modprobe.d/50-xen.conf
|
||||
%endif
|
||||
|
||||
for sub in '-base' '' '-extra'; do
|
||||
case "$sub" in
|
||||
'-base' | '') base_package=1 ;;
|
||||
@ -692,7 +698,7 @@ for sub in '-base' '' '-extra'; do
|
||||
done
|
||||
done
|
||||
|
||||
%if %build_xen || %build_vanilla
|
||||
%if %build_vanilla
|
||||
# keep this -suffix list in sync with post.sh and postun.sh
|
||||
suffix=-%build_flavor
|
||||
%endif
|
||||
@ -784,7 +790,7 @@ if [ %CONFIG_MODULES = y ]; then
|
||||
%if %split_base
|
||||
%_sourcedir/split-modules -d %buildroot \
|
||||
-o %my_builddir \
|
||||
-b %kernel_build_dir/Module.base \
|
||||
-b %kernel_build_dir \
|
||||
%if %CONFIG_SUSE_KERNEL_SUPPORTED == "y"
|
||||
-e \
|
||||
%endif
|
||||
@ -795,18 +801,18 @@ if [ %CONFIG_MODULES = y ]; then
|
||||
cat %my_builddir/unsupported-modules >>%my_builddir/main-modules
|
||||
%endif
|
||||
|
||||
# The modules.dep file is sorted randomly which produces strange file
|
||||
# checksums. As the file is not included in the resulting RPM, it's
|
||||
# pointless to rely on its contents. Replacing by zeros to make the
|
||||
# checksums always the same for several builds of the same package.
|
||||
dd if=/dev/zero of=%buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep ibs=`stat -c%s %buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep` count=1
|
||||
|
||||
%else
|
||||
( cd %buildroot
|
||||
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
|
||||
) > %my_builddir/base-modules
|
||||
%endif
|
||||
|
||||
# The modules.dep file is sorted randomly which produces strange file
|
||||
# checksums. As the file is not included in the resulting RPM, it's
|
||||
# pointless to rely on its contents. Replacing by zeros to make the
|
||||
# checksums always the same for several builds of the same package.
|
||||
dd if=/dev/zero of=%buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep ibs=`stat -c%s %buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep` count=1
|
||||
|
||||
res=0
|
||||
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
|
||||
# check for kabi changes
|
||||
@ -913,26 +919,35 @@ done | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
||||
if test %CONFIG_MODULE_SIG = "y" -a -d etc/uefi/certs; then
|
||||
find etc/uefi/certs -type f -printf '/%%p\n'
|
||||
fi
|
||||
# optional per-kernel-release module config workarounds
|
||||
if test -d etc/modprobe.d; then
|
||||
find etc/modprobe.d -type f -printf '%%%%config(noreplace) /%%p\n'
|
||||
if test -d lib/firmware/%kernelrelease-%build_flavor; then
|
||||
%if %split_base
|
||||
echo "%%dir /lib/firmware/%kernelrelease-%build_flavor"
|
||||
cat %my_builddir/base-firmware
|
||||
%else
|
||||
echo "/lib/firmware/%kernelrelease-%build_flavor"
|
||||
%endif
|
||||
fi
|
||||
test -d lib/firmware/%kernelrelease-%build_flavor && \
|
||||
find lib/firmware/%kernelrelease-%build_flavor \
|
||||
-type d -o \
|
||||
-printf '/%%p\n'
|
||||
if [ -e .%_docdir/%name ]; then
|
||||
echo "%%doc %_docdir/%name"
|
||||
fi
|
||||
} | sort -u | add_dirs_to_filelist >%my_builddir/kernel-base.files
|
||||
|
||||
%if %split_base
|
||||
add_dirs_to_filelist %my_builddir/{kernel-base.files,main-modules} \
|
||||
> %my_builddir/kernel-main.files
|
||||
{
|
||||
add_dirs_to_filelist %my_builddir/{kernel-base.files,main-modules}
|
||||
if test -d %buildroot/lib/firmware/%kernelrelease-%build_flavor; then
|
||||
echo "/lib/firmware/%kernelrelease-%build_flavor"
|
||||
fi
|
||||
} > %my_builddir/kernel-main.files
|
||||
%endif
|
||||
%if %split_extra
|
||||
add_dirs_to_filelist %my_builddir/unsupported-modules > %my_builddir/kernel-extra.files
|
||||
%endif
|
||||
for f in %my_builddir/*-kmp-modules; do
|
||||
f2=${f%%-modules}.files
|
||||
add_dirs_to_filelist "$f" >"$f2"
|
||||
done
|
||||
|
||||
|
||||
# Hardlink duplicate files automatically (from package fdupes): It doesn't save
|
||||
# much, but it keeps rpmlint from breaking the package build. Note that we skip
|
||||
@ -987,8 +1002,14 @@ Requires(post): mkinitrd >= 2.7.1
|
||||
# the grub entry has correct title (bnc#757565)
|
||||
Requires(post): distribution-release
|
||||
|
||||
|
||||
%ifarch ppc64
|
||||
Provides: kernel-kdump-base = 2.6.28
|
||||
Obsoletes: kernel-kdump-base <= 2.6.28
|
||||
%endif
|
||||
%obsolete_rebuilds %name-base
|
||||
%ifarch %ix86
|
||||
Conflicts: libc.so.6()(64bit)
|
||||
%endif
|
||||
|
||||
%description base
|
||||
This kernel has several debug facilities enabled that hurt performance.
|
||||
@ -1024,9 +1045,15 @@ Requires(pre): coreutils awk
|
||||
Requires(post): modutils
|
||||
Requires(post): perl-Bootloader
|
||||
Requires(post): mkinitrd
|
||||
|
||||
%ifarch ppc64
|
||||
Provides: kernel-kdump-extra = 2.6.28
|
||||
Obsoletes: kernel-kdump-extra <= 2.6.28
|
||||
%endif
|
||||
%obsolete_rebuilds %name-extra
|
||||
Supplements: packageand(product(SUSE_SLED):%{name}_%_target_cpu)
|
||||
%ifarch %ix86
|
||||
Conflicts: libc.so.6()(64bit)
|
||||
%endif
|
||||
|
||||
%description extra
|
||||
This kernel has several debug facilities enabled that hurt performance.
|
||||
@ -1053,7 +1080,7 @@ This package contains additional modules not supported by Novell.
|
||||
%if %CONFIG_KMSG_IDS == "y"
|
||||
|
||||
%package man
|
||||
Summary: The collection of man pages generated by the kmsg script.
|
||||
Summary: The collection of man pages generated by the kmsg script
|
||||
Group: System/Kernel
|
||||
|
||||
%description man
|
||||
@ -1074,12 +1101,18 @@ Provides: %name-devel = %version-%source_rel
|
||||
Provides: multiversion(kernel)
|
||||
%if ! %build_vanilla
|
||||
Requires: kernel-devel%variant = %version-%source_rel
|
||||
Recommends: make
|
||||
Recommends: gcc
|
||||
Recommends: perl
|
||||
Supplements: packageand(%name:kernel-devel%variant)
|
||||
%else
|
||||
Requires: kernel-source-vanilla = %version-%source_rel
|
||||
Supplements: packageand(%name:kernel-source-vanilla)
|
||||
%endif
|
||||
|
||||
%ifarch ppc64
|
||||
Provides: kernel-kdump-devel = 2.6.28
|
||||
Obsoletes: kernel-kdump-devel <= 2.6.28
|
||||
%endif
|
||||
%obsolete_rebuilds %name-devel
|
||||
PreReq: coreutils
|
||||
|
||||
@ -1109,4 +1142,26 @@ kernel module packages) against the %build_flavor flavor of the kernel.
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if %CONFIG_MODULES == "y" && %CONFIG_SUSE_KERNEL_SUPPORTED == "y"
|
||||
%package kgraft
|
||||
Summary: Metapackage to pull in matching kgraft-patch package
|
||||
Group: System/Kernel
|
||||
Requires: kgraft-patch-%(echo %version-%source_rel | sed 'y/\./_/')-%build_flavor
|
||||
Provides: multiversion(kernel)
|
||||
|
||||
%description kgraft
|
||||
This is a metapackage that pulls in the matching kgraft-patch package for a
|
||||
given kernel version. The advantage of the metapackage is that its name is
|
||||
static, unlike the kgraft-patch-<kernel-version>-flavor package names.
|
||||
|
||||
%files kgraft
|
||||
# rpmlint complains about empty packages, so lets own something
|
||||
%defattr(-, root, root)
|
||||
%dir /lib/modules/%kernelrelease-%build_flavor
|
||||
%endif
|
||||
|
||||
%if %split_base
|
||||
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
|
42549
kernel-default.changes
42549
kernel-default.changes
File diff suppressed because it is too large
Load Diff
@ -19,8 +19,8 @@
|
||||
# This makes the OBS store the project cert as %_sourcedir/_projectcert.crt
|
||||
# needssslcertforbuild
|
||||
|
||||
%define srcversion 3.12
|
||||
%define patchversion 3.12.61
|
||||
%define srcversion 4.6
|
||||
%define patchversion 4.6.3
|
||||
%define variant %{nil}
|
||||
%define vanilla_only 0
|
||||
|
||||
@ -28,7 +28,6 @@
|
||||
|
||||
%define build_flavor default
|
||||
%define build_default ("%build_flavor" == "default")
|
||||
%define build_xen ("%build_flavor" == "xen" || "%build_flavor" == "ec2")
|
||||
%define build_vanilla ("%build_flavor" == "vanilla")
|
||||
|
||||
%if ! %build_vanilla
|
||||
@ -40,7 +39,7 @@
|
||||
%define rpm_install_dir %buildroot%obj_install_dir
|
||||
%define kernel_build_dir %my_builddir/linux-%srcversion/linux-obj
|
||||
|
||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,find-provides,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh})
|
||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,find-provides,find-requires,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh})
|
||||
|
||||
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
|
||||
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
||||
@ -62,9 +61,9 @@ Name: kernel-default
|
||||
Summary: The Standard Kernel
|
||||
License: GPL-2.0
|
||||
Group: System/Kernel
|
||||
Version: 3.12.61
|
||||
Version: 4.6.3
|
||||
%if 0%{?is_kotd}
|
||||
Release: <RELEASE>.g1c2aaa5
|
||||
Release: <RELEASE>.gd4bcf2a
|
||||
%else
|
||||
Release: 0
|
||||
%endif
|
||||
@ -80,6 +79,8 @@ BuildRequires: modutils
|
||||
# Used to sign the kernel in the buildservice
|
||||
BuildRequires: openssl
|
||||
BuildRequires: pesign-obs-integration
|
||||
# for objtool
|
||||
BuildRequires: libelf-devel
|
||||
Provides: %name = %version-%source_rel
|
||||
# bnc#901925
|
||||
Provides: %name-%version-%source_rel
|
||||
@ -135,9 +136,6 @@ BuildRequires: dwarfextract
|
||||
%ifarch %arm
|
||||
BuildRequires: u-boot-tools
|
||||
%endif
|
||||
%if %build_xen
|
||||
#!BuildIgnore: xen
|
||||
%endif
|
||||
|
||||
Obsoletes: microcode_ctl
|
||||
|
||||
@ -154,7 +152,20 @@ Conflicts: udev < 118
|
||||
Conflicts: lvm2 < 2.02.33
|
||||
# Interface to hv_kvp_daemon changed
|
||||
Conflicts: hyper-v < 4
|
||||
%ifarch %ix86
|
||||
Conflicts: libc.so.6()(64bit)
|
||||
%endif
|
||||
Provides: kernel = %version-%source_rel
|
||||
%ifarch %ix86
|
||||
Provides: kernel-smp = 2.6.17
|
||||
Obsoletes: kernel-smp <= 2.6.17
|
||||
Provides: kernel-trace = 3.13
|
||||
Obsoletes: kernel-trace <= 3.13
|
||||
%endif
|
||||
%ifarch ppc64
|
||||
Provides: kernel-kdump = 2.6.28
|
||||
Obsoletes: kernel-kdump <= 2.6.28
|
||||
%endif
|
||||
%ifarch s390x
|
||||
Provides: kernel-trace = 3.13
|
||||
Obsoletes: kernel-trace <= 3.13
|
||||
@ -164,6 +175,22 @@ Provides: kernel-smp = 2.6.17
|
||||
Obsoletes: kernel-smp <= 2.6.17
|
||||
Provides: kernel-trace = 3.13
|
||||
Obsoletes: kernel-trace <= 3.13
|
||||
Provides: kernel-bigsmp = 3.1
|
||||
Obsoletes: kernel-bigsmp <= 3.1
|
||||
Provides: kernel-desktop = 4.3
|
||||
Obsoletes: kernel-desktop <= 4.3
|
||||
Provides: kernel-xen = 4.4
|
||||
Obsoletes: kernel-xen <= 4.4
|
||||
Provides: kernel-ec2 = 4.4
|
||||
Obsoletes: kernel-ec2 <= 4.4
|
||||
%endif
|
||||
%ifarch %ix86
|
||||
Provides: kernel-trace-base = 3.13
|
||||
Obsoletes: kernel-trace-base <= 3.13
|
||||
%endif
|
||||
%ifarch ppc64
|
||||
Provides: kernel-kdump-base = 2.6.28
|
||||
Obsoletes: kernel-kdump-base <= 2.6.28
|
||||
%endif
|
||||
%ifarch s390x
|
||||
Provides: kernel-trace-base = 3.13
|
||||
@ -172,9 +199,17 @@ Obsoletes: kernel-trace-base <= 3.13
|
||||
%ifarch x86_64
|
||||
Provides: kernel-trace-base = 3.13
|
||||
Obsoletes: kernel-trace-base <= 3.13
|
||||
Provides: kernel-bigsmp-base = 3.1
|
||||
Obsoletes: kernel-bigsmp-base <= 3.1
|
||||
Provides: kernel-desktop-base = 4.3
|
||||
Obsoletes: kernel-desktop-base <= 4.3
|
||||
Provides: kernel-xen-base = 4.4
|
||||
Obsoletes: kernel-xen-base <= 4.4
|
||||
Provides: kernel-ec2-base = 4.4
|
||||
Obsoletes: kernel-ec2-base <= 4.4
|
||||
%endif
|
||||
%obsolete_rebuilds %name
|
||||
Source0: http://www.kernel.org/pub/linux/kernel/v3.x/linux-%srcversion.tar.xz
|
||||
Source0: http://www.kernel.org/pub/linux/kernel/v4.x/linux-%srcversion.tar.xz
|
||||
Source2: source-post.sh
|
||||
Source3: kernel-source.rpmlintrc
|
||||
Source8: devel-pre.sh
|
||||
@ -196,8 +231,9 @@ Source38: README.KSYMS
|
||||
Source39: config-options.changes.txt
|
||||
Source40: source-timestamp
|
||||
Source44: find-provides
|
||||
Source45: split-modules
|
||||
Source46: modversions
|
||||
Source45: find-requires
|
||||
Source46: split-modules
|
||||
Source47: modversions
|
||||
Source48: macros.kernel-source
|
||||
Source49: kernel-module-subpackage
|
||||
Source50: kabi.pl
|
||||
@ -221,7 +257,6 @@ Source69: try-disable-staging-driver
|
||||
Source70: kernel-obs-build.spec.in
|
||||
Source71: kernel-obs-qa.spec.in
|
||||
Source72: compress-vmlinux.sh
|
||||
Source90: SLES-UEFI-SIGN-Certificate-2048.crt
|
||||
Source100: config.tar.bz2
|
||||
Source101: config.addon.tar.bz2
|
||||
Source102: patches.arch.tar.bz2
|
||||
@ -238,10 +273,19 @@ Source112: patches.trace.tar.bz2
|
||||
Source113: patches.kabi.tar.bz2
|
||||
Source120: kabi.tar.bz2
|
||||
Source121: sysctl.tar.bz2
|
||||
Source122: modprobe-xen.conf
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
ExclusiveArch: aarch64 ppc64le s390x x86_64
|
||||
ExclusiveArch: aarch64 armv6hl armv7hl %ix86 ppc64 ppc64le s390x x86_64
|
||||
%define kmp_target_cpu %_target_cpu
|
||||
%ifarch %ix86
|
||||
# Only i386/default supports i586, mark other flavors' packages as i686
|
||||
%if ! %build_default
|
||||
BuildArch: i686
|
||||
# KMPs are always built as i586, because rpm does not allow to build
|
||||
# subpackages for different architectures. Therefore, we change the
|
||||
# /usr/src/linux-obj/<arch> symlink to i586.
|
||||
%define kmp_target_cpu i586
|
||||
%endif
|
||||
%endif
|
||||
|
||||
# These files are found in the kernel-source package:
|
||||
NoSource: 0
|
||||
@ -268,6 +312,7 @@ NoSource: 40
|
||||
NoSource: 44
|
||||
NoSource: 45
|
||||
NoSource: 46
|
||||
NoSource: 47
|
||||
NoSource: 48
|
||||
NoSource: 49
|
||||
NoSource: 50
|
||||
@ -291,7 +336,6 @@ NoSource: 69
|
||||
NoSource: 70
|
||||
NoSource: 71
|
||||
NoSource: 72
|
||||
NoSource: 90
|
||||
NoSource: 100
|
||||
NoSource: 101
|
||||
NoSource: 102
|
||||
@ -308,7 +352,6 @@ NoSource: 112
|
||||
NoSource: 113
|
||||
NoSource: 120
|
||||
NoSource: 121
|
||||
NoSource: 122
|
||||
|
||||
# The following KMPs have been integrated into the kernel package,
|
||||
# grouped by the last product that contained them.
|
||||
@ -358,10 +401,17 @@ Provides: ath3k-firmware = 1.0
|
||||
%obsolete_kmp compat-wireless 3.12
|
||||
%obsolete_kmp rts5229 1.08
|
||||
%obsolete_kmp rts_pstor 1.11
|
||||
# sle12-sp1 / Leap 42.1
|
||||
%obsolete_kmp xen 4.6.1
|
||||
%obsolete_kmp compat-wireless 4.4
|
||||
|
||||
# Provide the exported symbols as "ksym(symbol) = hash"
|
||||
%define _use_internal_dependency_generator 0
|
||||
%define __find_provides %_sourcedir/find-provides %name
|
||||
|
||||
# Generate dependencies for KMPs defined in supported.conf
|
||||
%define __find_requires %_sourcedir/find-requires %name %version-%release %my_builddir
|
||||
|
||||
# Will modules not listed in supported.conf abort the kernel build (0/1)?
|
||||
%define supported_modules_check 0
|
||||
|
||||
@ -391,15 +441,11 @@ mkdir -p %kernel_build_dir
|
||||
# Generate a list of modules with their support status marking
|
||||
%_sourcedir/guards --list --with-guards <%_sourcedir/supported.conf | \
|
||||
awk '
|
||||
/^\+(base|yes) / {
|
||||
print $(NF);
|
||||
next;
|
||||
}
|
||||
/^\+external / {
|
||||
/\+external / {
|
||||
print $(NF) " external";
|
||||
next;
|
||||
}
|
||||
/^[-+]/ {
|
||||
/^-/ {
|
||||
print $(NF) " no";
|
||||
next;
|
||||
}
|
||||
@ -407,8 +453,11 @@ awk '
|
||||
print $(NF);
|
||||
}
|
||||
' >%kernel_build_dir/Module.supported
|
||||
%_sourcedir/guards --default=0 base < %_sourcedir/supported.conf | \
|
||||
sed 's,.*/,,; s,\.ko$,,' | sort -u >%kernel_build_dir/Module.base
|
||||
for package in base ; do
|
||||
%_sourcedir/guards --default=0 "$package" \
|
||||
<%_sourcedir/supported.conf | sed 's,.*/,,; s,\.ko$,,' | \
|
||||
sort -u >%kernel_build_dir/Module."$package"
|
||||
done
|
||||
|
||||
cd linux-%srcversion
|
||||
|
||||
@ -439,7 +488,17 @@ if [ -f %_sourcedir/localversion ] ; then
|
||||
cat %_sourcedir/localversion > localversion
|
||||
fi
|
||||
|
||||
vanilla_base="default"
|
||||
%ifarch %ix86
|
||||
vanilla_base="pae"
|
||||
%endif
|
||||
if ! grep -q CONFIG_MMU= "%my_builddir/config/%cpu_arch_flavor"; then
|
||||
cp "%my_builddir/config/%cpu_arch/$vanilla_base" .config
|
||||
../scripts/kconfig/merge_config.sh -m .config \
|
||||
%my_builddir/config/%cpu_arch_flavor
|
||||
else
|
||||
cp %my_builddir/config/%cpu_arch_flavor .config
|
||||
fi
|
||||
if test -e %my_builddir/config.addon/%cpu_arch_flavor; then
|
||||
# FIXME: config.addon doesn't affect the %CONFIG_ macros defined at
|
||||
# the top of the specfile
|
||||
@ -477,7 +536,8 @@ fi
|
||||
make clean $MAKE_ARGS
|
||||
|
||||
rm -f source
|
||||
find . ! -type d -printf '%%P\n' > %my_builddir/obj-files
|
||||
find . ! -type d ! -name 'Module.base' ! -name 'Module.*-kmp' -printf '%%P\n' \
|
||||
> %my_builddir/obj-files
|
||||
|
||||
%build
|
||||
cd %kernel_build_dir
|
||||
@ -488,43 +548,21 @@ if test -e %my_builddir/kabi/%cpu_arch/symtypes-%build_flavor; then
|
||||
%_sourcedir/modversions --unpack . < $_
|
||||
fi
|
||||
|
||||
# copy optional module signing files:
|
||||
# *.x509, *.crt
|
||||
# - certificates with pubkeys used to verify module and firmware signatures
|
||||
# at runtime. *.crt files assumed to be in the PEM format.
|
||||
# signing_key.priv
|
||||
# - unencrypted private key used to sign modules and firmware during build
|
||||
# x509.genkey
|
||||
# - openssl req config to generate a new signing_key.{x509,priv} pair for the
|
||||
# build
|
||||
for f in %_sourcedir/*.x509 %_sourcedir/{signing_key.priv,x509.genkey}; do
|
||||
if test -e "$f"; then
|
||||
cp "$f" .
|
||||
fi
|
||||
done
|
||||
# copy module signing certificate(s)
|
||||
for f in %_sourcedir/*.crt; do
|
||||
if ! test -e "$f"; then
|
||||
continue
|
||||
fi
|
||||
out=${f##*/}
|
||||
out=${out%.crt}.x509
|
||||
openssl x509 -inform PEM -in "$f" -outform DER -out "$out"
|
||||
case "${f##*/}" in
|
||||
SLES-UEFI*.crt)
|
||||
../scripts/config --set-str CONFIG_MODULE_SIG_KEY "${f##*/}"
|
||||
cp "$f" .
|
||||
;;
|
||||
*)
|
||||
cat "$f" >>keyring.crt
|
||||
../scripts/config --set-str CONFIG_SYSTEM_TRUSTED_KEYS "keyring.crt"
|
||||
esac
|
||||
done
|
||||
# Convince kernel/Makefile not to generate a new keypair
|
||||
touch x509.genkey
|
||||
touch signing_key.x509
|
||||
%if %build_vanilla
|
||||
# workaround for the 3.12 vanilla kernel which does not have
|
||||
# f0e6d22 ("KEYS: Load *.x509 files into kernel keyring)
|
||||
# but supports an "extra_certificates" file instead
|
||||
for f in *.x509; do
|
||||
if test ! -e "$f" -o "$f" = "signing_key.x509"; then
|
||||
continue
|
||||
fi
|
||||
cat "$f" >>extra_certificates
|
||||
done
|
||||
%endif
|
||||
|
||||
|
||||
MAKE_ARGS="$MAKE_ARGS %{?_smp_mflags}"
|
||||
|
||||
@ -556,6 +594,11 @@ export BRP_PESIGN_FILES="*.ko"
|
||||
%if %CONFIG_EFI_STUB == "y"
|
||||
BRP_PESIGN_FILES="$BRP_PESIGN_FILES /boot/vmlinuz-%kernelrelease-%build_flavor"
|
||||
%endif
|
||||
%ifarch %ix86
|
||||
# XXX: do not sign on x86, as the repackaging changes kernel-pae
|
||||
# from i686 to i586
|
||||
BRP_PESIGN_FILES=""
|
||||
%endif
|
||||
|
||||
# get rid of /usr/lib/rpm/brp-strip-debug
|
||||
# strip removes too much from the vmlinux ELF binary
|
||||
@ -604,9 +647,6 @@ add_vmlinux()
|
||||
%ifarch %ix86 x86_64
|
||||
add_vmlinux --compressed
|
||||
image=bzImage
|
||||
%if %build_xen
|
||||
test -f arch/x86/boot/$image || image=vmlinuz
|
||||
%endif
|
||||
cp -p arch/x86/boot/$image %buildroot/boot/vmlinuz-%kernelrelease-%build_flavor
|
||||
image=vmlinuz
|
||||
%endif
|
||||
@ -664,12 +704,6 @@ if test %CONFIG_MODULE_SIG = "y"; then
|
||||
done
|
||||
fi
|
||||
|
||||
# Install the frontend driver selector file for xen/ec2
|
||||
%if %build_xen
|
||||
mkdir -p %buildroot/etc/modprobe.d
|
||||
cp %_sourcedir/modprobe-xen.conf %buildroot/etc/modprobe.d/50-xen.conf
|
||||
%endif
|
||||
|
||||
for sub in '-base' '' '-extra'; do
|
||||
case "$sub" in
|
||||
'-base' | '') base_package=1 ;;
|
||||
@ -707,7 +741,7 @@ for sub in '-base' '' '-extra'; do
|
||||
done
|
||||
done
|
||||
|
||||
%if %build_xen || %build_vanilla
|
||||
%if %build_vanilla
|
||||
# keep this -suffix list in sync with post.sh and postun.sh
|
||||
suffix=-%build_flavor
|
||||
%endif
|
||||
@ -799,7 +833,7 @@ if [ %CONFIG_MODULES = y ]; then
|
||||
%if %split_base
|
||||
%_sourcedir/split-modules -d %buildroot \
|
||||
-o %my_builddir \
|
||||
-b %kernel_build_dir/Module.base \
|
||||
-b %kernel_build_dir \
|
||||
%if %CONFIG_SUSE_KERNEL_SUPPORTED == "y"
|
||||
-e \
|
||||
%endif
|
||||
@ -810,18 +844,18 @@ if [ %CONFIG_MODULES = y ]; then
|
||||
cat %my_builddir/unsupported-modules >>%my_builddir/main-modules
|
||||
%endif
|
||||
|
||||
# The modules.dep file is sorted randomly which produces strange file
|
||||
# checksums. As the file is not included in the resulting RPM, it's
|
||||
# pointless to rely on its contents. Replacing by zeros to make the
|
||||
# checksums always the same for several builds of the same package.
|
||||
dd if=/dev/zero of=%buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep ibs=`stat -c%s %buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep` count=1
|
||||
|
||||
%else
|
||||
( cd %buildroot
|
||||
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
|
||||
) > %my_builddir/base-modules
|
||||
%endif
|
||||
|
||||
# The modules.dep file is sorted randomly which produces strange file
|
||||
# checksums. As the file is not included in the resulting RPM, it's
|
||||
# pointless to rely on its contents. Replacing by zeros to make the
|
||||
# checksums always the same for several builds of the same package.
|
||||
dd if=/dev/zero of=%buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep ibs=`stat -c%s %buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep` count=1
|
||||
|
||||
res=0
|
||||
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
|
||||
# check for kabi changes
|
||||
@ -928,26 +962,35 @@ done | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
||||
if test %CONFIG_MODULE_SIG = "y" -a -d etc/uefi/certs; then
|
||||
find etc/uefi/certs -type f -printf '/%%p\n'
|
||||
fi
|
||||
# optional per-kernel-release module config workarounds
|
||||
if test -d etc/modprobe.d; then
|
||||
find etc/modprobe.d -type f -printf '%%%%config(noreplace) /%%p\n'
|
||||
if test -d lib/firmware/%kernelrelease-%build_flavor; then
|
||||
%if %split_base
|
||||
echo "%%dir /lib/firmware/%kernelrelease-%build_flavor"
|
||||
cat %my_builddir/base-firmware
|
||||
%else
|
||||
echo "/lib/firmware/%kernelrelease-%build_flavor"
|
||||
%endif
|
||||
fi
|
||||
test -d lib/firmware/%kernelrelease-%build_flavor && \
|
||||
find lib/firmware/%kernelrelease-%build_flavor \
|
||||
-type d -o \
|
||||
-printf '/%%p\n'
|
||||
if [ -e .%_docdir/%name ]; then
|
||||
echo "%%doc %_docdir/%name"
|
||||
fi
|
||||
} | sort -u | add_dirs_to_filelist >%my_builddir/kernel-base.files
|
||||
|
||||
%if %split_base
|
||||
add_dirs_to_filelist %my_builddir/{kernel-base.files,main-modules} \
|
||||
> %my_builddir/kernel-main.files
|
||||
{
|
||||
add_dirs_to_filelist %my_builddir/{kernel-base.files,main-modules}
|
||||
if test -d %buildroot/lib/firmware/%kernelrelease-%build_flavor; then
|
||||
echo "/lib/firmware/%kernelrelease-%build_flavor"
|
||||
fi
|
||||
} > %my_builddir/kernel-main.files
|
||||
%endif
|
||||
%if %split_extra
|
||||
add_dirs_to_filelist %my_builddir/unsupported-modules > %my_builddir/kernel-extra.files
|
||||
%endif
|
||||
for f in %my_builddir/*-kmp-modules; do
|
||||
f2=${f%%-modules}.files
|
||||
add_dirs_to_filelist "$f" >"$f2"
|
||||
done
|
||||
|
||||
|
||||
# Hardlink duplicate files automatically (from package fdupes): It doesn't save
|
||||
# much, but it keeps rpmlint from breaking the package build. Note that we skip
|
||||
@ -1002,6 +1045,14 @@ Requires(post): mkinitrd >= 2.7.1
|
||||
# the grub entry has correct title (bnc#757565)
|
||||
Requires(post): distribution-release
|
||||
|
||||
%ifarch %ix86
|
||||
Provides: kernel-trace-base = 3.13
|
||||
Obsoletes: kernel-trace-base <= 3.13
|
||||
%endif
|
||||
%ifarch ppc64
|
||||
Provides: kernel-kdump-base = 2.6.28
|
||||
Obsoletes: kernel-kdump-base <= 2.6.28
|
||||
%endif
|
||||
%ifarch s390x
|
||||
Provides: kernel-trace-base = 3.13
|
||||
Obsoletes: kernel-trace-base <= 3.13
|
||||
@ -1009,8 +1060,19 @@ Obsoletes: kernel-trace-base <= 3.13
|
||||
%ifarch x86_64
|
||||
Provides: kernel-trace-base = 3.13
|
||||
Obsoletes: kernel-trace-base <= 3.13
|
||||
Provides: kernel-bigsmp-base = 3.1
|
||||
Obsoletes: kernel-bigsmp-base <= 3.1
|
||||
Provides: kernel-desktop-base = 4.3
|
||||
Obsoletes: kernel-desktop-base <= 4.3
|
||||
Provides: kernel-xen-base = 4.4
|
||||
Obsoletes: kernel-xen-base <= 4.4
|
||||
Provides: kernel-ec2-base = 4.4
|
||||
Obsoletes: kernel-ec2-base <= 4.4
|
||||
%endif
|
||||
%obsolete_rebuilds %name-base
|
||||
%ifarch %ix86
|
||||
Conflicts: libc.so.6()(64bit)
|
||||
%endif
|
||||
|
||||
%description base
|
||||
The standard kernel for both uniprocessor and multiprocessor systems.
|
||||
@ -1045,6 +1107,14 @@ Requires(pre): coreutils awk
|
||||
Requires(post): modutils
|
||||
Requires(post): perl-Bootloader
|
||||
Requires(post): mkinitrd
|
||||
%ifarch %ix86
|
||||
Provides: kernel-trace-extra = 3.13
|
||||
Obsoletes: kernel-trace-extra <= 3.13
|
||||
%endif
|
||||
%ifarch ppc64
|
||||
Provides: kernel-kdump-extra = 2.6.28
|
||||
Obsoletes: kernel-kdump-extra <= 2.6.28
|
||||
%endif
|
||||
%ifarch s390x
|
||||
Provides: kernel-trace-extra = 3.13
|
||||
Obsoletes: kernel-trace-extra <= 3.13
|
||||
@ -1052,9 +1122,20 @@ Obsoletes: kernel-trace-extra <= 3.13
|
||||
%ifarch x86_64
|
||||
Provides: kernel-trace-extra = 3.13
|
||||
Obsoletes: kernel-trace-extra <= 3.13
|
||||
Provides: kernel-bigsmp-extra = 3.1
|
||||
Obsoletes: kernel-bigsmp-extra <= 3.1
|
||||
Provides: kernel-desktop-extra = 4.3
|
||||
Obsoletes: kernel-desktop-extra <= 4.3
|
||||
Provides: kernel-xen-extra = 4.4
|
||||
Obsoletes: kernel-xen-extra <= 4.4
|
||||
Provides: kernel-ec2-extra = 4.4
|
||||
Obsoletes: kernel-ec2-extra <= 4.4
|
||||
%endif
|
||||
%obsolete_rebuilds %name-extra
|
||||
Supplements: packageand(product(SUSE_SLED):%{name}_%_target_cpu)
|
||||
%ifarch %ix86
|
||||
Conflicts: libc.so.6()(64bit)
|
||||
%endif
|
||||
|
||||
%description extra
|
||||
The standard kernel for both uniprocessor and multiprocessor systems.
|
||||
@ -1080,7 +1161,7 @@ This package contains additional modules not supported by Novell.
|
||||
%if %CONFIG_KMSG_IDS == "y"
|
||||
|
||||
%package man
|
||||
Summary: The collection of man pages generated by the kmsg script.
|
||||
Summary: The collection of man pages generated by the kmsg script
|
||||
Group: System/Kernel
|
||||
|
||||
%description man
|
||||
@ -1101,11 +1182,22 @@ Provides: %name-devel = %version-%source_rel
|
||||
Provides: multiversion(kernel)
|
||||
%if ! %build_vanilla
|
||||
Requires: kernel-devel%variant = %version-%source_rel
|
||||
Recommends: make
|
||||
Recommends: gcc
|
||||
Recommends: perl
|
||||
Supplements: packageand(%name:kernel-devel%variant)
|
||||
%else
|
||||
Requires: kernel-source-vanilla = %version-%source_rel
|
||||
Supplements: packageand(%name:kernel-source-vanilla)
|
||||
%endif
|
||||
%ifarch %ix86
|
||||
Provides: kernel-trace-devel = 3.13
|
||||
Obsoletes: kernel-trace-devel <= 3.13
|
||||
%endif
|
||||
%ifarch ppc64
|
||||
Provides: kernel-kdump-devel = 2.6.28
|
||||
Obsoletes: kernel-kdump-devel <= 2.6.28
|
||||
%endif
|
||||
%ifarch s390x
|
||||
Provides: kernel-trace-devel = 3.13
|
||||
Obsoletes: kernel-trace-devel <= 3.13
|
||||
@ -1113,6 +1205,14 @@ Obsoletes: kernel-trace-devel <= 3.13
|
||||
%ifarch x86_64
|
||||
Provides: kernel-trace-devel = 3.13
|
||||
Obsoletes: kernel-trace-devel <= 3.13
|
||||
Provides: kernel-bigsmp-devel = 3.1
|
||||
Obsoletes: kernel-bigsmp-devel <= 3.1
|
||||
Provides: kernel-desktop-devel = 4.3
|
||||
Obsoletes: kernel-desktop-devel <= 4.3
|
||||
Provides: kernel-xen-devel = 4.4
|
||||
Obsoletes: kernel-xen-devel <= 4.4
|
||||
Provides: kernel-ec2-devel = 4.4
|
||||
Obsoletes: kernel-ec2-devel <= 4.4
|
||||
%endif
|
||||
%obsolete_rebuilds %name-devel
|
||||
PreReq: coreutils
|
||||
@ -1143,4 +1243,26 @@ kernel module packages) against the %build_flavor flavor of the kernel.
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if %CONFIG_MODULES == "y" && %CONFIG_SUSE_KERNEL_SUPPORTED == "y"
|
||||
%package kgraft
|
||||
Summary: Metapackage to pull in matching kgraft-patch package
|
||||
Group: System/Kernel
|
||||
Requires: kgraft-patch-%(echo %version-%source_rel | sed 'y/\./_/')-%build_flavor
|
||||
Provides: multiversion(kernel)
|
||||
|
||||
%description kgraft
|
||||
This is a metapackage that pulls in the matching kgraft-patch package for a
|
||||
given kernel version. The advantage of the metapackage is that its name is
|
||||
static, unlike the kgraft-patch-<kernel-version>-flavor package names.
|
||||
|
||||
%files kgraft
|
||||
# rpmlint complains about empty packages, so lets own something
|
||||
%defattr(-, root, root)
|
||||
%dir /lib/modules/%kernelrelease-%build_flavor
|
||||
%endif
|
||||
|
||||
%if %split_base
|
||||
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
|
42549
kernel-docs.changes
42549
kernel-docs.changes
File diff suppressed because it is too large
Load Diff
102
kernel-docs.spec
102
kernel-docs.spec
@ -16,23 +16,37 @@
|
||||
#
|
||||
|
||||
|
||||
%define patchversion 3.12.61
|
||||
%define patchversion 4.6.3
|
||||
%define variant %{nil}
|
||||
|
||||
%include %_sourcedir/kernel-spec-macros
|
||||
|
||||
%define use_fop 1
|
||||
|
||||
Name: kernel-docs
|
||||
Summary: Kernel Documentation
|
||||
Summary: Kernel Documentation (man pages)
|
||||
License: GPL-2.0
|
||||
Group: Documentation/Man
|
||||
Version: 3.12.61
|
||||
Version: 4.6.3
|
||||
%if 0%{?is_kotd}
|
||||
Release: <RELEASE>.g1c2aaa5
|
||||
Release: <RELEASE>.gd4bcf2a
|
||||
%else
|
||||
Release: 0
|
||||
%endif
|
||||
BuildRequires: kernel-source%variant
|
||||
BuildRequires: xmlto
|
||||
%if %use_fop
|
||||
BuildRequires: fop
|
||||
%else
|
||||
BuildRequires: docbook-toys
|
||||
BuildRequires: docbook-utils
|
||||
BuildRequires: texlive-courier
|
||||
BuildRequires: texlive-dvips
|
||||
BuildRequires: texlive-ec
|
||||
BuildRequires: texlive-helvetic
|
||||
BuildRequires: texlive-jadetex
|
||||
BuildRequires: texlive-times
|
||||
%endif
|
||||
Url: http://www.kernel.org/
|
||||
Provides: %name = %version-%source_rel
|
||||
BuildArch: noarch
|
||||
@ -43,24 +57,66 @@ Source: kernel-spec-macros
|
||||
These are the man pages (section 9) built from the current kernel sources.
|
||||
|
||||
%source_timestamp
|
||||
|
||||
%package pdf
|
||||
Summary: Kernel Documentation (PDF)
|
||||
License: GPL-2.0
|
||||
Group: Documentation/Other
|
||||
|
||||
%description pdf
|
||||
These are PDF documents built from the current kernel sources.
|
||||
|
||||
%source_timestamp
|
||||
|
||||
%package html
|
||||
Summary: Kernel Documentation (HTML)
|
||||
License: GPL-2.0
|
||||
Group: Documentation/HTML
|
||||
|
||||
%description html
|
||||
These are HTML documents built from the current kernel sources.
|
||||
|
||||
%source_timestamp
|
||||
|
||||
%prep
|
||||
%if !%use_fop
|
||||
cp -av /etc/texmf/web2c/texmf.cnf .
|
||||
cat << EOF >> texmf.cnf
|
||||
main_memory.pdfjadetex = 5000000
|
||||
hash_extra.pdfjadetex = 140000
|
||||
max_strings.pdfjadetex = 240000
|
||||
save_size.pdfjadetex = 20000
|
||||
EOF
|
||||
%endif
|
||||
%setup -T -c
|
||||
|
||||
%build
|
||||
%if !%use_fop
|
||||
# use texmf.cnf from local source
|
||||
export TEXMFCNF=$RPM_BUILD_DIR
|
||||
%endif
|
||||
export LANG=en_US
|
||||
make -C /usr/src/linux%variant O=$PWD mandocs %{?jobs:-j%jobs}
|
||||
mkdir -p man
|
||||
make -C /usr/src/linux%variant O=$PWD/man mandocs %{?jobs:-j%jobs}
|
||||
mkdir -p html
|
||||
make -C /usr/src/linux%variant O=$PWD/html htmldocs %{?jobs:-j%jobs}
|
||||
mkdir -p pdf
|
||||
make \
|
||||
%if %use_fop
|
||||
XMLTOFLAGS="-m /usr/src/linux%{variant}/Documentation/DocBook/stylesheet.xsl --skip-validation --with-fop" \
|
||||
%endif
|
||||
-C /usr/src/linux%variant O=$PWD/pdf pdfdocs %{?jobs:-j%jobs}
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
install -d $RPM_BUILD_ROOT/%{_mandir}/man9
|
||||
# filter out obscure device drivers - they clutter up the rpm and don't add any real value
|
||||
find Documentation/DocBook/ -name '*.9.gz' |
|
||||
egrep -v 'man/(sis[69]|rio|fsl|struct_rio|RIO|mpc85|set_rx_mode|mdio_(read|write)|mii_ioctl|mca_|z8530|nand|sppp|piix|(read|write)_zs)' |
|
||||
find man/Documentation/DocBook/ -name '*.9.gz' |
|
||||
grep -E -v 'man/(sis[69]|rio|fsl|struct_rio|RIO|mpc85|set_rx_mode|mdio_(read|write)|mii_ioctl|mca_|z8530|nand|sppp|piix|(read|write)_zs)' |
|
||||
while read i ; do
|
||||
cp $i $RPM_BUILD_ROOT/%{_mandir}/man9
|
||||
done
|
||||
if [ -d Documentation/kdb ] ; then
|
||||
for i in Documentation/kdb/*.m* ; do
|
||||
if [ -d man/Documentation/kdb ] ; then
|
||||
for i in man/Documentation/kdb/*.m* ; do
|
||||
k=`basename $i`
|
||||
k=${k/man/9}
|
||||
k=${k/mm/9}
|
||||
@ -68,16 +124,34 @@ if [ -d Documentation/kdb ] ; then
|
||||
done
|
||||
fi
|
||||
|
||||
ln -s /usr/share/man/man9/request_threaded_irq.9.gz $RPM_BUILD_ROOT/usr/share/man/man9/request_irq.9.gz
|
||||
ln -s %{_mandir}/man9/request_threaded_irq.9.gz $RPM_BUILD_ROOT%{_mandir}/man9/request_irq.9.gz
|
||||
|
||||
install -d $RPM_BUILD_ROOT%{_datadir}/doc/kernel/pdf
|
||||
cp -a pdf/Documentation/DocBook/*.pdf $RPM_BUILD_ROOT%{_datadir}/doc/kernel/pdf || true
|
||||
|
||||
install -d $RPM_BUILD_ROOT%{_datadir}/doc/kernel/html
|
||||
cp -a html/Documentation/DocBook/* $RPM_BUILD_ROOT%{_datadir}/doc/kernel/html || true
|
||||
rm -f $RPM_BUILD_ROOT%{_datadir}/doc/kernel/html/*.xml
|
||||
rm -f $RPM_BUILD_ROOT%{_datadir}/doc/kernel/html/*.{gif,png}
|
||||
rm -f $RPM_BUILD_ROOT%{_datadir}/doc/kernel/html/*/*.proc
|
||||
|
||||
cp -a /usr/src/linux%variant/{COPYING,CREDITS,MAINTAINERS,README,REPORTING-BUGS} .
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc COPYING CREDITS MAINTAINERS README REPORTING-BUGS
|
||||
%{_mandir}/man9/*
|
||||
|
||||
%files pdf
|
||||
%defattr(-,root,root)
|
||||
%dir %{_datadir}/doc/kernel
|
||||
%docdir %{_datadir}/doc/kernel/pdf
|
||||
%{_datadir}/doc/kernel/pdf
|
||||
|
||||
%files html
|
||||
%defattr(-,root,root)
|
||||
%dir %{_datadir}/doc/kernel
|
||||
%docdir %{_datadir}/doc/kernel/html
|
||||
%{_datadir}/doc/kernel/html
|
||||
|
||||
%changelog
|
||||
|
@ -21,8 +21,10 @@
|
||||
|
||||
%include %_sourcedir/kernel-spec-macros
|
||||
|
||||
%define use_fop 1
|
||||
|
||||
Name: kernel-docs@VARIANT@
|
||||
Summary: Kernel Documentation
|
||||
Summary: Kernel Documentation (man pages)
|
||||
License: GPL-2.0
|
||||
Group: Documentation/Man
|
||||
Version: @RPMVERSION@
|
||||
@ -33,6 +35,18 @@ Release: @RELEASE@
|
||||
%endif
|
||||
BuildRequires: kernel-source%variant
|
||||
BuildRequires: xmlto
|
||||
%if %use_fop
|
||||
BuildRequires: fop
|
||||
%else
|
||||
BuildRequires: docbook-toys
|
||||
BuildRequires: docbook-utils
|
||||
BuildRequires: texlive-courier
|
||||
BuildRequires: texlive-dvips
|
||||
BuildRequires: texlive-ec
|
||||
BuildRequires: texlive-helvetic
|
||||
BuildRequires: texlive-jadetex
|
||||
BuildRequires: texlive-times
|
||||
%endif
|
||||
Url: http://www.kernel.org/
|
||||
Provides: %name = %version-%source_rel
|
||||
BuildArch: noarch
|
||||
@ -43,24 +57,66 @@ Source: kernel-spec-macros
|
||||
These are the man pages (section 9) built from the current kernel sources.
|
||||
|
||||
%source_timestamp
|
||||
|
||||
%package pdf
|
||||
Summary: Kernel Documentation (PDF)
|
||||
License: GPL-2.0
|
||||
Group: Documentation/Other
|
||||
|
||||
%description pdf
|
||||
These are PDF documents built from the current kernel sources.
|
||||
|
||||
%source_timestamp
|
||||
|
||||
%package html
|
||||
Summary: Kernel Documentation (HTML)
|
||||
License: GPL-2.0
|
||||
Group: Documentation/HTML
|
||||
|
||||
%description html
|
||||
These are HTML documents built from the current kernel sources.
|
||||
|
||||
%source_timestamp
|
||||
|
||||
%prep
|
||||
%if !%use_fop
|
||||
cp -av /etc/texmf/web2c/texmf.cnf .
|
||||
cat << EOF >> texmf.cnf
|
||||
main_memory.pdfjadetex = 5000000
|
||||
hash_extra.pdfjadetex = 140000
|
||||
max_strings.pdfjadetex = 240000
|
||||
save_size.pdfjadetex = 20000
|
||||
EOF
|
||||
%endif
|
||||
%setup -T -c
|
||||
|
||||
%build
|
||||
%if !%use_fop
|
||||
# use texmf.cnf from local source
|
||||
export TEXMFCNF=$RPM_BUILD_DIR
|
||||
%endif
|
||||
export LANG=en_US
|
||||
make -C /usr/src/linux%variant O=$PWD mandocs %{?jobs:-j%jobs}
|
||||
mkdir -p man
|
||||
make -C /usr/src/linux%variant O=$PWD/man mandocs %{?jobs:-j%jobs}
|
||||
mkdir -p html
|
||||
make -C /usr/src/linux%variant O=$PWD/html htmldocs %{?jobs:-j%jobs}
|
||||
mkdir -p pdf
|
||||
make \
|
||||
%if %use_fop
|
||||
XMLTOFLAGS="-m /usr/src/linux%{variant}/Documentation/DocBook/stylesheet.xsl --skip-validation --with-fop" \
|
||||
%endif
|
||||
-C /usr/src/linux%variant O=$PWD/pdf pdfdocs %{?jobs:-j%jobs}
|
||||
|
||||
%install
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
install -d $RPM_BUILD_ROOT/%{_mandir}/man9
|
||||
# filter out obscure device drivers - they clutter up the rpm and don't add any real value
|
||||
find Documentation/DocBook/ -name '*.9.gz' |
|
||||
egrep -v 'man/(sis[69]|rio|fsl|struct_rio|RIO|mpc85|set_rx_mode|mdio_(read|write)|mii_ioctl|mca_|z8530|nand|sppp|piix|(read|write)_zs)' |
|
||||
find man/Documentation/DocBook/ -name '*.9.gz' |
|
||||
grep -E -v 'man/(sis[69]|rio|fsl|struct_rio|RIO|mpc85|set_rx_mode|mdio_(read|write)|mii_ioctl|mca_|z8530|nand|sppp|piix|(read|write)_zs)' |
|
||||
while read i ; do
|
||||
cp $i $RPM_BUILD_ROOT/%{_mandir}/man9
|
||||
done
|
||||
if [ -d Documentation/kdb ] ; then
|
||||
for i in Documentation/kdb/*.m* ; do
|
||||
if [ -d man/Documentation/kdb ] ; then
|
||||
for i in man/Documentation/kdb/*.m* ; do
|
||||
k=`basename $i`
|
||||
k=${k/man/9}
|
||||
k=${k/mm/9}
|
||||
@ -68,16 +124,34 @@ if [ -d Documentation/kdb ] ; then
|
||||
done
|
||||
fi
|
||||
|
||||
ln -s /usr/share/man/man9/request_threaded_irq.9.gz $RPM_BUILD_ROOT/usr/share/man/man9/request_irq.9.gz
|
||||
ln -s %{_mandir}/man9/request_threaded_irq.9.gz $RPM_BUILD_ROOT%{_mandir}/man9/request_irq.9.gz
|
||||
|
||||
install -d $RPM_BUILD_ROOT%{_datadir}/doc/kernel/pdf
|
||||
cp -a pdf/Documentation/DocBook/*.pdf $RPM_BUILD_ROOT%{_datadir}/doc/kernel/pdf || true
|
||||
|
||||
install -d $RPM_BUILD_ROOT%{_datadir}/doc/kernel/html
|
||||
cp -a html/Documentation/DocBook/* $RPM_BUILD_ROOT%{_datadir}/doc/kernel/html || true
|
||||
rm -f $RPM_BUILD_ROOT%{_datadir}/doc/kernel/html/*.xml
|
||||
rm -f $RPM_BUILD_ROOT%{_datadir}/doc/kernel/html/*.{gif,png}
|
||||
rm -f $RPM_BUILD_ROOT%{_datadir}/doc/kernel/html/*/*.proc
|
||||
|
||||
cp -a /usr/src/linux%variant/{COPYING,CREDITS,MAINTAINERS,README,REPORTING-BUGS} .
|
||||
|
||||
%clean
|
||||
rm -rf $RPM_BUILD_ROOT
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc COPYING CREDITS MAINTAINERS README REPORTING-BUGS
|
||||
%{_mandir}/man9/*
|
||||
|
||||
%files pdf
|
||||
%defattr(-,root,root)
|
||||
%dir %{_datadir}/doc/kernel
|
||||
%docdir %{_datadir}/doc/kernel/pdf
|
||||
%{_datadir}/doc/kernel/pdf
|
||||
|
||||
%files html
|
||||
%defattr(-,root,root)
|
||||
%dir %{_datadir}/doc/kernel
|
||||
%docdir %{_datadir}/doc/kernel/html
|
||||
%{_datadir}/doc/kernel/html
|
||||
|
||||
%changelog
|
||||
|
41981
kernel-lpae.changes
Normal file
41981
kernel-lpae.changes
Normal file
File diff suppressed because it is too large
Load Diff
1152
kernel-lpae.spec
Normal file
1152
kernel-lpae.spec
Normal file
File diff suppressed because it is too large
Load Diff
@ -28,6 +28,18 @@ Requires: coreutils grep
|
||||
Enhances: kernel-%1
|
||||
%if %1 == "default"
|
||||
Obsoletes: %{-n*}-kmp-trace
|
||||
%ifarch %ix86
|
||||
Obsoletes: %{-n*}-kmp-vmi
|
||||
%endif
|
||||
%ifarch x86_64
|
||||
Obsoletes: %{-n*}-kmp-desktop
|
||||
%endif
|
||||
%ifarch %ix86 x86_64
|
||||
Obsoletes: %{-n*}-kmp-xen
|
||||
%endif
|
||||
%endif
|
||||
%if %1 == "pae"
|
||||
Obsoletes: %{-n*}-kmp-desktop
|
||||
%endif
|
||||
AutoReqProv: on
|
||||
%{-p:%{expand:%(cd %_sourcedir; cat %{-p*})}}
|
||||
|
42549
kernel-obs-build.changes
42549
kernel-obs-build.changes
File diff suppressed because it is too large
Load Diff
@ -19,7 +19,7 @@
|
||||
|
||||
#!BuildIgnore: post-build-checks
|
||||
|
||||
%define patchversion 3.12.61
|
||||
%define patchversion 4.6.3
|
||||
%define variant %{nil}
|
||||
|
||||
%include %_sourcedir/kernel-spec-macros
|
||||
@ -39,10 +39,7 @@ BuildRequires: kernel
|
||||
%define kernel_flavor ""
|
||||
%endif
|
||||
|
||||
%ifarch %ix86 x86_64
|
||||
BuildRequires: kernel-xen
|
||||
%endif
|
||||
ExclusiveArch: aarch64 ppc64le s390x x86_64
|
||||
ExclusiveArch: aarch64 armv6hl armv7hl %ix86 ppc64 ppc64le s390x x86_64
|
||||
%if 0%{?suse_version} < 1315
|
||||
# For SLE 11
|
||||
BuildRequires: mkinitrd
|
||||
@ -54,9 +51,9 @@ BuildRequires: dracut
|
||||
Summary: package kernel and initrd for OBS VM builds
|
||||
License: GPL-2.0
|
||||
Group: SLES
|
||||
Version: 3.12.61
|
||||
Version: 4.6.3
|
||||
%if 0%{?is_kotd}
|
||||
Release: <RELEASE>.g1c2aaa5
|
||||
Release: <RELEASE>.gd4bcf2a
|
||||
%else
|
||||
Release: 0
|
||||
%endif
|
||||
@ -99,10 +96,14 @@ info " binfmt misc..."
|
||||
modprobe binfmt_misc
|
||||
EOF
|
||||
chmod a+rx /usr/lib/dracut/modules.d/80obs/setup_obs.sh
|
||||
# Configure systemd in kernel-obs-build's initrd not to limit TasksMax,
|
||||
# we run with build as PID 1 (boo#965564)
|
||||
echo "DefaultTasksMax=infinity" >> /etc/systemd/system.conf
|
||||
echo "DefaultTasksAccounting=no" >> /etc/systemd/system.conf
|
||||
|
||||
# a longer list to have them also available for qemu cross builds where x86_64 kernel runs in eg. arm env.
|
||||
# this list of modules where available on build workers of build.opensuse.org, so we stay compatible.
|
||||
export KERNEL_MODULES="loop dm-mod dm-snapshot binfmt-misc fuse kqemu squashfs ext2 ext3 ext4 reiserfs btrfs nf_conntrack_ipv6 binfmt_misc virtio_pci virtio_mmio virtio_blk virtio_rng fat vfat nls_cp437 nls_iso8859-1 ibmvscsi sd_mod"
|
||||
export KERNEL_MODULES="loop dm-mod dm-snapshot binfmt-misc fuse kqemu squashfs ext2 ext3 ext4 reiserfs btrfs nf_conntrack_ipv6 binfmt_misc virtio_pci virtio_mmio virtio_blk virtio_rng fat vfat nls_cp437 nls_iso8859-1 ibmvscsi sd_mod e1000 ibmveth"
|
||||
|
||||
# manually load all modules to make sure they're available
|
||||
for i in $KERNEL_MODULES; do
|
||||
@ -131,16 +132,8 @@ ROOT=""
|
||||
/sbin/mkinitrd $ROOT \
|
||||
-m "$KERNEL_MODULES" \
|
||||
-k /boot/%{kernel_name}-*-default -M /boot/System.map-*-default -i /tmp/initrd.kvm -B
|
||||
%ifarch %ix86 x86_64
|
||||
/sbin/mkinitrd $ROOT \
|
||||
-m "$KERNEL_MODULES" \
|
||||
-k /boot/vmlinuz-xen -M /boot/System.map-*-xen -i /tmp/initrd.xen
|
||||
%endif
|
||||
%else
|
||||
dracut --host-only --drivers="$KERNEL_MODULES" --force /tmp/initrd.kvm `echo /boot/%{kernel_name}-*%{kernel_flavor} | sed -n -e 's,[^-]*-\(.*'%{kernel_flavor}'\),\1,p'`
|
||||
%ifarch %ix86 x86_64
|
||||
dracut --host-only --drivers="$KERNEL_MODULES xenblk" --force /tmp/initrd.xen `echo /boot/%{kernel_name}-*-xen | sed -n -e 's,[^-]*-\(.*-xen\),\1,p'`
|
||||
%endif
|
||||
%endif
|
||||
|
||||
|
||||
@ -151,10 +144,6 @@ rm -rf /usr/lib/dracut/modules.d/80obs
|
||||
install -d -m 0755 $RPM_BUILD_ROOT
|
||||
cp -v /boot/%{kernel_name}-*%{kernel_flavor} $RPM_BUILD_ROOT/.build.kernel.kvm
|
||||
cp -v /tmp/initrd.kvm $RPM_BUILD_ROOT/.build.initrd.kvm
|
||||
%ifarch %ix86 x86_64
|
||||
cp -v /boot/%{kernel_name}-*-xen $RPM_BUILD_ROOT/.build.kernel.xen
|
||||
cp -v /tmp/initrd.xen $RPM_BUILD_ROOT/.build.initrd.xen
|
||||
%endif
|
||||
|
||||
#inform worker about arch
|
||||
#see obs-build commit e47399d738e51
|
||||
|
@ -39,9 +39,6 @@ BuildRequires: kernel
|
||||
%define kernel_flavor ""
|
||||
%endif
|
||||
|
||||
%ifarch %ix86 x86_64
|
||||
BuildRequires: kernel-xen
|
||||
%endif
|
||||
ExclusiveArch: @ARCHS@
|
||||
%if 0%{?suse_version} < 1315
|
||||
# For SLE 11
|
||||
@ -99,10 +96,14 @@ info " binfmt misc..."
|
||||
modprobe binfmt_misc
|
||||
EOF
|
||||
chmod a+rx /usr/lib/dracut/modules.d/80obs/setup_obs.sh
|
||||
# Configure systemd in kernel-obs-build's initrd not to limit TasksMax,
|
||||
# we run with build as PID 1 (boo#965564)
|
||||
echo "DefaultTasksMax=infinity" >> /etc/systemd/system.conf
|
||||
echo "DefaultTasksAccounting=no" >> /etc/systemd/system.conf
|
||||
|
||||
# a longer list to have them also available for qemu cross builds where x86_64 kernel runs in eg. arm env.
|
||||
# this list of modules where available on build workers of build.opensuse.org, so we stay compatible.
|
||||
export KERNEL_MODULES="loop dm-mod dm-snapshot binfmt-misc fuse kqemu squashfs ext2 ext3 ext4 reiserfs btrfs nf_conntrack_ipv6 binfmt_misc virtio_pci virtio_mmio virtio_blk virtio_rng fat vfat nls_cp437 nls_iso8859-1 ibmvscsi sd_mod"
|
||||
export KERNEL_MODULES="loop dm-mod dm-snapshot binfmt-misc fuse kqemu squashfs ext2 ext3 ext4 reiserfs btrfs nf_conntrack_ipv6 binfmt_misc virtio_pci virtio_mmio virtio_blk virtio_rng fat vfat nls_cp437 nls_iso8859-1 ibmvscsi sd_mod e1000 ibmveth"
|
||||
|
||||
# manually load all modules to make sure they're available
|
||||
for i in $KERNEL_MODULES; do
|
||||
@ -131,16 +132,8 @@ ROOT=""
|
||||
/sbin/mkinitrd $ROOT \
|
||||
-m "$KERNEL_MODULES" \
|
||||
-k /boot/%{kernel_name}-*-default -M /boot/System.map-*-default -i /tmp/initrd.kvm -B
|
||||
%ifarch %ix86 x86_64
|
||||
/sbin/mkinitrd $ROOT \
|
||||
-m "$KERNEL_MODULES" \
|
||||
-k /boot/vmlinuz-xen -M /boot/System.map-*-xen -i /tmp/initrd.xen
|
||||
%endif
|
||||
%else
|
||||
dracut --host-only --drivers="$KERNEL_MODULES" --force /tmp/initrd.kvm `echo /boot/%{kernel_name}-*%{kernel_flavor} | sed -n -e 's,[^-]*-\(.*'%{kernel_flavor}'\),\1,p'`
|
||||
%ifarch %ix86 x86_64
|
||||
dracut --host-only --drivers="$KERNEL_MODULES xenblk" --force /tmp/initrd.xen `echo /boot/%{kernel_name}-*-xen | sed -n -e 's,[^-]*-\(.*-xen\),\1,p'`
|
||||
%endif
|
||||
%endif
|
||||
|
||||
|
||||
@ -151,10 +144,6 @@ rm -rf /usr/lib/dracut/modules.d/80obs
|
||||
install -d -m 0755 $RPM_BUILD_ROOT
|
||||
cp -v /boot/%{kernel_name}-*%{kernel_flavor} $RPM_BUILD_ROOT/.build.kernel.kvm
|
||||
cp -v /tmp/initrd.kvm $RPM_BUILD_ROOT/.build.initrd.kvm
|
||||
%ifarch %ix86 x86_64
|
||||
cp -v /boot/%{kernel_name}-*-xen $RPM_BUILD_ROOT/.build.kernel.xen
|
||||
cp -v /tmp/initrd.xen $RPM_BUILD_ROOT/.build.initrd.xen
|
||||
%endif
|
||||
|
||||
#inform worker about arch
|
||||
#see obs-build commit e47399d738e51
|
||||
|
42549
kernel-obs-qa.changes
42549
kernel-obs-qa.changes
File diff suppressed because it is too large
Load Diff
@ -17,7 +17,7 @@
|
||||
# needsrootforbuild
|
||||
|
||||
|
||||
%define patchversion 3.12.61
|
||||
%define patchversion 4.6.3
|
||||
%define variant %{nil}
|
||||
|
||||
%include %_sourcedir/kernel-spec-macros
|
||||
@ -28,7 +28,7 @@ BuildRequires: kernel-default
|
||||
# here as well to avoid that qa and build package build parallel
|
||||
BuildRequires: kernel-obs-build
|
||||
BuildRequires: modutils
|
||||
ExclusiveArch: aarch64 ppc64le s390x x86_64
|
||||
ExclusiveArch: aarch64 armv6hl armv7hl %ix86 ppc64 ppc64le s390x x86_64
|
||||
%if 0%{?suse_version} < 1200
|
||||
# for SLE 11
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
@ -36,9 +36,9 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Summary: Basic QA tests for the kernel
|
||||
License: GPL-2.0
|
||||
Group: SLES
|
||||
Version: 3.12.61
|
||||
Version: 4.6.3
|
||||
%if 0%{?is_kotd}
|
||||
Release: <RELEASE>.g1c2aaa5
|
||||
Release: <RELEASE>.gd4bcf2a
|
||||
%else
|
||||
Release: 0
|
||||
%endif
|
||||
|
41981
kernel-pae.changes
Normal file
41981
kernel-pae.changes
Normal file
File diff suppressed because it is too large
Load Diff
1217
kernel-pae.spec
Normal file
1217
kernel-pae.spec
Normal file
File diff suppressed because it is too large
Load Diff
42549
kernel-source.changes
42549
kernel-source.changes
File diff suppressed because it is too large
Load Diff
@ -9,3 +9,7 @@ addFilter("dangling-symlink /lib/modules/[1-9].*/source")
|
||||
addFilter("hidden-file-or-dir /usr/src/linux-.*-obj/.*/.config")
|
||||
addFilter("hidden-file-or-dir /usr/src/linux-.*-obj/.*/.kernel-binary.spec.buildenv")
|
||||
addFilter("hidden-file-or-dir /boot/\..*\.hmac")
|
||||
# This check ensures that KMPs are built using the %kernel_module_package
|
||||
# macro, but we are deliberately not doing this for KMPs built from the
|
||||
# kernel spec file (fate#319339)
|
||||
addFilter("suse-policy-kmp-missing-supplements")
|
||||
|
@ -17,8 +17,8 @@
|
||||
# icecream 0
|
||||
|
||||
|
||||
%define srcversion 3.12
|
||||
%define patchversion 3.12.61
|
||||
%define srcversion 4.6
|
||||
%define patchversion 4.6.3
|
||||
%define variant %{nil}
|
||||
%define vanilla_only 0
|
||||
|
||||
@ -30,9 +30,9 @@ Name: kernel-source
|
||||
Summary: The Linux Kernel Sources
|
||||
License: GPL-2.0
|
||||
Group: Development/Sources
|
||||
Version: 3.12.61
|
||||
Version: 4.6.3
|
||||
%if 0%{?is_kotd}
|
||||
Release: <RELEASE>.g1c2aaa5
|
||||
Release: <RELEASE>.gd4bcf2a
|
||||
%else
|
||||
Release: 0
|
||||
%endif
|
||||
@ -45,7 +45,7 @@ Requires(post): coreutils sed
|
||||
Provides: %name = %version-%source_rel
|
||||
Provides: linux
|
||||
Provides: multiversion(kernel)
|
||||
Source0: http://www.kernel.org/pub/linux/kernel/v3.x/linux-%srcversion.tar.xz
|
||||
Source0: http://www.kernel.org/pub/linux/kernel/v4.x/linux-%srcversion.tar.xz
|
||||
Source2: source-post.sh
|
||||
Source3: kernel-source.rpmlintrc
|
||||
Source8: devel-pre.sh
|
||||
@ -67,8 +67,9 @@ Source38: README.KSYMS
|
||||
Source39: config-options.changes.txt
|
||||
Source40: source-timestamp
|
||||
Source44: find-provides
|
||||
Source45: split-modules
|
||||
Source46: modversions
|
||||
Source45: find-requires
|
||||
Source46: split-modules
|
||||
Source47: modversions
|
||||
Source48: macros.kernel-source
|
||||
Source49: kernel-module-subpackage
|
||||
Source50: kabi.pl
|
||||
@ -92,7 +93,6 @@ Source69: try-disable-staging-driver
|
||||
Source70: kernel-obs-build.spec.in
|
||||
Source71: kernel-obs-qa.spec.in
|
||||
Source72: compress-vmlinux.sh
|
||||
Source90: SLES-UEFI-SIGN-Certificate-2048.crt
|
||||
Source100: config.tar.bz2
|
||||
Source101: config.addon.tar.bz2
|
||||
Source102: patches.arch.tar.bz2
|
||||
@ -109,14 +109,13 @@ Source112: patches.trace.tar.bz2
|
||||
Source113: patches.kabi.tar.bz2
|
||||
Source120: kabi.tar.bz2
|
||||
Source121: sysctl.tar.bz2
|
||||
Source122: modprobe-xen.conf
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
BuildArch: noarch
|
||||
Prefix: /usr/src
|
||||
# Source is only complete with devel files.
|
||||
Requires: kernel-devel%variant = %version-%release
|
||||
|
||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,find-provides,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh})
|
||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,find-provides,find-requires,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh})
|
||||
|
||||
%define symbols %(set -- $([ -e %_sourcedir/extra-symbols ] && cat %_sourcedir/extra-symbols) ; echo $*)
|
||||
%define variant_symbols %(case %name in (*-rt) echo "RT" ;; esac)
|
||||
@ -154,7 +153,7 @@ This package provides the rpm macros and templates for Kernel Module Pakcages
|
||||
%source_timestamp
|
||||
|
||||
%package vanilla
|
||||
Summary: Vanilla Linux kernel sources with minor build fixes.
|
||||
Summary: Vanilla Linux kernel sources with minor build fixes
|
||||
Group: Development/Sources
|
||||
AutoReqProv: off
|
||||
Provides: %name-vanilla = %version-%source_rel
|
||||
|
@ -67,8 +67,9 @@ Source38: README.KSYMS
|
||||
Source39: config-options.changes.txt
|
||||
Source40: source-timestamp
|
||||
Source44: find-provides
|
||||
Source45: split-modules
|
||||
Source46: modversions
|
||||
Source45: find-requires
|
||||
Source46: split-modules
|
||||
Source47: modversions
|
||||
Source48: macros.kernel-source
|
||||
Source49: kernel-module-subpackage
|
||||
Source50: kabi.pl
|
||||
@ -92,7 +93,6 @@ Source69: try-disable-staging-driver
|
||||
Source70: kernel-obs-build.spec.in
|
||||
Source71: kernel-obs-qa.spec.in
|
||||
Source72: compress-vmlinux.sh
|
||||
Source90: SLES-UEFI-SIGN-Certificate-2048.crt
|
||||
Source100: config.tar.bz2
|
||||
Source101: config.addon.tar.bz2
|
||||
Source102: patches.arch.tar.bz2
|
||||
@ -109,7 +109,6 @@ Source112: patches.trace.tar.bz2
|
||||
Source113: patches.kabi.tar.bz2
|
||||
Source120: kabi.tar.bz2
|
||||
Source121: sysctl.tar.bz2
|
||||
Source122: modprobe-xen.conf
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
BuildArch: noarch
|
||||
Prefix: /usr/src
|
||||
@ -154,7 +153,7 @@ This package provides the rpm macros and templates for Kernel Module Pakcages
|
||||
%source_timestamp
|
||||
|
||||
%package vanilla
|
||||
Summary: Vanilla Linux kernel sources with minor build fixes.
|
||||
Summary: Vanilla Linux kernel sources with minor build fixes
|
||||
Group: Development/Sources
|
||||
AutoReqProv: off
|
||||
Provides: %name-vanilla = %version-%source_rel
|
||||
|
42549
kernel-syms.changes
42549
kernel-syms.changes
File diff suppressed because it is too large
Load Diff
@ -24,10 +24,10 @@ Name: kernel-syms
|
||||
Summary: Kernel Symbol Versions (modversions)
|
||||
License: GPL-2.0
|
||||
Group: Development/Sources
|
||||
Version: 3.12.61
|
||||
Version: 4.6.3
|
||||
%if %using_buildservice
|
||||
%if 0%{?is_kotd}
|
||||
Release: <RELEASE>.g1c2aaa5
|
||||
Release: <RELEASE>.gd4bcf2a
|
||||
%else
|
||||
Release: 0
|
||||
%endif
|
||||
@ -38,11 +38,14 @@ Release: %kernel_source_release
|
||||
Url: http://www.kernel.org/
|
||||
AutoReqProv: off
|
||||
BuildRequires: coreutils
|
||||
%ifarch aarch64 ppc64le s390x x86_64
|
||||
%ifarch aarch64 armv6hl armv7hl %ix86 ppc64 ppc64le s390x x86_64
|
||||
Requires: kernel-default-devel = %version-%source_rel
|
||||
%endif
|
||||
%ifarch x86_64
|
||||
Requires: kernel-xen-devel = %version-%source_rel
|
||||
%ifarch armv7hl
|
||||
Requires: kernel-lpae-devel = %version-%source_rel
|
||||
%endif
|
||||
%ifarch %ix86
|
||||
Requires: kernel-pae-devel = %version-%source_rel
|
||||
%endif
|
||||
Requires: pesign-obs-integration
|
||||
Provides: %name = %version-%source_rel
|
||||
@ -50,7 +53,7 @@ Provides: multiversion(kernel)
|
||||
Source: README.KSYMS
|
||||
Requires: kernel-devel%variant = %version-%source_rel
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
ExclusiveArch: aarch64 ppc64le s390x x86_64
|
||||
ExclusiveArch: %ix86 aarch64 armv6hl armv7hl ppc64 ppc64le s390x x86_64
|
||||
Prefix: /usr/src
|
||||
|
||||
%description
|
||||
|
42549
kernel-vanilla.changes
42549
kernel-vanilla.changes
File diff suppressed because it is too large
Load Diff
@ -19,8 +19,8 @@
|
||||
# This makes the OBS store the project cert as %_sourcedir/_projectcert.crt
|
||||
# needssslcertforbuild
|
||||
|
||||
%define srcversion 3.12
|
||||
%define patchversion 3.12.61
|
||||
%define srcversion 4.6
|
||||
%define patchversion 4.6.3
|
||||
%define variant %{nil}
|
||||
%define vanilla_only 0
|
||||
|
||||
@ -28,7 +28,6 @@
|
||||
|
||||
%define build_flavor vanilla
|
||||
%define build_default ("%build_flavor" == "default")
|
||||
%define build_xen ("%build_flavor" == "xen" || "%build_flavor" == "ec2")
|
||||
%define build_vanilla ("%build_flavor" == "vanilla")
|
||||
|
||||
%if ! %build_vanilla
|
||||
@ -40,7 +39,7 @@
|
||||
%define rpm_install_dir %buildroot%obj_install_dir
|
||||
%define kernel_build_dir %my_builddir/linux-%srcversion/linux-obj
|
||||
|
||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,find-provides,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh})
|
||||
%(chmod +x %_sourcedir/{guards,apply-patches,check-for-config-changes,group-source-files.pl,find-provides,find-requires,split-modules,modversions,kabi.pl,mkspec,compute-PATCHVERSION.sh,arch-symbols,log.sh,try-disable-staging-driver,compress-vmlinux.sh})
|
||||
|
||||
%global cpu_arch %(%_sourcedir/arch-symbols %_target_cpu)
|
||||
%define cpu_arch_flavor %cpu_arch/%build_flavor
|
||||
@ -62,9 +61,9 @@ Name: kernel-vanilla
|
||||
Summary: The Standard Kernel - without any SUSE patches
|
||||
License: GPL-2.0
|
||||
Group: System/Kernel
|
||||
Version: 3.12.61
|
||||
Version: 4.6.3
|
||||
%if 0%{?is_kotd}
|
||||
Release: <RELEASE>.g1c2aaa5
|
||||
Release: <RELEASE>.gd4bcf2a
|
||||
%else
|
||||
Release: 0
|
||||
%endif
|
||||
@ -80,6 +79,8 @@ BuildRequires: modutils
|
||||
# Used to sign the kernel in the buildservice
|
||||
BuildRequires: openssl
|
||||
BuildRequires: pesign-obs-integration
|
||||
# for objtool
|
||||
BuildRequires: libelf-devel
|
||||
Provides: %name = %version-%source_rel
|
||||
# bnc#901925
|
||||
Provides: %name-%version-%source_rel
|
||||
@ -135,9 +136,6 @@ BuildRequires: dwarfextract
|
||||
%ifarch %arm
|
||||
BuildRequires: u-boot-tools
|
||||
%endif
|
||||
%if %build_xen
|
||||
#!BuildIgnore: xen
|
||||
%endif
|
||||
|
||||
Obsoletes: microcode_ctl
|
||||
|
||||
@ -154,11 +152,14 @@ Conflicts: udev < 118
|
||||
Conflicts: lvm2 < 2.02.33
|
||||
# Interface to hv_kvp_daemon changed
|
||||
Conflicts: hyper-v < 4
|
||||
%ifarch %ix86
|
||||
Conflicts: libc.so.6()(64bit)
|
||||
%endif
|
||||
Provides: kernel = %version-%source_rel
|
||||
|
||||
|
||||
%obsolete_rebuilds %name
|
||||
Source0: http://www.kernel.org/pub/linux/kernel/v3.x/linux-%srcversion.tar.xz
|
||||
Source0: http://www.kernel.org/pub/linux/kernel/v4.x/linux-%srcversion.tar.xz
|
||||
Source2: source-post.sh
|
||||
Source3: kernel-source.rpmlintrc
|
||||
Source8: devel-pre.sh
|
||||
@ -180,8 +181,9 @@ Source38: README.KSYMS
|
||||
Source39: config-options.changes.txt
|
||||
Source40: source-timestamp
|
||||
Source44: find-provides
|
||||
Source45: split-modules
|
||||
Source46: modversions
|
||||
Source45: find-requires
|
||||
Source46: split-modules
|
||||
Source47: modversions
|
||||
Source48: macros.kernel-source
|
||||
Source49: kernel-module-subpackage
|
||||
Source50: kabi.pl
|
||||
@ -205,7 +207,6 @@ Source69: try-disable-staging-driver
|
||||
Source70: kernel-obs-build.spec.in
|
||||
Source71: kernel-obs-qa.spec.in
|
||||
Source72: compress-vmlinux.sh
|
||||
Source90: SLES-UEFI-SIGN-Certificate-2048.crt
|
||||
Source100: config.tar.bz2
|
||||
Source101: config.addon.tar.bz2
|
||||
Source102: patches.arch.tar.bz2
|
||||
@ -222,10 +223,19 @@ Source112: patches.trace.tar.bz2
|
||||
Source113: patches.kabi.tar.bz2
|
||||
Source120: kabi.tar.bz2
|
||||
Source121: sysctl.tar.bz2
|
||||
Source122: modprobe-xen.conf
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
ExclusiveArch: s390x x86_64
|
||||
ExclusiveArch: aarch64 armv6hl armv7hl %ix86 ppc64 ppc64le s390x x86_64
|
||||
%define kmp_target_cpu %_target_cpu
|
||||
%ifarch %ix86
|
||||
# Only i386/default supports i586, mark other flavors' packages as i686
|
||||
%if ! %build_default
|
||||
BuildArch: i686
|
||||
# KMPs are always built as i586, because rpm does not allow to build
|
||||
# subpackages for different architectures. Therefore, we change the
|
||||
# /usr/src/linux-obj/<arch> symlink to i586.
|
||||
%define kmp_target_cpu i586
|
||||
%endif
|
||||
%endif
|
||||
|
||||
# These files are found in the kernel-source package:
|
||||
NoSource: 0
|
||||
@ -252,6 +262,7 @@ NoSource: 40
|
||||
NoSource: 44
|
||||
NoSource: 45
|
||||
NoSource: 46
|
||||
NoSource: 47
|
||||
NoSource: 48
|
||||
NoSource: 49
|
||||
NoSource: 50
|
||||
@ -275,7 +286,6 @@ NoSource: 69
|
||||
NoSource: 70
|
||||
NoSource: 71
|
||||
NoSource: 72
|
||||
NoSource: 90
|
||||
NoSource: 100
|
||||
NoSource: 101
|
||||
NoSource: 102
|
||||
@ -292,7 +302,6 @@ NoSource: 112
|
||||
NoSource: 113
|
||||
NoSource: 120
|
||||
NoSource: 121
|
||||
NoSource: 122
|
||||
|
||||
# The following KMPs have been integrated into the kernel package,
|
||||
# grouped by the last product that contained them.
|
||||
@ -342,10 +351,17 @@ Provides: ath3k-firmware = 1.0
|
||||
%obsolete_kmp compat-wireless 3.12
|
||||
%obsolete_kmp rts5229 1.08
|
||||
%obsolete_kmp rts_pstor 1.11
|
||||
# sle12-sp1 / Leap 42.1
|
||||
%obsolete_kmp xen 4.6.1
|
||||
%obsolete_kmp compat-wireless 4.4
|
||||
|
||||
# Provide the exported symbols as "ksym(symbol) = hash"
|
||||
%define _use_internal_dependency_generator 0
|
||||
%define __find_provides %_sourcedir/find-provides %name
|
||||
|
||||
# Generate dependencies for KMPs defined in supported.conf
|
||||
%define __find_requires %_sourcedir/find-requires %name %version-%release %my_builddir
|
||||
|
||||
# Will modules not listed in supported.conf abort the kernel build (0/1)?
|
||||
%define supported_modules_check 0
|
||||
|
||||
@ -375,15 +391,11 @@ mkdir -p %kernel_build_dir
|
||||
# Generate a list of modules with their support status marking
|
||||
%_sourcedir/guards --list --with-guards <%_sourcedir/supported.conf | \
|
||||
awk '
|
||||
/^\+(base|yes) / {
|
||||
print $(NF);
|
||||
next;
|
||||
}
|
||||
/^\+external / {
|
||||
/\+external / {
|
||||
print $(NF) " external";
|
||||
next;
|
||||
}
|
||||
/^[-+]/ {
|
||||
/^-/ {
|
||||
print $(NF) " no";
|
||||
next;
|
||||
}
|
||||
@ -391,8 +403,11 @@ awk '
|
||||
print $(NF);
|
||||
}
|
||||
' >%kernel_build_dir/Module.supported
|
||||
%_sourcedir/guards --default=0 base < %_sourcedir/supported.conf | \
|
||||
sed 's,.*/,,; s,\.ko$,,' | sort -u >%kernel_build_dir/Module.base
|
||||
for package in base ; do
|
||||
%_sourcedir/guards --default=0 "$package" \
|
||||
<%_sourcedir/supported.conf | sed 's,.*/,,; s,\.ko$,,' | \
|
||||
sort -u >%kernel_build_dir/Module."$package"
|
||||
done
|
||||
|
||||
cd linux-%srcversion
|
||||
|
||||
@ -423,7 +438,17 @@ if [ -f %_sourcedir/localversion ] ; then
|
||||
cat %_sourcedir/localversion > localversion
|
||||
fi
|
||||
|
||||
vanilla_base="default"
|
||||
%ifarch %ix86
|
||||
vanilla_base="pae"
|
||||
%endif
|
||||
if ! grep -q CONFIG_MMU= "%my_builddir/config/%cpu_arch_flavor"; then
|
||||
cp "%my_builddir/config/%cpu_arch/$vanilla_base" .config
|
||||
../scripts/kconfig/merge_config.sh -m .config \
|
||||
%my_builddir/config/%cpu_arch_flavor
|
||||
else
|
||||
cp %my_builddir/config/%cpu_arch_flavor .config
|
||||
fi
|
||||
if test -e %my_builddir/config.addon/%cpu_arch_flavor; then
|
||||
# FIXME: config.addon doesn't affect the %CONFIG_ macros defined at
|
||||
# the top of the specfile
|
||||
@ -461,7 +486,8 @@ fi
|
||||
make clean $MAKE_ARGS
|
||||
|
||||
rm -f source
|
||||
find . ! -type d -printf '%%P\n' > %my_builddir/obj-files
|
||||
find . ! -type d ! -name 'Module.base' ! -name 'Module.*-kmp' -printf '%%P\n' \
|
||||
> %my_builddir/obj-files
|
||||
|
||||
%build
|
||||
cd %kernel_build_dir
|
||||
@ -472,43 +498,21 @@ if test -e %my_builddir/kabi/%cpu_arch/symtypes-%build_flavor; then
|
||||
%_sourcedir/modversions --unpack . < $_
|
||||
fi
|
||||
|
||||
# copy optional module signing files:
|
||||
# *.x509, *.crt
|
||||
# - certificates with pubkeys used to verify module and firmware signatures
|
||||
# at runtime. *.crt files assumed to be in the PEM format.
|
||||
# signing_key.priv
|
||||
# - unencrypted private key used to sign modules and firmware during build
|
||||
# x509.genkey
|
||||
# - openssl req config to generate a new signing_key.{x509,priv} pair for the
|
||||
# build
|
||||
for f in %_sourcedir/*.x509 %_sourcedir/{signing_key.priv,x509.genkey}; do
|
||||
if test -e "$f"; then
|
||||
cp "$f" .
|
||||
fi
|
||||
done
|
||||
# copy module signing certificate(s)
|
||||
for f in %_sourcedir/*.crt; do
|
||||
if ! test -e "$f"; then
|
||||
continue
|
||||
fi
|
||||
out=${f##*/}
|
||||
out=${out%.crt}.x509
|
||||
openssl x509 -inform PEM -in "$f" -outform DER -out "$out"
|
||||
case "${f##*/}" in
|
||||
SLES-UEFI*.crt)
|
||||
../scripts/config --set-str CONFIG_MODULE_SIG_KEY "${f##*/}"
|
||||
cp "$f" .
|
||||
;;
|
||||
*)
|
||||
cat "$f" >>keyring.crt
|
||||
../scripts/config --set-str CONFIG_SYSTEM_TRUSTED_KEYS "keyring.crt"
|
||||
esac
|
||||
done
|
||||
# Convince kernel/Makefile not to generate a new keypair
|
||||
touch x509.genkey
|
||||
touch signing_key.x509
|
||||
%if %build_vanilla
|
||||
# workaround for the 3.12 vanilla kernel which does not have
|
||||
# f0e6d22 ("KEYS: Load *.x509 files into kernel keyring)
|
||||
# but supports an "extra_certificates" file instead
|
||||
for f in *.x509; do
|
||||
if test ! -e "$f" -o "$f" = "signing_key.x509"; then
|
||||
continue
|
||||
fi
|
||||
cat "$f" >>extra_certificates
|
||||
done
|
||||
%endif
|
||||
|
||||
|
||||
MAKE_ARGS="$MAKE_ARGS %{?_smp_mflags}"
|
||||
|
||||
@ -540,6 +544,11 @@ export BRP_PESIGN_FILES="*.ko"
|
||||
%if %CONFIG_EFI_STUB == "y"
|
||||
BRP_PESIGN_FILES="$BRP_PESIGN_FILES /boot/vmlinuz-%kernelrelease-%build_flavor"
|
||||
%endif
|
||||
%ifarch %ix86
|
||||
# XXX: do not sign on x86, as the repackaging changes kernel-pae
|
||||
# from i686 to i586
|
||||
BRP_PESIGN_FILES=""
|
||||
%endif
|
||||
|
||||
# get rid of /usr/lib/rpm/brp-strip-debug
|
||||
# strip removes too much from the vmlinux ELF binary
|
||||
@ -588,9 +597,6 @@ add_vmlinux()
|
||||
%ifarch %ix86 x86_64
|
||||
add_vmlinux --compressed
|
||||
image=bzImage
|
||||
%if %build_xen
|
||||
test -f arch/x86/boot/$image || image=vmlinuz
|
||||
%endif
|
||||
cp -p arch/x86/boot/$image %buildroot/boot/vmlinuz-%kernelrelease-%build_flavor
|
||||
image=vmlinuz
|
||||
%endif
|
||||
@ -648,12 +654,6 @@ if test %CONFIG_MODULE_SIG = "y"; then
|
||||
done
|
||||
fi
|
||||
|
||||
# Install the frontend driver selector file for xen/ec2
|
||||
%if %build_xen
|
||||
mkdir -p %buildroot/etc/modprobe.d
|
||||
cp %_sourcedir/modprobe-xen.conf %buildroot/etc/modprobe.d/50-xen.conf
|
||||
%endif
|
||||
|
||||
for sub in '-base' '' '-extra'; do
|
||||
case "$sub" in
|
||||
'-base' | '') base_package=1 ;;
|
||||
@ -691,7 +691,7 @@ for sub in '-base' '' '-extra'; do
|
||||
done
|
||||
done
|
||||
|
||||
%if %build_xen || %build_vanilla
|
||||
%if %build_vanilla
|
||||
# keep this -suffix list in sync with post.sh and postun.sh
|
||||
suffix=-%build_flavor
|
||||
%endif
|
||||
@ -783,7 +783,7 @@ if [ %CONFIG_MODULES = y ]; then
|
||||
%if %split_base
|
||||
%_sourcedir/split-modules -d %buildroot \
|
||||
-o %my_builddir \
|
||||
-b %kernel_build_dir/Module.base \
|
||||
-b %kernel_build_dir \
|
||||
%if %CONFIG_SUSE_KERNEL_SUPPORTED == "y"
|
||||
-e \
|
||||
%endif
|
||||
@ -794,18 +794,18 @@ if [ %CONFIG_MODULES = y ]; then
|
||||
cat %my_builddir/unsupported-modules >>%my_builddir/main-modules
|
||||
%endif
|
||||
|
||||
# The modules.dep file is sorted randomly which produces strange file
|
||||
# checksums. As the file is not included in the resulting RPM, it's
|
||||
# pointless to rely on its contents. Replacing by zeros to make the
|
||||
# checksums always the same for several builds of the same package.
|
||||
dd if=/dev/zero of=%buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep ibs=`stat -c%s %buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep` count=1
|
||||
|
||||
%else
|
||||
( cd %buildroot
|
||||
find lib/modules/%kernelrelease-%build_flavor -type f -name '*.ko' -printf '/%%p\n'
|
||||
) > %my_builddir/base-modules
|
||||
%endif
|
||||
|
||||
# The modules.dep file is sorted randomly which produces strange file
|
||||
# checksums. As the file is not included in the resulting RPM, it's
|
||||
# pointless to rely on its contents. Replacing by zeros to make the
|
||||
# checksums always the same for several builds of the same package.
|
||||
dd if=/dev/zero of=%buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep ibs=`stat -c%s %buildroot/lib/modules/%kernelrelease-%build_flavor/modules.dep` count=1
|
||||
|
||||
res=0
|
||||
if test -e %my_builddir/kabi/%cpu_arch/symvers-%build_flavor; then
|
||||
# check for kabi changes
|
||||
@ -912,26 +912,35 @@ done | add_dirs_to_filelist >%my_builddir/kernel-devel.files
|
||||
if test %CONFIG_MODULE_SIG = "y" -a -d etc/uefi/certs; then
|
||||
find etc/uefi/certs -type f -printf '/%%p\n'
|
||||
fi
|
||||
# optional per-kernel-release module config workarounds
|
||||
if test -d etc/modprobe.d; then
|
||||
find etc/modprobe.d -type f -printf '%%%%config(noreplace) /%%p\n'
|
||||
if test -d lib/firmware/%kernelrelease-%build_flavor; then
|
||||
%if %split_base
|
||||
echo "%%dir /lib/firmware/%kernelrelease-%build_flavor"
|
||||
cat %my_builddir/base-firmware
|
||||
%else
|
||||
echo "/lib/firmware/%kernelrelease-%build_flavor"
|
||||
%endif
|
||||
fi
|
||||
test -d lib/firmware/%kernelrelease-%build_flavor && \
|
||||
find lib/firmware/%kernelrelease-%build_flavor \
|
||||
-type d -o \
|
||||
-printf '/%%p\n'
|
||||
if [ -e .%_docdir/%name ]; then
|
||||
echo "%%doc %_docdir/%name"
|
||||
fi
|
||||
} | sort -u | add_dirs_to_filelist >%my_builddir/kernel-base.files
|
||||
|
||||
%if %split_base
|
||||
add_dirs_to_filelist %my_builddir/{kernel-base.files,main-modules} \
|
||||
> %my_builddir/kernel-main.files
|
||||
{
|
||||
add_dirs_to_filelist %my_builddir/{kernel-base.files,main-modules}
|
||||
if test -d %buildroot/lib/firmware/%kernelrelease-%build_flavor; then
|
||||
echo "/lib/firmware/%kernelrelease-%build_flavor"
|
||||
fi
|
||||
} > %my_builddir/kernel-main.files
|
||||
%endif
|
||||
%if %split_extra
|
||||
add_dirs_to_filelist %my_builddir/unsupported-modules > %my_builddir/kernel-extra.files
|
||||
%endif
|
||||
for f in %my_builddir/*-kmp-modules; do
|
||||
f2=${f%%-modules}.files
|
||||
add_dirs_to_filelist "$f" >"$f2"
|
||||
done
|
||||
|
||||
|
||||
# Hardlink duplicate files automatically (from package fdupes): It doesn't save
|
||||
# much, but it keeps rpmlint from breaking the package build. Note that we skip
|
||||
@ -988,6 +997,9 @@ Requires(post): distribution-release
|
||||
|
||||
|
||||
%obsolete_rebuilds %name-base
|
||||
%ifarch %ix86
|
||||
Conflicts: libc.so.6()(64bit)
|
||||
%endif
|
||||
|
||||
%description base
|
||||
The standard kernel - without any SUSE patches
|
||||
@ -1025,6 +1037,9 @@ Requires(post): mkinitrd
|
||||
|
||||
%obsolete_rebuilds %name-extra
|
||||
Supplements: packageand(product(SUSE_SLED):%{name}_%_target_cpu)
|
||||
%ifarch %ix86
|
||||
Conflicts: libc.so.6()(64bit)
|
||||
%endif
|
||||
|
||||
%description extra
|
||||
The standard kernel - without any SUSE patches
|
||||
@ -1050,7 +1065,7 @@ This package contains additional modules not supported by Novell.
|
||||
%if %CONFIG_KMSG_IDS == "y"
|
||||
|
||||
%package man
|
||||
Summary: The collection of man pages generated by the kmsg script.
|
||||
Summary: The collection of man pages generated by the kmsg script
|
||||
Group: System/Kernel
|
||||
|
||||
%description man
|
||||
@ -1071,6 +1086,9 @@ Provides: %name-devel = %version-%source_rel
|
||||
Provides: multiversion(kernel)
|
||||
%if ! %build_vanilla
|
||||
Requires: kernel-devel%variant = %version-%source_rel
|
||||
Recommends: make
|
||||
Recommends: gcc
|
||||
Recommends: perl
|
||||
Supplements: packageand(%name:kernel-devel%variant)
|
||||
%else
|
||||
Requires: kernel-source-vanilla = %version-%source_rel
|
||||
@ -1106,4 +1124,26 @@ kernel module packages) against the %build_flavor flavor of the kernel.
|
||||
%endif
|
||||
%endif
|
||||
|
||||
%if %CONFIG_MODULES == "y" && %CONFIG_SUSE_KERNEL_SUPPORTED == "y"
|
||||
%package kgraft
|
||||
Summary: Metapackage to pull in matching kgraft-patch package
|
||||
Group: System/Kernel
|
||||
Requires: kgraft-patch-%(echo %version-%source_rel | sed 'y/\./_/')-%build_flavor
|
||||
Provides: multiversion(kernel)
|
||||
|
||||
%description kgraft
|
||||
This is a metapackage that pulls in the matching kgraft-patch package for a
|
||||
given kernel version. The advantage of the metapackage is that its name is
|
||||
static, unlike the kgraft-patch-<kernel-version>-flavor package names.
|
||||
|
||||
%files kgraft
|
||||
# rpmlint complains about empty packages, so lets own something
|
||||
%defattr(-, root, root)
|
||||
%dir /lib/modules/%kernelrelease-%build_flavor
|
||||
%endif
|
||||
|
||||
%if %split_base
|
||||
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
|
3
linux-4.6.tar.xz
Normal file
3
linux-4.6.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:a93771cd5a8ad27798f22e9240538dfea48d3a2bf2a6a6ab415de3f02d25d866
|
||||
size 89461728
|
57
mkspec
57
mkspec
@ -23,6 +23,8 @@ my %syms_flavor_archs = parse_config_conf("syms");
|
||||
# template name -> template body
|
||||
my %templates = read_spec_templates();
|
||||
|
||||
my @kmps = read_kmps();
|
||||
|
||||
# config.sh variables
|
||||
my %vars = parse_config_sh();
|
||||
my ($srcversion, $variant, $vanilla_only) =
|
||||
@ -88,6 +90,23 @@ my %macros = (
|
||||
);
|
||||
|
||||
# binary spec files
|
||||
my $kmp_definitions = "";
|
||||
for my $kmp (@kmps) {
|
||||
my ($summary, $description);
|
||||
if (!exists($binary_descriptions{$kmp})) {
|
||||
print STDERR "warning: no description for $kmp found\n";
|
||||
($summary = $kmp) =~ s/-kmp$//;
|
||||
$summary .= " kernel modules";
|
||||
$description = "$summary.";
|
||||
} else {
|
||||
$summary = $binary_descriptions{$kmp}->[0];
|
||||
$description = $binary_descriptions{$kmp}->[1];
|
||||
}
|
||||
$kmp_definitions .= expand_template("kmp",
|
||||
KMP_NAME => $kmp,
|
||||
KMP_SUMMARY => $summary,
|
||||
KMP_DESCRIPTION => $description);
|
||||
}
|
||||
for my $flavor (sort keys(%flavor_archs)) {
|
||||
my ($summary, $description);
|
||||
if (!exists($binary_descriptions{"kernel-$flavor"})) {
|
||||
@ -112,6 +131,8 @@ for my $flavor (sort keys(%flavor_archs)) {
|
||||
DESCRIPTION => $description,
|
||||
ARCHS => join(" ", arch2rpm(@{$flavor_archs{$flavor}})),
|
||||
COMMON_DEPS => $templates{common_deps},
|
||||
KMPS => join(" ", @kmps),
|
||||
KMP_DEFINITIONS => $kmp_definitions,
|
||||
%obsolete_macros
|
||||
);
|
||||
}
|
||||
@ -216,6 +237,12 @@ sub read_spec_templates {
|
||||
print STDERR "warning: Expected # BEGIN COMMON DEPS in kernel-binary.spec.in\n";
|
||||
$res{common_deps} = "";
|
||||
}
|
||||
if ($res{$template} =~ s/^# BEGIN KMP\n?(.*)^# END KMP/\@KMP_DEFINITIONS\@/ms) {
|
||||
$res{kmp} = $1;
|
||||
} else {
|
||||
print STDERR "warning: Expected # BEGIN KMP in kernel-binary.spec.in\n";
|
||||
$res{kmp} = "";
|
||||
}
|
||||
}
|
||||
{
|
||||
xopen(my $fh, '<', "$dir/constraints.in");
|
||||
@ -290,6 +317,24 @@ sub parse_descriptions {
|
||||
return %res;
|
||||
}
|
||||
|
||||
sub read_kmps {
|
||||
my %res;
|
||||
|
||||
open(my $fh, '-|', "$dir/guards", "--list", "--with-guards",
|
||||
"-c", "$dir/supported.conf") or die "Error running guards: $!\n";
|
||||
while (<$fh>) {
|
||||
my @guards = split(' ');
|
||||
pop(@guards);
|
||||
for my $g (@guards) {
|
||||
if ($g =~ /^\+(.*-kmp)$/) {
|
||||
$res{$1} = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
close($fh) or die "Error running guards: $!\n";
|
||||
return sort(keys(%res));
|
||||
}
|
||||
|
||||
sub parse_old_flavors{
|
||||
my %res;
|
||||
|
||||
@ -394,9 +439,8 @@ sub get_commit {
|
||||
return $commit;
|
||||
}
|
||||
|
||||
sub do_spec {
|
||||
sub expand_template {
|
||||
my $template = shift;
|
||||
my $specfile = shift;
|
||||
my %macros = @_;
|
||||
|
||||
my $text = $templates{$template};
|
||||
@ -407,6 +451,15 @@ sub do_spec {
|
||||
$text =~ s/\@$m\@/$macros{$m}/g;
|
||||
}
|
||||
} while ($prev_text ne $text);
|
||||
return $text;
|
||||
}
|
||||
|
||||
sub do_spec {
|
||||
my $template = shift;
|
||||
my $specfile = shift;
|
||||
my %macros = @_;
|
||||
|
||||
my $text = expand_template($template, %macros);
|
||||
print "$specfile\n";
|
||||
xopen(my $fh, '>', "$dir/$specfile");
|
||||
print $fh $text;
|
||||
|
35
old-flavors
35
old-flavors
@ -1,10 +1,45 @@
|
||||
# List of obsolete kernel flavors
|
||||
# <arch>/<new flavor> <old flavor> <upper bound of shipped versions>
|
||||
|
||||
# SLES 9
|
||||
ia64/default sn2 2.6.6
|
||||
|
||||
ppc/ppc64 pmac64 2.6.6
|
||||
ppc/ppc64 pseries64 2.6.6
|
||||
|
||||
# SLES 10
|
||||
i386/default smp 2.6.17
|
||||
i386/pae bigsmp 2.6.17
|
||||
i386/xen xenpae 2.6.17
|
||||
|
||||
x86_64/default smp 2.6.17
|
||||
|
||||
ppc/ppc64 iseries64 2.6.17
|
||||
ppc/ppc64 kdump 2.6.17
|
||||
|
||||
# SLES 11 GA only
|
||||
# FIXME: more architectures had kdump in SLES 10
|
||||
ppc64/debug kdump 2.6.28
|
||||
ppc64/default kdump 2.6.28
|
||||
ppc64/ppc64 kdump 2.6.28
|
||||
ppc64/trace kdump 2.6.28
|
||||
|
||||
# SLES 11 GA only / 11.4
|
||||
i386/pae vmi 2.6.38
|
||||
|
||||
# SLES 11 SP3 / openSUSE 13.1
|
||||
i386/default trace 3.13
|
||||
|
||||
x86_64/default trace 3.13
|
||||
x86_64/default bigsmp 3.1
|
||||
|
||||
s390x/default trace 3.13
|
||||
|
||||
# openSUSE 13.2 / Tumbleweed until 2015-10-01
|
||||
i386/pae desktop 4.3
|
||||
x86_64/default desktop 4.3
|
||||
|
||||
i386/pae xen 4.4
|
||||
i386/pae ec2 4.4
|
||||
x86_64/default xen 4.4
|
||||
x86_64/default ec2 4.4
|
||||
|
@ -20,6 +20,18 @@ The Standard Kernel
|
||||
|
||||
The standard kernel for both uniprocessor and multiprocessor systems.
|
||||
|
||||
=== kernel-pae ===
|
||||
Kernel with PAE Support
|
||||
|
||||
This kernel supports up to 64GB of main memory. It requires Physical
|
||||
Addressing Extensions (PAE), which were introduced with the Pentium Pro
|
||||
processor.
|
||||
|
||||
PAE is not only more physical address space but also important for the
|
||||
"no execute" feature which disables execution of code that is marked as
|
||||
non-executable. Therefore, the PAE kernel should be used on any systems
|
||||
that support it, regardless of the amount of main memory.
|
||||
|
||||
=== kernel-vanilla ===
|
||||
The Standard Kernel - without any SUSE patches
|
||||
|
||||
@ -38,8 +50,37 @@ The Amazon EC2 Xen Kernel
|
||||
|
||||
The Linux kernel for Xen paravirtualization.
|
||||
|
||||
This kernel can only be used both as an unprivileged ("xenU")
|
||||
kernel (for Amazon EC2).
|
||||
This kernel can only be used as an unprivileged ("xenU") kernel
|
||||
(mainly, but not exclusively, for Amazon EC2).
|
||||
|
||||
=== kernel-pv ===
|
||||
The para-virtualized Kernel
|
||||
|
||||
The Linux kernel for Xen (and other) paravirtualization, using pv-ops
|
||||
in the Xen/x86 case, in which case it can be used both as the domain0
|
||||
("xen0") and as an unprivileged ("xenU") kernel.
|
||||
|
||||
=== kernel-lpae ===
|
||||
Kernel for LPAE enabled systems
|
||||
|
||||
The kernel for all 32-bit ARM platforms that support LPAE. This includes all
|
||||
Cortex A15 based SoCs, like the Exynos5, OMAP5 or Calxeda ECX-2000.
|
||||
|
||||
=== kernel-cubox ===
|
||||
Kernel for SolidRun Cubox
|
||||
|
||||
The standard kernel for Marvell Dove SoC, as found in
|
||||
the SolidRun Cubox.
|
||||
|
||||
=== kernel-exynos ===
|
||||
Kernel for Samsung's Exynos SoC
|
||||
|
||||
The standard kernel for Samsung's Exynos 4 & 5 SoC, as found in the Origen board.
|
||||
|
||||
=== kernel-versatile ===
|
||||
Kernel for Versatile SoC
|
||||
|
||||
The standard kernel for Versatile SoC, or for emulation with QEMU.
|
||||
|
||||
=== kernel-zfcpdump ===
|
||||
The IBM System Z zfcpdump Kernel
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:64999760d0fd4940838022648dd94e6461f8f253fe7f43603e2c08e46dece9dd
|
||||
size 6317
|
||||
oid sha256:c25c250242611927b31cfa921fd04b7a4b2b174bf866533c1adb6cc15aec17ee
|
||||
size 6206
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:7e86c0031ee2c41c0236b54d7b1db4583aa7af6b3d808f4276f984174f6fd539
|
||||
size 834000
|
||||
oid sha256:21df83b915ff06c7edb0a3fa34ac1e5724db276f0c515119919ebe14390a5fe9
|
||||
size 200984
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5e31aceeb662b9760292d17fdac646e670d610f4e0fee5dae45b6bd48c12e6e8
|
||||
size 2328266
|
||||
oid sha256:a2bd76db12bf5bdcb463cd7771cf9eb01f8efb4a2eefca55eae215fb20bd90df
|
||||
size 4964
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:38090b8dd61d69a4ebed612fd66b15bbaec0448aeaec8a50ba1f07f982112e61
|
||||
size 640765
|
||||
oid sha256:c3387a1daf18c80ddd6bddb79ddee608cf5b91cd17da4c10fa5a01edcd9f941d
|
||||
size 12282
|
||||
|
BIN
patches.kabi.tar.bz2
(Stored with Git LFS)
BIN
patches.kabi.tar.bz2
(Stored with Git LFS)
Binary file not shown.
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:2e3f3b91c84f208c9ba32460c56ec8d8697246890dd2f33b6ab70d342efb511f
|
||||
size 2188848
|
||||
oid sha256:0e33bc8d20f98fd909fd090248cb8e01645495b34f30e6f87ce6ce982f568536
|
||||
size 115840
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:c5e245dbca71b5da1bd1a8dc3a91fa7510dedfe678e02c25f5f79826093b5b2b
|
||||
size 3679
|
||||
oid sha256:90b3565e7317ba1dcd9dfda42b02258a83916b1aa1d75f3c8e6fff099fc69c9f
|
||||
size 2828
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:a23cdda5c3f708dd42bbb3f1b064cf7a844f9e34dc5abcf888511571385829b0
|
||||
size 1681159
|
||||
oid sha256:d963b35132f29fe1abc9822d43d08f6fa5859a2af3709179e2006fa4381a6e2c
|
||||
size 59843
|
||||
|
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:5e908b95bb0ed533830acc5d8c703955160ad3495520e6205d8b5829fcc18309
|
||||
size 1909883
|
||||
oid sha256:6dfe8549f6e38f0b10c457737af3d0abb9e8001f0716350e97012671ec1657b6
|
||||
size 130
|
||||
|
8
post.sh
8
post.sh
@ -2,11 +2,9 @@
|
||||
touch /boot/do_purge_kernels
|
||||
|
||||
suffix=
|
||||
case @FLAVOR@ in
|
||||
xen*|ec2|vanilla)
|
||||
suffix=-@FLAVOR@
|
||||
;;
|
||||
esac
|
||||
if test "@FLAVOR@" = "vanilla"; then
|
||||
suffix=-@FLAVOR@
|
||||
fi
|
||||
for x in /boot/@IMAGE@ /boot/initrd; do
|
||||
rm -f $x$suffix
|
||||
ln -s ${x##*/}-@KERNELRELEASE@-@FLAVOR@ $x$suffix
|
||||
|
7278
series.conf
7278
series.conf
File diff suppressed because it is too large
Load Diff
@ -1,3 +1,3 @@
|
||||
2016-06-15 16:03:26 +0200
|
||||
GIT Revision: 1c2aaa5c797fabfd29562f85592cabd6465e6191
|
||||
GIT Branch: SLE12
|
||||
2016-06-26 09:34:33 +0200
|
||||
GIT Revision: d4bcf2abd85a8d69da9d3f3e4e5dc57c556bca61
|
||||
GIT Branch: stable
|
||||
|
@ -19,7 +19,7 @@ if test $? -ne 0; then
|
||||
exit 1
|
||||
fi
|
||||
eval set -- "$options"
|
||||
opt_base=
|
||||
opt_builddir=
|
||||
opt_out=.
|
||||
opt_dir=.
|
||||
opt_ignore_errors=false
|
||||
@ -34,7 +34,7 @@ while test $# -gt 0; do
|
||||
esac
|
||||
case "$opt" in
|
||||
-b)
|
||||
opt_base=$arg ;;
|
||||
opt_builddir=$arg ;;
|
||||
-d)
|
||||
opt_dir=$arg ;;
|
||||
-o)
|
||||
@ -50,7 +50,7 @@ while test $# -gt 0; do
|
||||
exit 1
|
||||
esac
|
||||
done
|
||||
if test -z "$opt_base"; then
|
||||
if test -z "$opt_builddir"; then
|
||||
usage >&2
|
||||
exit 1
|
||||
fi
|
||||
@ -110,15 +110,34 @@ add_dependent_modules()
|
||||
}
|
||||
|
||||
# base
|
||||
sed 'y/-/_/' <"$opt_base" | add_dependent_modules >"$tmp/base"
|
||||
sed 'y/-/_/' <"$opt_builddir/Module.base" | add_dependent_modules >"$tmp/base"
|
||||
join -j 1 -o 2.2 "$tmp/base" "$tmp/all" >"$opt_out/base-modules"
|
||||
|
||||
# base firmware
|
||||
kver=$(make -s -C "$opt_builddir" kernelrelease)
|
||||
if test -d "$opt_dir/lib/firmware/$kver"; then
|
||||
join <(/sbin/modinfo -F firmware \
|
||||
$(sed "s:^:$opt_dir:" "$opt_out/base-modules") | sort) \
|
||||
<(find "$opt_dir/lib/firmware/$kver" -type f -printf '%P\n' | sort)
|
||||
fi | sed "s:^:/lib/firmware/$kver/:" >"$opt_out/base-firmware"
|
||||
|
||||
# kmps
|
||||
for f in "$opt_builddir"/Module.*-kmp; do
|
||||
kmp=${f##*/Module.}
|
||||
sed 'y/-/_/' <"$f" >"$tmp/$kmp"
|
||||
join -j 1 -o 2.2 "$tmp/$kmp" "$tmp/all" >"$opt_out/$kmp-modules"
|
||||
cat "$tmp/$kmp"
|
||||
done | sort -u >"$tmp/kmp-all"
|
||||
join -v1 "$tmp/supp" "$tmp/kmp-all" >"$tmp/supp-main"
|
||||
|
||||
# main
|
||||
add_dependent_modules "$tmp/supp-explain" <"$tmp/supp" >"$tmp/supp-all"
|
||||
if ! cmp -s "$tmp/supp" "$tmp/supp-all"; then
|
||||
add_dependent_modules "$tmp/supp-explain" <"$tmp/supp-main" >"$tmp/supp-all"
|
||||
if ! cmp -s "$tmp/supp-main" "$tmp/supp-all"; then
|
||||
# FIXME: Error message not accurate if a supported KMP module is
|
||||
# needed by a module in the main package
|
||||
echo "The following unsupported modules are used by supported modules:" >&2
|
||||
join -j1 -a2 <(sort "$tmp/supp-explain") \
|
||||
<(join -v2 "$tmp/supp" "$tmp/supp-all") >&2
|
||||
<(join -v2 "$tmp/supp-main" "$tmp/supp-all") >&2
|
||||
echo "Please fix supported.conf." >&2
|
||||
if ! $opt_ignore_errors; then
|
||||
exit 1
|
||||
@ -127,7 +146,7 @@ fi
|
||||
join -j 1 -o 2.2 "$tmp/supp-all" "$tmp/all" >"$opt_out/main-modules"
|
||||
|
||||
# unsupported
|
||||
join -j 1 -v 2 -o 2.2 "$tmp/supp-all" "$tmp/all" >"$opt_out/unsupported-modules"
|
||||
join -j 1 -v 2 -o 2.2 <(sort -u "$tmp/supp-all" "$tmp/kmp-all") "$tmp/all" >"$opt_out/unsupported-modules"
|
||||
|
||||
exit 0
|
||||
|
||||
|
2406
supported.conf
2406
supported.conf
File diff suppressed because it is too large
Load Diff
@ -1,3 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:4f52f53a399072b4b65065e3e6a7d8644e7b6d7cec0d95ce99c25498d5211210
|
||||
size 870
|
||||
oid sha256:f9b11db009db01d930ee604ba73105eb260790a62fdf3daf5521cb0aeacc22c3
|
||||
size 841
|
||||
|
Loading…
Reference in New Issue
Block a user