2009-05-28 14 views
2

我希望儘量減少rpm構建過程的輸出。使用--quiet選項標誌運行rpmbuild命令會導致廣泛的調試信息

我運行下面的命令:rpmbuild -ba --quiet "/tmp/yaneeve/kit/linux/rpm_spec"

我的系統是:Linux yaneeve-lnx-82-5 2.4.21-47.ELsmp #1 SMP Wed Jul 5 20:38:41 EDT 2006 i686 i686 i386 GNU/Linux

的的rpmbuild的版本是:我的RPM說明文件的RPM version 4.2.3

的%prep部分是:

%prep 

. $LOGGER_FUNC_FILE_LOCATION/logger.sh 

SCRIPT_NAME='rpm_spec-prep' 
SOURCE_DIR=`readlink -f -n %{_sourcedir}` 
PACKAGE_DIR=`readlink -f -n %{_pkg_script_dir}` 
BUILD_PRODUCT_DIR=`readlink -f -n %{_build_product_dir}` 
RESOURCE_DIR=`readlink -f -n %{_resource_dir}` 

log $SCRIPT_NAME INFO "In the prep stage of the rpm spec file..." 

if [[ -d $SOURCE_DIR && `ls -a $SOURCE_DIR | wc -w` -gt 2 ]] ; then 
    log $SCRIPT_NAME INFO "Source directory exists and is not empty - deleting content." 
    rm -rf $SOURCE_DIR//* 
    if [ $? -ne 0 ]; then 
     log $SCRIPT_NAME ERROR "Unable to remove $SOURCE_DIR/* - exiting." 
     exit 1 
    fi 
fi 

if [ ! -f $PACKAGE_DIR/include_src_files.sh ]; then 
    log $SCRIPT_NAME ERROR "File list does not exist - aborting." 
    exit 1 
else 
    $PACKAGE_DIR/include_src_files.sh $BUILD_PRODUCT_DIR $RESOURCE_DIR $SOURCE_DIR 
    if [ $? -ne 0 ]; then 
     log $SCRIPT_NAME ERROR "Unable to run include_src_files.sh script - exiting." 
     exit 1 
    fi 
fi 

rpmbuild作爲結果創建了以下腳本(注意set -x):

#!/bin/sh 

    RPM_SOURCE_DIR="/tmp/yaneeve/output/kit/SOURCES" 
    RPM_BUILD_DIR="/tmp/yaneeve/output/kit/BUILD" 
    RPM_OPT_FLAGS="-O2 -g -pipe -march=i386 -mcpu=i686" 
    RPM_ARCH="i386" 
    RPM_OS="linux" 
    export RPM_SOURCE_DIR RPM_BUILD_DIR RPM_OPT_FLAGS RPM_ARCH RPM_OS 
    RPM_DOC_DIR="/usr/share/doc" 
    export RPM_DOC_DIR 
    RPM_PACKAGE_NAME="YANEEVE-APP" 
    RPM_PACKAGE_VERSION="4.2.2.0" 
    RPM_PACKAGE_RELEASE="01.0" 
    export RPM_PACKAGE_NAME RPM_PACKAGE_VERSION RPM_PACKAGE_RELEASE 
    RPM_BUILD_ROOT="/tmp/yaneeve/output/kit/SOURCES" 
    export RPM_BUILD_ROOT 


    set -x 
    umask 022 
    cd /tmp/yaneeve/output/kit/BUILD 
LANG=C 
export LANG 
unset DISPLAY 


. $LOGGER_FUNC_FILE_LOCATION/logger.sh 

SCRIPT_NAME='rpm_spec-prep' 
SOURCE_DIR=`readlink -f -n /tmp/yaneeve/output/kit/SOURCES` 
PACKAGE_DIR=`readlink -f -n /tmp/yaneeve/output/kit/../../kit/linux` 
BUILD_PRODUCT_DIR=`readlink -f -n /tmp/yaneeve/output/kit/..` 
RESOURCE_DIR=`readlink -f -n /tmp/yaneeve/output/kit/../../conf` 

log $SCRIPT_NAME INFO "In the prep stage of the rpm spec file..." 

if [[ -d $SOURCE_DIR && `ls -a $SOURCE_DIR | wc -w` -gt 2 ]] ; then 
    log $SCRIPT_NAME INFO "Source directory exists and is not empty - deleting content." 
     rm -rf $SOURCE_DIR//* 
     if [ $? -ne 0 ]; then 
     log $SCRIPT_NAME ERROR "Unable to remove $SOURCE_DIR/* - exiting." 
     exit 1 
    fi 
fi 

if [ ! -f $PACKAGE_DIR/include_src_files.sh ]; then 
     log $SCRIPT_NAME ERROR "File list does not exist - aborting." 
     exit 1 
else 
    $PACKAGE_DIR/include_src_files.sh $BUILD_PRODUCT_DIR $RESOURCE_DIR $SOURCE_DIR 
     if [ $? -ne 0 ]; then 
     log $SCRIPT_NAME ERROR "Unable to run include_src_files.sh script - exiting." 
     exit 1 
    fi 
fi 

爲什麼set -x插入? 我認爲這是打印廣泛調試信息的原因嗎? 我在做什麼錯? 或者,我的rpmbuild程序有錯誤嗎?

(很抱歉,如果我的問題是有點太過描述...)

+0

請稍微縮短主題。 – JesperE 2009-05-28 07:02:26

+0

希望主題現在更清晰... – Yaneeve 2009-05-28 07:11:59

回答

2

的預備%宏觀上的分佈擴大,幷包含一套-x。
在我在/ usr/lib/rpm的/宏的發行版,我發現以下幾點:

出口CLASSPATH} \
%{詳細:設置-x}%{詳細:EXEC>的/ dev /空} \
的umask 022 \
CD \ 「%{U2P:%{_ builddir}} \」 \

您需要取消設置詳細變量獲得 '集-x' 中刪除。

相關問題