From 0c8c2bc67ffba7dbe60dff41c4d1b0c96a749db5 Mon Sep 17 00:00:00 2001 From: brian Date: Tue, 30 Jun 2009 21:15:16 +0000 Subject: [PATCH] (Finally!) remove the additional -lustre tag from the Lustre kernel RPM names. The code is still there to do it, although it's now optionalized with the default being to remove the tag. --- build/lbuild | 4 +++- build/lbuild-rhel5 | 33 ++++++++++++++++++++++++--------- build/lbuild-sles | 6 +++++- build/lbuild-sles10 | 23 +++++++++++++++-------- build/lbuild-sles11 | 21 ++++++++++++++------- 5 files changed, 61 insertions(+), 26 deletions(-) diff --git a/build/lbuild b/build/lbuild index cfbd8b2..eabe863 100755 --- a/build/lbuild +++ b/build/lbuild @@ -46,6 +46,8 @@ XEN=false LINUXOBJ= DISTRO= KERNELTREE= +# default to not adding -lustre- into the kernel RPM package names +KERNEL_LUSTRE_NAMING=false # patchless build KERNELRPMSBASE= @@ -1177,7 +1179,7 @@ build_with_srpm() { for arch in $BUILD_ARCHS; do local kernel_devel_rpm - if ! kernel_devel_rpm=$(find_rpm "$TOPDIR/RPMS/$arch/" provides "^$(devel_kernel_name true) ="); then + if ! kernel_devel_rpm=$(find_rpm "$TOPDIR/RPMS/$arch/" provides "^$(devel_kernel_name $KERNEL_LUSTRE_NAMING) ="); then fatal 1 "Failed to find a kernel development RPM in $TOPDIR/RPMS/$arch/" fi diff --git a/build/lbuild-rhel5 b/build/lbuild-rhel5 index 111733a..4238182 100644 --- a/build/lbuild-rhel5 +++ b/build/lbuild-rhel5 @@ -2,7 +2,8 @@ # increment this if you have made a change that should force a new kernel # to build built -BUILD_GEN=1 +#BUILD_GEN=1 +BUILD_GEN=2 # bz19952: remove -lustre tag from kernel RPM names DEVEL_KERNEL_TYPE="devel" @@ -37,7 +38,6 @@ EOF # edit the SPEC with our changes sed -i -e 's/^\(%define signmodules \).*/\10/' \ -e "s/^#% \(define buildid\).*/%\1 ${buildid}/" \ - -e 's/^\(Name:.*kernel\)/\1-lustre/' \ -e '/-e $RPM_SOURCE_DIR\/kabi_whitelist_/i\ rm -f $RPM_SOURCE_DIR/kabi_whitelist_%{_target_cpu}$Flavour' \ -e '/_sourcedir\/kabitool -b \./a\ @@ -52,22 +52,33 @@ Patch99995: linux-%{kversion}-lustre.patch' \ -e '/^%prep$/,/^# END OF PATCH APPLICATIONS$/s/kernel-%{kversion}/%{name}-%{kversion}/g' \ -e '/find $RPM_BUILD_ROOT\/lib\/modules\/$KernelVer/a\ cp -a fs/ext3/* $RPM_BUILD_ROOT/lib/modules/$KernelVer/build/fs/ext3' \ - -e '/^Provides: glibc-kernheaders = /a\ + SPECS/kernel-2.6.spec + + if $KERNEL_LUSTRE_NAMING; then + # these are all of the changes needed because we change the package names + # to kernel-lustre-*. these should all go away when we stop this insanity + sed -i -e 's/^\(Name:.*kernel\)/\1-lustre/' \ + -e '/^Provides: glibc-kernheaders = /a\ Provides: kernel-headers = %{rpmversion}-%{release} +Obsoletes: kernel-headers ' \ - -e '/^Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release}$/a\ + -e '/^Provides: kernel-%{_target_cpu} = %{rpmversion}-%{release}$/a\ Provides: kernel = %{rpmversion}-%{release} ' \ - -e '/^Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}$/a\ + -e '/^Provides: kernel-devel-%{_target_cpu} = %{rpmversion}-%{release}$/a\ Provides: kernel-devel = %{rpmversion}-%{release} +Obsoletes: kernel-devel ' \ - -e '/^Provides: %{name}-debuginfo-common-%{_target_cpu} = %{KVERREL}$/a\ + -e '/^Provides: %{name}-debuginfo-common-%{_target_cpu} = %{KVERREL}$/a\ Provides: kernel-debuginfo-common = %{KVERREL} +Obsoletes: kernel-debuginfo-common ' \ - -e '/^Provides: %{name}-debuginfo-%{_target_cpu} = %{KVERREL}$/a\ + -e '/^Provides: %{name}-debuginfo-%{_target_cpu} = %{KVERREL}$/a\ Provides: kernel-debuginfo = %{KVERREL} +Obsoletes: kernel-debuginfo ' \ - SPECS/kernel-2.6.spec + SPECS/kernel-2.6.spec + fi # XXX - a building-on-Ubuntu hack if grep -q "Ubuntu" /etc/issue; then @@ -167,5 +178,9 @@ rpm_BUILD_kernel_dirname() { local lnxmin="$3" local arch="$4" - echo kernel-lustre${lnxmaj}${lnxmin}/linux-${lnxmaj}.$arch + local lustre="" + if $KERNEL_LUSTRE_NAMING; then + $lustre="-lustre" + fi + echo kernel${lustre}${lnxmaj}${lnxmin}/linux-${lnxmaj}.$arch } diff --git a/build/lbuild-sles b/build/lbuild-sles index 5b97064..31fd5d6 100644 --- a/build/lbuild-sles +++ b/build/lbuild-sles @@ -75,5 +75,9 @@ rpm_BUILD_kernel_dirname() { local lnxmin="$3" local arch="$4" - echo kernel-lustre-${rpmsmptype}-${lnxmaj}${lnxmin}/linux-${lnxmaj} + local lustre="" + if $KERNEL_LUSTRE_NAMING; then + $lustre="-lustre" + fi + echo kernel${lustre}-${rpmsmptype}-${lnxmaj}${lnxmin}/linux-${lnxmaj} } diff --git a/build/lbuild-sles10 b/build/lbuild-sles10 index d2296e0..a35607d 100644 --- a/build/lbuild-sles10 +++ b/build/lbuild-sles10 @@ -2,7 +2,8 @@ # increment this if you have made a change that should force a new kernel # to build built -BUILD_GEN=1 +#BUILD_GEN=1 +BUILD_GEN=2 # bz19952: remove -lustre tag from kernel RPM names source ${0%/*}/lbuild-sles @@ -12,21 +13,27 @@ edit_specs() { local spec for spec in $RPMSMPTYPE source; do #cp $TOPDIR/SPECS/kernel-$spec.spec{,.orig} - sed -i -e 's/^\(Name:.*kernel-\)\(.*\)/\1lustre-\2/' \ - -e "s/^Release:.*/&_${buildid}/" \ - -e "/^Provides: *kernel = /a\ -Provides: kernel-$spec = %{version}-%{release} -" \ + sed -i -e "s/^Release:.*/&_${buildid}/" \ -e "s/^ExclusiveArch:.*/& ppc ppc64/" \ -e '/^# Apply the patches needed for this architecture\./a\ cp %_sourcedir/linux-2.6.16-lustre.patch %_builddir/%{name}-%{version}/lustre.patch\ ! grep -q lustre.patch %_sourcedir/series.conf && echo -e "\\n\\tlustre.patch" >> %_sourcedir/series.conf' \ -e "/flavor=\${config/a\ [ \"\$flavor\" == \"$RPMSMPTYPE\" ] || continue" \ - -e 's/\(.*\)\([^#].*\)fookernel-source/\1\2kernel-lustre-source/g' \ - -e '/^%build/,/^%changelog/s/kernel-\({*\)source/kernel-\1lustre-source/g' \ SPECS/kernel-${spec}.spec + if $KERNEL_LUSTRE_NAMING; then + # these are all of the changes needed because we change the package names + # to kernel-lustre-*. these should all go away when we stop this insanity + sed -i -e 's/^\(Name:.*kernel-\)\(.*\)/\1lustre-\2/' \ + -e "/^Provides: *kernel = /a\ +Provides: kernel-$spec = %{version}-%{release} +" \ + -e 's/\(.*\)\([^#].*\)fookernel-source/\1\2kernel-lustre-source/g' \ + -e '/^%build/,/^%changelog/s/kernel-\({*\)source/kernel-\1lustre-source/g' \ + SPECS/kernel-${spec}.spec + fi + # XXX - a building-on-Ubuntu hack if grep -q "Ubuntu" /etc/issue; then sed -i -e '/^%_sourcedir\/install-configs %_sourcedir .*/i\ diff --git a/build/lbuild-sles11 b/build/lbuild-sles11 index daf057f..18fa654 100644 --- a/build/lbuild-sles11 +++ b/build/lbuild-sles11 @@ -2,7 +2,8 @@ # increment this if you have made a change that should force a new kernel # to build built -BUILD_GEN=1 +# BUILD_GEN=1 +BUILD_GEN=2 # bz19952: remove -lustre tag from kernel RPM names source ${0%/*}/lbuild-sles @@ -15,17 +16,23 @@ edit_specs() { local spec for spec in $RPMSMPTYPE source; do #cp $TOPDIR/SPECS/kernel-$spec.spec{,.orig} - sed -i -e 's/^\(Name:.*kernel-\)\(.*\)/\1lustre-\2/' \ - -e "s/^\(Release: *\).*$/\1${real_lnxrel}_${buildid}/" \ - -e "/^Provides: *kernel = /a\ -Provides: kernel-$spec = %{version}-%{release} -" \ + sed -i -e "s/^\(Release: *\).*$/\1${real_lnxrel}_${buildid}/" \ -e "s/^ExclusiveArch:.*/& ppc ppc64/" \ -e '/^%setup /a\ cp %_sourcedir/linux-2.6.27-lustre.patch %_builddir/%{name}-%{version}/lustre.patch\ ! grep -q lustre.patch %_sourcedir/series.conf && echo -e "\\n\\tlustre.patch" >> %_sourcedir/series.conf' \ -e "/flavor=\${config/a\ [ \"\$flavor\" == \"$RPMSMPTYPE\" ] || continue" \ + -e "s/^\(BuildRequires: kernel-dummy\)/# \1/" \ + SPECS/kernel-${spec}.spec + + if $KERNEL_LUSTRE_NAMING; then + # these are all of the changes needed because we change the package names + # to kernel-lustre-*. these should all go away when we stop this insanity + sed -i -e 's/^\(Name:.*kernel-\)\(.*\)/\1lustre-\2/' \ + -e "/^Provides: *kernel = /a\ +Provides: kernel-$spec = %{version}-%{release} +" \ -e 's/^\([ ][ ]*-i %_builddir\/kernel-\)\(source-2.6.27.21\/\$patch; then\)/\1lustre-\2/' \ -e '/^%build/,/^%changelog/s/\(kernel-\)\(source\.files\)/\1lustre-\2/g' \ -e '/--no-backup-if-mismatch/,/fi/s/kernel-source-/kernel-lustre-source-/g' \ @@ -35,8 +42,8 @@ cp %_sourcedir/linux-2.6.27-lustre.patch %_builddir/%{name}-%{version}/lustre.p -e "s/^\(Provides:.*kernel-\)\(.*\)/\1lustre-\2/" \ -e "s/^\(Requires:.*kernel-\)\(.*\)/\1lustre-\2/" \ -e "s/^\(Supplements:.*kernel-\)\(.*\)/\1lustre-\2/" \ - -e "s/^\(BuildRequires: kernel-dummy\)/# \1/" \ SPECS/kernel-${spec}.spec + fi # XXX - a building-on-Ubuntu hack if grep -q "Ubuntu" /etc/issue; then -- 1.8.3.1