X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=contrib%2Flbuild%2Flbuild-sles11;h=8514f96bc75802530c20c9b0388f25ebfe78c19f;hp=f7c2a7583a6b3265636c6556b568cf600223692d;hb=7c800e460661972925a7acab51f023d0b38161b5;hpb=25c93758d6b1136d268fe3fcc1c4979c17463c0b diff --git a/contrib/lbuild/lbuild-sles11 b/contrib/lbuild/lbuild-sles11 index f7c2a75..8514f96 100644 --- a/contrib/lbuild/lbuild-sles11 +++ b/contrib/lbuild/lbuild-sles11 @@ -5,22 +5,30 @@ # build on all distributions, update the BUILD_GEN variable in build/lbuild) BUILD_GEN+=".0" +# This distro does not support zfs, so define WITH_ZFS +# use words that make the bash log readable. +WITH_ZFS="Zfs Not Supported" + source ${LBUILD_DIR}/lbuild-sles +kernel_srpm_location() { + + local PLEV=$(sed -n -e 's/^PATCHLEVEL = //p' /etc/SuSE-release) + echo "https://nu.novell.com/repo/\$RCE/SLES11-SP${PLEV}-Updates/sle-11-$(resolve_arch $TARGET_ARCH)/rpm/src/" + +} + edit_specs() { # edit the SPECs with our changes local spec - for spec in $RPMSMPTYPE source; do + (cd $TOPDIR/SOURCES; ./mkspec --release ${lnxrel}) + for spec in $RPMSMPTYPE source syms; do #cp $TOPDIR/SOURCES/kernel-$spec.spec{,.orig} sed -i -e "s/^\(Release: *\).*$/\1${lnxrel}_${buildid}/" \ - -e "s/^ExclusiveArch:.*/& ppc ppc64/" \ -e '/^%setup /a\ -cp %_sourcedir/linux-2.6.27-lustre.patch %_builddir/%{name}-%{version}/lustre.patch\ +cp %_sourcedir/linux-3.0-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/" \ SOURCES/kernel-${spec}.spec || \ fatal 1 "Error while editing SOURCES/kernel-${spec}.spec" @@ -66,17 +74,18 @@ unpack_linux_devel_rpm-sles11() { local wanted_kernel="${lnxmaj}${lnxmin}-${lnxrel}" # this is a hack that should go away when the modified lustre kernel - # Provides kernel-default-base vvvvvvvvv - if ! kernelrpm=$(find_rpm "$rpmdir" provides "^kernel-(lustre-)?default-base = $wanted_kernel"); then - fatal 1 "Could not find the kernel-default-base in $rpmdir/" + # Provides kernel-default-devel vvvvvvvvv + if ! kernelrpm=$(find_rpm "$rpmdir" provides "^kernel-(lustre-)?default-devel = $wanted_kernel"); then + fatal 1 "Could not find the kernel-default-devel in $rpmdir/" fi if ! rpm2cpio < "$rpmdir/$kernelrpm" | cpio -id > /dev/null 2>&1; then fatal 1 "Unpack error for $kernelrpm" fi - if ! kernelrpm=$(find_rpm "$rpmdir" provides "^kernel-(lustre-)?default-devel = $wanted_kernel"); then - fatal 1 "Could not find the kernel-default-devel in $rpmdir/" + # SLES also needs the kernel-source together with the kernel-default-devel + if ! kernelrpm=$(find_rpm "$rpmdir" provides "^kernel-source = $wanted_kernel"); then + fatal 1 "Could not find the kernel-source in $rpmdir/" fi if ! rpm2cpio < "$rpmdir/$kernelrpm" | cpio -id > /dev/null 2>&1; then @@ -86,17 +95,21 @@ unpack_linux_devel_rpm-sles11() { } find_linux_rpm-sles11() { - local prefix="$1" - local wanted_kernel="$2" - local pathtorpms=${3:-"${KERNELRPMSBASE}/${lnxmaj}/${DISTRO}/${TARGET_ARCH}"} - - # what, oh what, do we do for sles11? - # if anyone knows how we get an arbitrary (kernel-source and - # kernel-default-base in this case) from the Suse update mechanism, - # please feel free to fix this - - fatal 1 "I don't know how to get packages for SLES11" - - return 0 - + local prefix="$1" + local wanted_kernel="$2" + local pathtorpms=${3:-"$KERNELRPMSBASE/$lnxmaj/$DISTROMAJ/$TARGET_ARCH"} + + local PLEV=$(sed -n -e 's/^PATCHLEVEL = //p' /etc/SuSE-release) + local site="https://nu.novell.com/repo/\$RCE/SLES11-SP${PLEV}-Updates/sle-11-$(resolve_arch $TARGET_ARCH)/rpm/$(resolve_arch $TARGET_ARCH)" + + if [ ! -f $pathtorpms/kernel-default-devel-$wanted_kernel.$(resolve_arch $TARGET_ARCH).rpm ]; then + fetch_url "$site/kernel-default-devel-$wanted_kernel.$(resolve_arch $TARGET_ARCH).rpm" $pathtorpms + fi + # SLES also needs the kernel-source along with kernel-devel + if [ ! -f $pathtorpms/kernel-source-$wanted_kernel.$(resolve_arch $TARGET_ARCH).rpm ]; then + fetch_url "$site/kernel-source-$wanted_kernel.$(resolve_arch $TARGET_ARCH).rpm" $pathtorpms + fi + echo "kernel-default-devel-$wanted_kernel.$(resolve_arch $TARGET_ARCH).rpm" + + return 0 }