⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lustre-kernel-2.4.spec.in

📁 lustre 1.6.5 source code
💻 IN
📖 第 1 页 / 共 2 页
字号:
%%defattr(-,root,root)%%dir /usr/src/linux-%{KVERREL}/usr/src/linux-%{KVERREL}/*%if %{linux26}%%dir /usr/src/linux-%{KVERREL}-obj/usr/src/linux-%{KVERREL}-obj/*%endifEOF%build# if RPM_BUILD_NCPUS unset, set itif [ -z "$RPM_BUILD_NCPUS" ] ; then    RPM_BUILD_NCPUS=$(egrep -c "^cpu[0-9]+" /proc/stat || :)    if [ $RPM_BUILD_NCPUS -eq 0 ] ; then        RPM_BUILD_NCPUS=1    fi    if [ $RPM_BUILD_NCPUS -gt 8 ] ; then        RPM_BUILD_NCPUS=8    fifirm -rf $RPM_BUILD_ROOTmkdir -p $RPM_BUILD_ROOTDependKernel(){  target_config=${1:+--target-config $1}  sh -x ./build/lmake \	--depend-kernel \	--target @LUSTRE_TARGET@ \	--target-arch %{_target_cpu} \	${target_config} \	--extraversion %{kextraver} \	-j $RPM_BUILD_NCPUS}BuildKernel(){  target_config=${1:+--target-config $1}  sh -x ./build/lmake \	--build-kernel --build-lustre \	--install \	--save-headers \	--target @LUSTRE_TARGET@ \	--target-arch %{_target_cpu} \	${target_config} \	--extraversion %{kextraver} \	--kerneldir $RPM_SOURCE_DIR \	-j $RPM_BUILD_NCPUS \	--destdir $RPM_BUILD_ROOT \	-- --enable-tests \	@CONFIGURE_FLAGS@}BuildLustre(){  target_config=${1:+--target-config $1}  sh -x ./build/lmake \	--build-lustre \	--install-lustre \	--target @LUSTRE_TARGET@ \	--target-arch %{_target_cpu} \	${target_config} \	--extraversion %{kextraver} \	--kerneldir $RPM_SOURCE_DIR \	-j $RPM_BUILD_NCPUS \	--destdir $RPM_BUILD_ROOT \	-- --enable-utils \	--disable-doc --disable-tests \	--disable-modules --disable-liblustre \	--sysconfdir=%{_sysconfdir} \	--mandir=%{_mandir} \	@CONFIGURE_FLAGS@}SaveHeaders(){  sh -x ./build/lmake \	--save-headers \	--target @LUSTRE_TARGET@ \	--target-arch %{_target_cpu} \	--extraversion %{kextraver} \	--destdir $RPM_BUILD_ROOT}pushd lustre >/dev/null%if %{buildbigmem}BuildKernel bigmem%endif%if %{buildBOOT}BuildKernel BOOT%endif%if %{buildjensen}BuildKernel jensen%endif%if %{buildsmp}BuildKernel smp%endif%if %{buildbigsmp}BuildKernel bigsmp%endif%if %{buildpseries64}BuildKernel pseries64%endif%if %{buildup}BuildKernel%endif%if %{buildbase}# BuildLustre%endifpopd >/dev/null%installpushd lustre >/dev/null# it's already installed, so just clean up some things that are rpm# specificfor i in $RPM_BUILD_ROOT/lib/modules/* ; do  rm -f $i/modules.*%ifarch %{ntplarchs}  # remove legacy pcmcia symlink that's no longer useful  rm -rf $i/pcmcia%endifdone# mark the vmlinux* non-executable to fool strip-to-filechmod a-x $RPM_BUILD_ROOT/boot/vmlinux*BuildObj (){	flavor=$1	if [ $flavor = "up" ] ; then		flavext=""		flavtgt=""	else		flavext="%{flavordelim}$flavor"		flavtgt="$flavor"	fi        perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = %{kextraverdelim}%{kextraver}${flavext}/" $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}/Makefile	c="$RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}"	o="${c}-obj/%{_target_cpu}/$flavor"	mkdir -p $o        # use the one we just built	#cp ../lustre/kernel_patches/kernel_configs/kernel-%{kversion}-@LUSTRE_TARGET@-%{_target_cpu}%{dashtargetboard}${flavext}.config \	cp .config $o/.config        for oc in oldconfig_nonint silentoldconfig oldconfig ; do	    if grep -q "$oc" Makefile ; then	        OLDCONFIG="$oc"		break   	    fi        done	MAKE="make -s O=$o -C ${c}"	if [ "$CC" ] ; then	    MAKE_CC="CC=$CC"	fi	$MAKE "$MAKE_CC" $OLDCONFIG	$MAKE clean	rm -rf $o/.config.old $o/include/config        # Replace the Makefile in the object directory with a version        # that has relative path names.  This is done by fixing the Makefile        # after the fact to work with 2.6.17 and newer mkmakefile.        read VERSION PATCHLEVEL SUBLEVEL <<-EOF$(set -- 2.6.5 ; echo ${*//./ })EOF	rm -f $o/Makefile	ARCH=%{_target_cpu} /bin/sh scripts/mkmakefile ../../../linux-%{KVERREL} $o \		$VERSION $PATCHLEVEL > $o/Makefile.in	if [ -f $o/Makefile ] ; then		# will exist only for 2.6.17 and newer because mkmakefile		# now writes the makefile to $o instead of stdout		mv -f $o/Makefile $o/Makefile.in	fi	sed -e "s^$o^../linux-%{KVERREL}-obj/%{_target_cpu}/$flavor^" \		$o/Makefile.in > $o/Makefile	zcat "$RPM_BUILD_ROOT/boot/symvers-%{KVERREL}-%{_target_cpu}${flavext}.gz" \	    > $o/Module.symvers}#### do -source package cleanup/install##if [ "%{buildbase}" -ne 0 ] ; then    pushd linux >/dev/null    mkdir -p $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}    rm -f drivers/net/hamradio/soundmodem/gentbl scripts/mkdep    tar cf - . | tar xf - -C $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}    ln -sf linux-%{KVERREL} $RPM_BUILD_ROOT/usr/src/linux    # install -m 644 %{SOURCE10}  $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}    #clean up the destination    make -s mrproper -C $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}    rm -rf $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}/configs    mkdir -p $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}/configs    cp ../lustre/kernel_patches/kernel_configs/kernel-%{kversion}-@LUSTRE_TARGET@*.config $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}/configs    if [ "%{linux26}" -ne 0 ] ; then        # this only works because CFS only builds one kernel per target/arch per kernel-source rpm	objdir=$RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}-obj	mkdir -p $objdir        if [ "%{buildbigmem}" -ne 0 ] ; then	    BuildObj bigmem        fi        if [ "%{buildBOOT}" -ne 0 ] ; then	    BuildObj BOOT        fi        if [ "%{buildjensen}" -ne 0 ] ; then	    BuildObj jensen        fi        if [ "%{buildsmp}" -ne 0 ] ; then	    BuildObj smp        fi	if [ "%{buildbigsmp}" -ne 0 ] ; then	    BuildObj bigsmp        fi	if [ "%{buildpseries64}" -ne 0 ] ; then	    BuildObj pseries64        fi        if [ "%{buildup}" -ne 0 ] ; then	    BuildObj up        fi        perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = %{kextraverdelim}%{kextraver}custom/" $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}/Makefile	# Remove $RPM_BUILD_ROOT prefix from symlinks.	for link in $(find $objdir -type l); do	    target=$(readlink $link)	    rm -f $link	    ln -s ${target/$RPM_BUILD_ROOT/} $link	done    else # 2.4 rh-style        perl -p -i -e "s/^EXTRAVERSION.*/EXTRAVERSION = %{kextraverdelim}%{kextraver}custom/" $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}/Makefile        # get the one from the build we just completed as it might have picked        # up new options        #cp ../lustre/kernel_patches/kernel_configs/kernel-%{kversion}-@LUSTRE_TARGET@-%{_target_cpu}%{dashtargetboard}.config $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}/.config        cp .config $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}/.config        for oc in oldconfig_nonint silentoldconfig oldconfig ; do	    if grep -q "$oc" $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}/Makefile ; then		OLDCONFIG="$oc"		break   	    fi        done	if [ "$CC" ] ; then	    MAKE_CC="CC=$CC"	fi        make "$MAKE_CC" -s $OLDCONFIG -C $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}        make "$MAKE_CC" -s symlinks -C $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}        make "$MAKE_CC" -s include/linux/version.h -C $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}        #this generates modversions info which we want to include and we may as        #well include the depends stuff as well, after we fix the paths        make -s depend -C $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}        find $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL} -name ".*depend" | \        while read file ; do            mv $file $file.old            sed -e "s|[^ ]*\(/usr/src/linux\)|\1|g" < $file.old > $file            rm -f $file.old        done        # Try to put some smarter autoconf.h and version.h files in place        pushd $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}/include/linux ; {        rm -rf modules modversions.h autoconf.h version.h        cat > modversions.h <<EOF#ifndef _LINUX_MODVERSIONS_H#define _LINUX_MODVERSIONS_H#include <linux/rhconfig.h>#include <linux/modsetver.h>EOF        echo '#include <linux/rhconfig.h>' > autoconf.h        list=`find ../../savedheaders/* -name '*.ver' -exec basename '{}' \; | sort`        mkdir modules        for l in $list; do            sed 's,$,modules/'$l, ../../savedheaders/list | awk -f %{SOURCE17} > modules/$l            touch -r modules/$l modules/`basename $l .ver`.stamp            echo '#include <linux/modules/'$l'>' >> modversions.h        done        echo '#endif' >> modversions.h        sed 's,$,autoconf.h,' ../../savedheaders/list | awk -f %{SOURCE16} >> autoconf.h        install -m 644 %{SOURCE15} rhconfig.h        echo "#include <linux/rhconfig.h>" >> version.h        keyword=if        for i in smp BOOT BOOTsmp bigmem bigsmp pseries64 up ; do            # When we build in an i386, we don't have an bigmem header directory            # in savedheaders/i386/bigmem.  We also don't have a BOOT directory            # anywhere except in savedheaders/i386.  So, we need to use this method            # of determining if a kernel version string needs to be included in the            # version.h file            verh=`echo ../../savedheaders/*/$i/version.h | awk ' { print $1 } '`            if [ -n "$verh" -a -f "$verh" ]; then                if [ "$i" = up ]; then            	    if [ "$keyword" = if ]; then            	        echo "#if 0" >> version.h            	    fi              	    echo "#else" >> version.h           	else            	    echo "#$keyword defined(__module__$i)" >> version.h            	    keyword=elif                fi           	grep UTS_RELEASE $verh >> version.h            fi            done        echo "#endif" >> version.h        if [ -f ../../savedheaders/%{_target_cpu}/up/version.h ] ; then            # keep to a standard normally            HEADER_FILE=../../savedheaders/%{_target_cpu}/up/version.h        else            # test build not including uniprocessor, must get info from somewhere            HEADER_FILE=$(ls ../../savedheaders/*/*/version.h | head -n 1)        fi        grep -v UTS_RELEASE $HEADER_FILE >> version.h        rm -rf ../../savedheaders        } ; popd        touch $RPM_BUILD_ROOT/boot/kernel.h-%{kversion}                # rm -f $RPM_BUILD_ROOT/usr/include/linux                rm -rf $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}/savedheaders                if [ "%{rhbuild}" -ne 0 ] ; then            # fix up the tmp_include_depends file wrt the buildroot            perl -p -i -e "s|$RPM_BUILD_ROOT||g" $RPM_BUILD_ROOT/usr/src/linux-%{KVERREL}/tmp_include_depends        fi    fi # linux26    popd >/dev/nullfi # buildbasepopd >/dev/null%cleanrm -rf $RPM_BUILD_ROOT###### scripts#### do this for upgrades...in case the old modules get removed we have# loopback in the kernel so that mkinitrd will work.%pre -f pre.sh%pre smp -f presmp.sh%pre bigsmp -f prebigsmp.sh%pre pseries64 -f prepseries64.sh%pre bigmem -f prebigmem.sh%post -f post.sh%post pseries64 -f postpseries64.sh%post smp -f postsmp.sh%post bigsmp -f postbigsmp.sh%post bigmem -f postbigmem.sh%post jensen -f postjensen.sh%ifnarch ia64%post BOOT -f postBOOT.sh%endif%post -n lustre-lite-utilsif [ -f /etc/init.d/lustre ] ; then	/sbin/chkconfig --add lustre	/sbin/chkconfig --add lustrefsfi# Allow clean removal of modules directory%preun -f preun.sh%preun pseries64 -f preunpseries64.sh%preun smp -f preunsmp.sh%preun bigsmp -f preunbigsmp.sh%preun bigmem -f preunbigmem.sh%preun BOOT -f preunBOOT.sh%preun jensen -f preunjensen.sh# suse needs these i guess%postun -f postun.sh%postun pseries64 -f postunpseries64.sh%postun smp -f postunsmp.sh%postun bigsmp -f postunbigsmp.sh%postun bigmem -f postunbigmem.sh%postun BOOT -f postunBOOT.sh%postun jensen -f postunjensen.sh# We need this here because we don't prereq kudzu; it could be# installed after the kernel%triggerin -- kudzu[ -x /usr/sbin/module_upgrade ] && /usr/sbin/module_upgrade || :%triggerin smp -- kudzu[ -x /usr/sbin/module_upgrade ] && /usr/sbin/module_upgrade || :%triggerin bigsmp -- kudzu[ -x /usr/sbin/module_upgrade ] && /usr/sbin/module_upgrade || :%triggerin pseries64 -- kudzu[ -x /usr/sbin/module_upgrade ] && /usr/sbin/module_upgrade || :%triggerin bigmem -- kudzu[ -x /usr/sbin/module_upgrade ] && /usr/sbin/module_upgrade || :%triggerin BOOT -- kudzu[ -x /usr/sbin/module_upgrade ] && /usr/sbin/module_upgrade || :%triggerin jensen -- kudzu[ -x /usr/sbin/module_upgrade ] && /usr/sbin/module_upgrade || :# Old kernel-headers packages owned include symlinks; new# ones just make them so that we can have multiple kernel-headers# packages installed.%triggerpostun source -- kernel-headers < 2.2.16cd /usr/srcrm -f %{kslnk}ln -snf linux-%{KVERREL} %{kslnk}exit 0%post sourcecd /usr/srcrm -f %{kslnk}ln -snf linux-%{KVERREL} %{kslnk}%postun sourceif [ -L /usr/src/%{kslnk} ]; then     if [ -L /usr/src/%{kslnk} -a `ls -ld /usr/src/%{kslnk} 2>/dev/null| awk '{ print $11 }'` = "linux-%{KVERREL}" ]; then	[ $1 = 0 ] && rm -f /usr/src/%{kslnk}    fifiexit 0%preun -n lustre-lite-utilsif [ $1 = 0 -a -f /etc/init.d/lustre ]; then	/sbin/chkconfig --del lustre	/sbin/chkconfig --del lustrefsfi###### file lists###%if %{buildup}%files -f kernel.files%endif%if %{buildsmp}%files smp -f kernelsmp.files%endif%if %{buildbigsmp}%files bigsmp -f kernelbigsmp.files%endif%if %{buildpseries64}%files pseries64 -f kernelpseries64.files%endif%if %{buildbigmem}%files bigmem -f kernelbigmem.files%endif%if %{buildBOOT}%files BOOT -f kernelBOOT.files%endif%if %{buildbase}%files source -f kernel-source.files%endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -