Changeset 12470

Show
Ignore:
Timestamp:
11/08/10 06:37:18 (19 months ago)
Author:
build
Message:

Move all Python versioning to two evironment variables

Location:
packaging/centuryegg
Files:
7 modified

Legend:

Unmodified
Added
Removed
  • packaging/centuryegg/build-matplotlib-rpm

    r12464 r12470  
    55    exit 
    66fi 
    7 if [ "x`rpm -qa numpy25`" == "x" ] 
     7if [ "x`rpm -qa numpy$PYTHON_SUFFIX`" == "x" ] 
    88then 
    9     sudo rpm -Uvh rpms/numpy25* 
     9    sudo rpm -Uvh rpms/numpy$PYTHON_SUFFIX* 
    1010fi 
    1111if [ "x`rpm -qa libglade2-devel`" == "x" ] 
     
    1515./find-srpms python-numeric || exit 1 
    1616./find-srpms python-numarray || exit 1 
    17 if [ "x`rpm -qa python25-numeric`" == "x" ] 
     17if [ "x`rpm -qa python$PYTHON_SUFFIX-numeric`" == "x" ] 
    1818then 
    19     sudo rpm -Uvh rpms/python25-numeric*.rpm 
     19    sudo rpm -Uvh rpms/python$PYTHON_SUFFIX-numeric*.rpm 
    2020fi 
    21 if [ "x`rpm -qa python25-numarray`" == "x" ] 
     21if [ "x`rpm -qa python$PYTHON_SUFFIX-numarray`" == "x" ] 
    2222then 
    23     sudo rpm -Uvh rpms/python25-numarray*.rpm 
     23    sudo rpm -Uvh rpms/python$PYTHON_SUFFIX-numarray*.rpm 
    2424fi 
    2525./find-srpms "cairo>=1.4" || exit 1 
     
    2929fi 
    3030./find-srpms "pycairo>=1.4" || exit 1 
    31 if [ "x`rpm -qa pycairo-py25-devel`" == "x" ] 
     31if [ "x`rpm -qa pycairo$PYTHON_SUFFIX2-devel`" == "x" ] 
    3232then 
    33     sudo rpm -Uvh rpms/pycairo-py25-*.rpm 
     33    sudo rpm -Uvh rpms/pycairo$PYTHON_SUFFIX2-*.rpm 
    3434fi 
    3535GLIB2_VERSION=`yum info glib2-devel | grep Version | head -n 1 | sed -e "s/[ \t]\+/ /g" | cut -d ":" -f 2 | cut -d " " -f 2` 
     
    3737then 
    3838    ./find-srpms pygobject2 || exit 1 
    39     if [ "x`rpm -qa pygobject2-py25-devel`" == "x" ] 
     39    if [ "x`rpm -qa pygobject2$PYTHON_SUFFIX2-devel`" == "x" ] 
    4040    then 
    41         sudo rpm -Uvh rpms/pygobject2-py25*.rpm 
     41        sudo rpm -Uvh rpms/pygobject2$PYTHON_SUFFIX2*.rpm 
    4242    fi 
    4343fi 
     
    4747    rpm -e pygtk2-devel || exit 1 
    4848fi 
    49 if [ "x`rpm -qa pygtk2-py25-devel`" == "x" ] 
     49if [ "x`rpm -qa pygtk2$PYTHON_SUFFIX2-devel`" == "x" ] 
    5050then 
    51     sudo rpm -Uvh rpms/pygtk2-py25*.rpm 
     51    sudo rpm -Uvh rpms/pygtk2$PYTHON_SUFFIX2*.rpm 
    5252fi 
    5353./find-srpms "python-matplotlib>=0.91.2" || exit 1 
    54 rm -f rpms/python25-matplotlib-tk* 
     54rm -f rpms/python$PYTHON_SUFFIX-matplotlib-tk* 
    5555 
  • packaging/centuryegg/build-python-rpm

    r12461 r12470  
    11#!/bin/bash 
     2PYTHON_SRPM_URL=http://archives.fedoraproject.org/pub/archive/fedora/linux/releases/10/Everything/source/SRPMS/python-2.5.2-1.fc10.src.rpm 
    23mkdir -p logs rpms srpms 
    3 if [ $(ls rpms/python25-2.5*.rpm | wc -l) -gt 0 ] 
     4if [ $(ls rpms/python$PYTHON_SUFFIX-$PYTHON_VERSION*.rpm | wc -l) -gt 0 ] 
    45then 
    56    echo "Not building python as the following packages are already built:" 
    6     ls rpms/python25-2.5*.rpm 
     7    ls rpms/python$PYTHON_SUFFIX-$PYTHON_VERSION*.rpm 
    78    exit 
    89fi 
     
    6465( 
    6566cd srpms 
    66 wget -c http://archives.fedoraproject.org/pub/archive/fedora/linux/releases/10/Everything/source/SRPMS/python-2.5.2-1.fc10.src.rpm 
    67 rpm -ivh python-2.5*.src.rpm 
     67wget -c $PYTHON_SRPM_URL 
     68rpm -ivh python-$PYTHON_VERSION*.src.rpm 
    6869) 
    6970DB_VERSION=`yum info db4-devel | grep Version | head -n 1 | sed -e "s/[ \t]\+/ /g" | cut -d ":" -f 2 | cut -d " " -f 2 | sed -e "s/\([0-9]\+\.[0-9]\+\)\..*/\1/"` 
    70 sed -ie "s/DBLIBVER=4.[4-9]/DBLIBVER=$DB_VERSION/" ~/rpmbuild/SOURCES/python-2.5-config.patch 
     71[ -f ~/rpmbuild/SOURCES/python-$PYTHON_VERSION-config.patch ] && sed -ie "s/DBLIBVER=4.[4-9]/DBLIBVER=$DB_VERSION/" ~/rpmbuild/SOURCES/python-$PYTHON_VERSION-config.patch 
    7172sed -ie "s/db4-devel >= 4.[4-9]/db4-devel >= $DB_VERSION/" $HOME/rpmbuild/SPECS/python.spec 
    7273# Name of libX11-devel on old systems is xorg-x11-devel 
     
    7576    if [[ $REDHAT_VERSION -lt 5 ]] 
    7677    then 
    77         sed -ie 's/\+.*-lX11/\+ -L\/usr\/X11R6\/lib -lX11/' $HOME/rpmbuild/SOURCES/python-2.5-config.patch 
     78        [ -f ~/rpmbuild/SOURCES/python-$PYTHON_VERSION-config.patch ] && sed -ie 's/\+.*-lX11/\+ -L\/usr\/X11R6\/lib -lX11/' ~/rpmbuild/SOURCES/python-$PYTHON_VERSION-config.patch 
    7879        sed -ie 's/libX11-devel/xorg-x11-devel/' $HOME/rpmbuild/SPECS/python.spec 
    7980    fi 
     
    9192# QA_RPATHS to prevent /usr/lib64... sqlite error 
    9293# --define __python_ver to include the python version in the bin filenames etc 
    93 QA_RPATHS=0x0001 rpmbuild  --define '__python_ver 25' -ba ~/rpmbuild/SPECS/python.spec >logs/build-python25.log 2>&1 
     94QA_RPATHS=0x0001 rpmbuild  --define '__python_ver $PYTHON_SUFFIX' -ba ~/rpmbuild/SPECS/python.spec >logs/build-python$PYTHON_SUFFIX.log 2>&1 
    9495result=$? 
    95 tail logs/build-python25.log 
    96 cp -pv ~/rpmbuild/RPMS/$rpm_arch/python25{,-debuginfo,-devel,-libs,-test,-tools}-2.5*.rpm rpms/ 
    97 cp -pv ~/rpmbuild/RPMS/$rpm_arch/tkinter25-2.5*.rpm rpms/ 
    98 cp -pv ~/rpmbuild/SRPMS/python25-2.5*.rpm rpms/ 
     96tail logs/build-python$PYTHON_SUFFIX.log 
     97cp -pv ~/rpmbuild/RPMS/$rpm_arch/python$PYTHON_SUFFIX{,-debuginfo,-devel,-libs,-test,-tools}-$PYTHON_VERSION*.rpm rpms/ 
     98cp -pv ~/rpmbuild/RPMS/$rpm_arch/tkinter$PYTHON_SUFFIX-$PYTHON_VERSION*.rpm rpms/ 
     99cp -pv ~/rpmbuild/SRPMS/python$PYTHON_SUFFIX-$PYTHON_VERSION*.rpm rpms/ 
    99100 
  • packaging/centuryegg/build-rpms

    r11595 r12470  
    3030 
    3131os.chdir(tmp_dir) 
    32 if sys.version_info[0] == 2 and sys.version_info[1] < 5: 
    33     easyinstall = "easy_install-2.5" 
    34     python = "python2.5" 
     32if sys.version_info[0] == 2 and sys.version_info[1] < os.environ["MIN_PYTHON_MINOR_VERSION"]: 
     33    easyinstall = "easy_install-"+os.environ["PYTHON_VERSION"] 
     34    python = "python"+os.environ["PYTHON_VERSION"] 
    3535else: 
    3636    easyinstall = "easy_install" 
  • packaging/centuryegg/build-sjsoft-rpm

    r12465 r12470  
    2727 
    2828building_new_python = sys.version_info[0] == 2 and sys.version_info[1] < 5 
     29python_suffix = os.environ.get("PYTHON_SUFFIX","") 
     30python_suffix2 = os.environ.get("PYTHON_SUFFIX2","") 
    2931 
    3032SJSOFT_URL="svn+ssh://svn.sjsoft.com/home/closedsvn/svn" 
     
    3840    log_filename = os.path.join(log_dir, "sjsoft-svn-%s.log" % BRANCH_PATH) 
    3941    log_file = open(log_filename, "wb") 
    40      
    4142    subprocess.call(["svn", "co", SVN_URL, "sjsoft-src-%s" % BRANCH_PATH], stdout=log_file) 
    4243    os.chdir("sjsoft-src-%s" % BRANCH_PATH) 
    4344    subprocess.call(["svn", "up"], stdout=log_file) 
    4445    subprocess.call(["svn", "switch", SVN_URL], stdout=log_file) 
     46    shutil.rmtree(os.path.join("sjsoft", "Library", "FunctionalTests")) 
    4547    if not os.path.exists("yahp.jar"): 
    4648        subprocess.call(["wget","-c","http://download.sjsoft.com/yahpconverter/yahp1.2.19c.jar","-O","yahp.jar"], stdout=log_file) 
     
    6769                    ("pyparsing", "1.4.7"), 
    6870                    ("xlwt", "0.7.1"), 
    69                     ("soaplib", "0.9")] 
    70     if building_new_python: 
    71         requirements.extend([("MySQL-python25", "1.2.1"), 
    72                              ("numpy25", "1.0.3"), 
    73                              ("protobuf-python25", "2.0.2"), 
    74                              ("python25-imaging", "1.1.5"), 
    75                              ("python25-ldap", "2.3"), 
    76                              ("python25-nose", "0.9.2"), 
    77                              ("python25-pgsql", "0.9.6"), 
    78                              ("python25-simplejson", "1.7.3"), 
    79                              ("python25-xlrd", "0.6.1"), 
    80                              ("python25-crypto", "2.0.1"), 
    81                              ("python25-lxml","1.3.6"), 
    82                              ("python25-dateutil","1.1"), 
    83                              ("pytz-py25","2006a"), 
    84                              ("PyXML-py25","0.8.4"), 
    85                              ("python25-suds","0.3.3") 
    86                            ]) 
    87     else: 
    88         requirements.extend([("MySQL-python", "1.2.1"), 
    89                              ("numpy", "1.0.3"), 
    90                              ("protobuf-python", "2.0.2"), 
    91                              ("python-imaging", "1.1.5"), 
    92                              ("python-ldap", "2.3"), 
    93                              ("python-nose", "0.9.2"), 
    94                              ("python-pgsql", "0.9.6"), 
    95                              ("python-simplejson", "1.7.3"), 
    96                              ("python-xlrd", "0.6.1") 
    97                              ("python-crypto", "2.0.1") 
    98                              ("python-lxml","1.3.6"), 
    99                              ("python-dateutil","1.1"), 
    100                              ("pytz","2006a"), 
    101                              ("PyXML","0.8.4"), 
    102                              ("python-suds","0.3.3") 
    103                            ]) 
     71                    ("pytz"+python_suffix2,"2006a"), 
     72                    ("PyXML"+python_suffix2,"0.8.4"), 
     73                    ("soaplib", "0.9"), 
     74                    ("MySQL-python"+python_suffix, "1.2.1"), 
     75                    ("numpy"+python_suffix, "1.0.3"), 
     76                    ("protobuf-python"+python_suffix, "2.0.2"), 
     77                    ("python%s-imaging" % python_suffix, "1.1.5"), 
     78                    ("python%s-ldap" % python_suffix, "2.3"), 
     79                    ("python%s-nose" % python_suffix, "0.9.2"), 
     80                    ("python%s-pgsql" % python_suffix, "0.9.6"), 
     81                    ("python%s-simplejson" % python_suffix, "1.7.3"), 
     82                    ("python%s-xlrd" % python_suffix, "0.6.1"), 
     83                    ("python%s-crypto" % python_suffix, "2.0.1"), 
     84                    ("python%s-lxml" % python_suffix,"1.3.6"), 
     85                    ("python%s-dateutil" % python_suffix,"1.1"), 
     86                    ("python%s-suds" % python_suffix,"0.3.3") 
     87                   ] 
    10488    if int(BRANCH_PATH.split('.')[0]) > 1 or int(BRANCH_PATH.split('.')[1]) >= 10: 
    10589        requirements.append(("Babel", "0.9.1")) 
     
    11094    log_file = open(log_filename, "wb") 
    11195    if building_new_python: 
    112         ret_code = subprocess.call(["python2.5", "setup_standalone.py", "bdist_rpm", "--fix-python"], stdout=log_file, stderr=log_file) 
     96        ret_code = subprocess.call(["python"+os.environ["PYTHON_VERSION"], "setup_standalone.py", "bdist_rpm", "--fix-python"], stdout=log_file, stderr=log_file) 
    11397    else: 
    11498        ret_code = subprocess.call(["python", "setup_standalone.py", "bdist_rpm", "--fix-python"], stdout=log_file, stderr=log_file) 
  • packaging/centuryegg/find-srpms

    r12462 r12470  
    9191    try_install = False 
    9292    replace_python = True 
    93     python25_exe = subprocess.Popen(["which", "python25"], stdout=subprocess.PIPE).communicate()[0].replace("\n","") 
     93    python_exe = subprocess.Popen(["which", "python"+os.environ["PYTHON_SUFFIX"]], stdout=subprocess.PIPE).communicate()[0].replace("\n","") 
    9494    if quote_defines: 
    95         rpmdefines = ["--define",'"__python %s"' % (python25_exe)] 
     95        rpmdefines = ["--define",'"__python %s"' % (python_exe)] 
    9696    else: 
    97         rpmdefines = ["--define",'__python %s' % (python25_exe)] 
    98     python_version = "2.5" 
     97        rpmdefines = ["--define",'__python %s' % (python_exe)] 
     98    python_version = os.environ["PYTHON_VERSION"] 
    9999else: 
    100100    no_name_change = True 
    101101    try_install = True 
    102102    replace_python = False 
    103     python25_exe = subprocess.Popen(["which", "python"], stdout=subprocess.PIPE).communicate()[0].replace("\n","") 
     103    python_exe = subprocess.Popen(["which", "python"], stdout=subprocess.PIPE).communicate()[0].replace("\n","") 
    104104    rpmdefines = [] 
    105105    python_version = "%d.%d" % (sys.version_info[0], sys.version_info[1]) 
     
    111111old_python_setuptools = version < 8 
    112112old_x11 = version < 5 
     113python_suffix = os.environ.get("PYTHON_SUFFIX","") 
     114python_suffix2 = os.environ.get("PYTHON_SUFFIX2","") 
    113115 
    114116REQUIREMENT_PARSER = re.compile("([^<=>]*)([<=>]+.*)?") 
    115117 
    116118def fix_package_name(package_name, force_version_marker=False): 
    117     """Fixes the package name to refer to python 25 - if the force_version_marker argument is True, -py25 will be appended if no other method is found""" 
     119    """Fixes the package name to refer to python $PYTHON_SUFFIX - if the force_version_marker argument is True, $PYTHON_SUFFIX2 will be appended if no other method is found""" 
    118120    # Replace the word python, but not python followed by a variable, as we don't know the purpose of the variable 
    119121    if package_name == "Distutils": 
     
    122124        return package_name 
    123125    elif package_name == "tkinter": 
    124         return "tkinter25" 
     126        return "tkinter"+python_suffix 
    125127    elif re.match(r".*\bpython\b[^%]", package_name) or package_name.endswith("python"): 
    126         return re.sub(r"\bpython\b","python25",package_name) 
     128        return re.sub(r"\bpython\b","python"+python_suffix,package_name) 
    127129    elif re.match(r".*\bpython2\b[^%]", package_name) or package_name.endswith("python2"): 
    128         return re.sub(r"\bpython2\b","python25",package_name) 
     130        return re.sub(r"\bpython2\b","python"+python_suffix,package_name) 
    129131    elif package_name.endswith("py"): 
    130         return package_name + "25" 
     132        return package_name + python_suffix 
    131133    elif package_name in ["protobuf", "cairo"]: 
    132134        # we'll manually change the protobuf-python package, but not the rest 
     
    136138    elif package_name.startswith("py"): 
    137139        if package_name.endswith("-devel"): 
    138             return package_name.replace("-devel","-py25-devel") 
     140            return package_name.replace("-devel",python_suffix2+"-devel") 
    139141        if package_name.endswith("-doc"): 
    140             return package_name.replace("-doc","-py25-doc") 
     142            return package_name.replace("-doc",python_suffix2+"-doc") 
    141143        if package_name.endswith("-codegen"): 
    142             return package_name.replace("-codegen","-py25-codegen") 
    143         return package_name + "-py25" 
     144            return package_name.replace("-codegen",python_suffix2+"-codegen") 
     145        return package_name + python_suffix2 
    144146    elif force_version_marker: 
    145         return package_name + "-py25" 
     147        return package_name + python_suffix2 
    146148    return package_name 
    147149 
     
    232234            line = '%if "eggs" == "eggs"\n' 
    233235        if replace_python and re.compile("^%(package|description|files).*").match(line) and "python" in line: 
    234             line = re.sub(r"\bpython\b", "python25", line) 
     236            line = re.sub(r"\bpython\b", "python"+python_suffix, line) 
    235237        if re.compile("^(Name|Provides|Requires|BuildRequires|BuildPre).*").match(line): 
    236238            if line.startswith("Name:"): 
     
    267269            line += "export PYTHON=%{__python}\n" 
    268270        if line.startswith("%configure") and package_name == "pygtk2": 
    269             line = line.replace("%configure","%configure --prefix=/opt/pygtk2-py25") 
     271            line = line.replace("%configure","%configure --prefix=/opt/pygtk2"+python_suffix) 
    270272        if line.startswith("%build") and package_name == "python-ldap": 
    271273            specfile.write('sed -ie "/OPT_X_TLS_CRL\(CHECK\|_NONE\|_PEER\|_ALL\)/d" Modules/constants.c\n') 
  • packaging/centuryegg/install-python-rpm

    r10049 r12470  
    11#!/bin/bash 
    2 # sudo yum -y localinstall ~/rpmbuild/RPMS/*/python25{,-libs,-devel}-2.5*.rpm 
    3 if [ "x`rpm -qa python25-devel | grep 2.5`" == "x" ] 
     2# sudo yum -y localinstall ~/rpmbuild/RPMS/*/python$PYTHON_SUFFIX{,-libs,-devel}-$PYTHON_VERSION*.rpm 
     3if [ "x`rpm -qa python$PYTHON_SUFFIX-devel | grep $PYTHON_VERSION`" == "x" ] 
    44then 
    5     sudo rpm -Uvh ~/rpmbuild/RPMS/*/python25{,-libs,-devel}-2.5*.rpm 
     5    sudo rpm -Uvh ~/rpmbuild/RPMS/*/python$PYTHON_SUFFIX{,-libs,-devel}-$PYTHON_VERSION*.rpm 
    66fi 
    7 if [ "x`rpm -qa tkinter25 | grep 2.5`" == "x" ] 
     7if [ "x`rpm -qa tkinter$PYTHON_SUFFIX | grep $PYTHON_VERSION`" == "x" ] 
    88then 
    9     sudo rpm -Uvh ~/rpmbuild/RPMS/*/tkinter25-2.5*.rpm 
     9    sudo rpm -Uvh ~/rpmbuild/RPMS/*/tkinter$PYTHON_SUFFIX-$PYTHON_VERSION*.rpm 
    1010fi 
    1111if [ "x`rpm -qa yum-utils`" == "x" ] 
     
    1919yumdownloader $YUMDOWNLOADER_OPTS --source --destdir=$HOME/Packaging/centuryegg/srpms python-setuptools 
    2020rm $HOME/rpmbuild/SPECS/python-setuptools.spec 
    21 rm -f rpms/python25-setuptools-*.rpm 
     21rm -f rpms/python$PYTHON_SUFFIX-setuptools-*.rpm 
    2222# this will build setuptools by side-effect; we simply ignore and rebuild it 
    2323./find-srpms python-setuptools 
    2424rpm -ivh $HOME/Packaging/centuryegg/srpms/python-setuptools*.src.rpm 
    2525sed -ie 's/^\(Version: *\)[0-9].*/\10.6c9/g' $HOME/rpmbuild/SPECS/python-setuptools.spec 
    26 sed -ie 's/^\(Name: *\)python-\([a-z0-9]*\)/\1python25-\2/g' $HOME/rpmbuild/SPECS/python-setuptools.spec 
     26sed -ie 's/^\(Name: *\)python-\([a-z0-9]*\)/\1python$PYTHON_SUFFIX-\2/g' $HOME/rpmbuild/SPECS/python-setuptools.spec 
    2727sed -ie 's#cheeseshop.python.org#pypi.python.org#' $HOME/rpmbuild/SPECS/python-setuptools.spec 
    28 sed -ie 's/^\(\(Provides\|Requires\|BuildRequires\|BuildPre[a-zA-Z]*\): *\)python-\([a-z0-9]*\)/\1python25-\3/g' $HOME/rpmbuild/SPECS/python-setuptools.spec 
     28sed -ie 's/^\(\(Provides\|Requires\|BuildRequires\|BuildPre[a-zA-Z]*\): *\)python-\([a-z0-9]*\)/\1python$PYTHON_SUFFIX-\3/g' $HOME/rpmbuild/SPECS/python-setuptools.spec 
    2929spectool -g -R  $HOME/rpmbuild/SPECS/python-setuptools.spec 
    30 rpmbuild -ba --define="__python `which python25`" $HOME/rpmbuild/SPECS/python-setuptools.spec > logs/build-python-setuptools.log 2>&1  
    31 if [ "x`rpm -qa python25-setuptools`" == "x" ] 
     30rpmbuild -ba --define="__python `which python$PYTHON_SUFFIX`" $HOME/rpmbuild/SPECS/python-setuptools.spec > logs/build-python-setuptools.log 2>&1  
     31if [ "x`rpm -qa python$PYTHON_SUFFIX-setuptools`" == "x" ] 
    3232then 
    33     sudo rpm -Uvh ~/rpmbuild/RPMS/*/python25-setuptools*.rpm 
     33    sudo rpm -Uvh ~/rpmbuild/RPMS/*/python$PYTHON_SUFFIX-setuptools*.rpm 
    3434fi 
  • packaging/centuryegg/makeall

    r12463 r12470  
    11#!/bin/bash 
     2export MIN_PYTHON_VERSION="2.5" 
     3export MIN_PYTHON_MAJOR_VERSION=`echo $MIN_PYTHON_VERSION | cut -d "." -f 1` 
     4export MIN_PYTHON_MINOR_VERSION=`echo $MIN_PYTHON_VERSION | cut -d "." -f 2` 
    25if [ -f /etc/redhat-release ] && [ ! -f /etc/fedora-release ] ; 
    36then 
     
    2831# Is the official python version high enough for us just to build? 
    2932PYTHON_VERSION=`rpm -q --queryformat="%{v}" python` 
    30 if [ `echo $PYTHON_VERSION | cut -d "." -f 1` == "2" ] && [ `echo $PYTHON_VERSION | cut -d "." -f 2` -lt 5 ] 
     33if [ `echo $PYTHON_VERSION | cut -d "." -f 1` == $MIN_PYTHON_MAJOR_VERSION ] && [ `echo $PYTHON_VERSION | cut -d "." -f 2` -lt $MIN_PYTHON_MINOR_VERSION ] 
    3134then 
    3235    BUILD_NEW_PYTHON=true 
    3336    export BUILD_NEW_PYTHON 
    34     PYTHON_SUFFIX=25 
    35     PYTHON_SUFFIX2=-py25 
     37    export PYTHON_SUFFIX=${MIN_PYTHON_MAJOR_VERSION}${MIN_PYTHON_MINOR_VERSION} 
     38    export PYTHON_SUFFIX2=-py$PYTHON_SUFFIX 
     39    export PYTHON_VERSION=${MIN_PYTHON_MAJOR_VERSION}.${MIN_PYTHON_MINOR_VERSION} 
     40else 
     41    export PYTHON_VERSION=$(echo $PYTHON_VERSION | cut -d "." -f 1).$(echo $PYTHON_VERSION | cut -d "." -f 2) 
    3642fi 
    3743rpm_arch=`rpmbuild -E %{_arch} 2>/dev/null` 
     
    98104    sudo rpm -Uvh `ls rpms/python$PYTHON_SUFFIX-dateutil-*.{${rpm_arch},noarch}.rpm | grep -v debuginfo` 
    99105fi 
    100 if [ "x$BUILD_NEW_PYTHON" == "x" ] 
     106if [ "x`rpm -qa pytz$PYTHON_SUFFIX2`" == "x" ] 
    101107then 
    102     if [ "x`rpm -qa pytz`" == "x" ] 
    103     then 
    104         sudo rpm -Uvh rpms/pytz*.rpm 
    105     fi 
    106     if [ "x`rpm -qa PyXML`" == "x" ] 
    107     then 
    108         sudo rpm -Uvh rpms/PyXML*.rpm 
    109     fi 
    110 else 
    111     if [ "x`rpm -qa pytz-py25`" == "x" ] 
    112     then 
    113         sudo rpm -Uvh rpms/pytz-py25*.rpm 
    114     fi 
    115     if [ "x`rpm -qa PyXML-py25`" == "x" ] 
    116     then 
    117         sudo rpm -Uvh rpms/PyXML-py25*.rpm 
    118     fi 
     108    sudo rpm -Uvh rpms/pytz$PYTHON_SUFFIX2*.rpm 
     109fi 
     110if [ "x`rpm -qa PyXML$PYTHON_SUFFIX2`" == "x" ] 
     111then 
     112    sudo rpm -Uvh rpms/PyXML$PYTHON_SUFFIX2*.rpm 
    119113fi 
    120114# We can't yet build matplotlib for RedHat > 4 with a custom Python