Ignore:
Timestamp:
Jul 3, 2009, 11:26:52 AM (15 years ago)
Author:
Jim Gifford <clfs@…>
Branches:
clfs-1.2, clfs-2.1, clfs-3.0.0-systemd, clfs-3.0.0-sysvinit, master, systemd, sysvinit
Children:
acf32d0
Parents:
2349999
Message:

Updates to Patch Scripts

File:
1 edited

Legend:

Unmodified
Added
Removed
  • scripts/patch/binutils-patch.sh

    r2349999 rd8a9d8b  
    1919# Download Binutils Source
    2020#
    21 cd /usr/src
     21install -d ~/tmp
     22cd ~/tmp
    2223if ! [ -e binutils-${SOURCEVERSION}.tar.bz2  ]; then
    2324  wget ftp://ftp.gnu.org/gnu/binutils/binutils-${SOURCEVERSION}.tar.bz2
     
    2627# Set Patch Number
    2728#
    28 cd /usr/src
     29cd ~/tmp
    2930wget http://svn.cross-lfs.org/svn/repos/cross-lfs/trunk/patches/ --no-remove-listing
    3031PATCH_NUM=$(cat index.html | grep binutils | grep "${SOURCEVERSION}" | grep branch_update | cut -f2 -d'"' | cut -f1 -d'"'| cut -f4 -d- | cut -f1 -d. | tail -n 1)
    3132PATCH_NUM=$(expr ${PATCH_NUM} + 1)
     33PATCH_NUM2=$(cat index.html | grep binutils | grep "${SOURCEVERSION}" | grep fixes | cut -f2 -d'"' | cut -f1 -d'"'| cut -f4 -d- | cut -f1 -d. | tail -n 1)
     34PATCH_NUM2=$(expr ${PATCH_NUM2} + 1)
    3235rm -f index.html
    3336
    3437# Cleanup Directory
    3538#
     39cd ~/tmp
    3640rm -rf binutils-${SOURCEVERSION} binutils-${SOURCEVERSION}.orig
    3741tar xvf binutils-${SOURCEVERSION}.tar.bz2
    38 mv binutils-${SOURCEVERSION} binutils-${SOURCEVERSION}.orig
    39 CURRENTDIR=$(pwd -P)
    4042
    4143# Get Current Updates from CVS
    4244#
    43 cd /usr/src
     45cd ~/tmp
     46mv binutils-${SOURCEVERSION} binutils-${SOURCEVERSION}.orig
     47CURRENTDIR=$(pwd -P)
    4448FIXEDVERSION=$(echo ${VERSION} | sed -e 's/\./_/g')
    4549cvs -z 9 -d :pserver:anoncvs@sourceware.org:/cvs/src export -rbinutils-${FIXEDVERSION}-branch binutils
     
    4852# Cleanup
    4953#
     54cd ~/tmp
    5055DIRS="binutils-${SOURCEVERSION} binutils-${SOURCEVERSION}.orig"
    5156for DIRECTORY in ${DIRS}; do
    52   cd /usr/src/${DIRECTORY}
     57  cd ~/tmp/${DIRECTORY}
    5358  FILE_LIST=".cvsignore *.gmo"
    5459  for files in ${FILE_LIST}; do
     
    6671    cd ..
    6772done
    68 cd /usr/src/binutils-${SOURCEVERSION}
    69 rm -f /usr/src/binutils-${SOURCEVERSION}.orig/md5.sum
     73cd ~/tmp/binutils-${SOURCEVERSION}
     74rm -f ~/tmp/binutils-${SOURCEVERSION}.orig/md5.sum
    7075
    7176# Make Binutils a Release
    7277#
    73 cd /usr/src/binutils-${SOURCEVERSION}
     78cd ~/tmp/binutils-${SOURCEVERSION}
    7479sed -i 's/# RELEASE=y/RELEASE=y/g' bfd/Makefile.am
    7580sed -i 's/# RELEASE=y/RELEASE=y/g' bfd/Makefile.in
     
    7782# Customize the version string, so we know it's patched
    7883#
    79 cd /usr/src/binutils-${SOURCEVERSION}
     84cd ~/tmp/binutils-${SOURCEVERSION}
    8085DATE_STAMP=$(date +%Y%m%d)
    81 cd /usr/src/binutils-${SOURCEVERSION}
     86cd ~/tmp/binutils-${SOURCEVERSION}
    8287sed -i "s:@PKGVERSION@:(GNU Binutils for Cross-LFS) :" bfd/Makefile.in
    8388sed -i "s:^[[:space:]]VERSION=\(.*\)$: VERSION=\1.${DATE_STAMP}:g" bfd/configure
     
    8590# Create Patch
    8691#
    87 cd /usr/src
    88 echo "Submitted By: Jim Gifford (jim at cross-lfs dot org)" > binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
    89 echo "Date: `date +%m-%d-%Y`" >> binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
    90 echo "Initial Package Version: ${SOURCEVERSION}" >> binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
    91 echo "Origin: Upstream" >> binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
    92 echo "Upstream Status: Applied" >> binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
    93 echo "Description: This is a branch update for binutils-${SOURCEVERSION}, and should be" >> binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
    94 echo "             rechecked periodically." >> binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
    95 echo "" >> binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
    96 echo "This patch was created on ${DATE_STAMP}" >> binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
    97 echo "" >> binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
    98 diff -Naur binutils-${SOURCEVERSION}.orig binutils-${SOURCEVERSION} >> binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
    99 echo "Created /usr/src/binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch."
     92cd ~/tmp
     93install -d ~/patches
     94echo "Submitted By: Jim Gifford (jim at cross-lfs dot org)" > ~/patches/binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
     95echo "Date: `date +%m-%d-%Y`" >>  ~/patches/binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
     96echo "Initial Package Version: ${SOURCEVERSION}" >>  ~/patches/binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
     97echo "Origin: Upstream" >>  ~/patches/binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
     98echo "Upstream Status: Applied" >>  ~/patches/binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
     99echo "Description: This is a branch update for binutils-${SOURCEVERSION}, and should be" >>  ~/patches/binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
     100echo "             rechecked periodically." >>  ~/patches/binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
     101echo "" >>  ~/patches/binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
     102echo "This patch was created on ${DATE_STAMP}" >>  ~/patches/binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
     103echo "" >>  ~/patches/binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
     104diff -Naur binutils-${SOURCEVERSION}.orig binutils-${SOURCEVERSION} >>  ~/patches/binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch
     105echo "Created ~/patches/binutils-${SOURCEVERSION}-branch_update-${PATCH_NUM}.patch."
    100106
    101107# Cleanliness is the name of my game!
    102108#
    103109unset DATE_STAMP
     110
     111# Create Another Copy to create fixes patch
     112#
     113cd ~/tmp
     114if [ -e ${PATCH_DIR}/${VERSION} ]; then
     115  rm -rf binutils-${SOURCEVERSION}.orig
     116  cp -ar binutils-${SOURCEVERSION} binutils-${SOURCEVERSION}.orig
     117
     118  # Apply Patches from directories
     119  #
     120  cd ~/tmp/binutils-${SOURCEVERSION}
     121  PATCH_FILES=$(ls ${PATCH_DIR}/${VERSION}/*.patch)
     122  if [ "${PATCH_FILES}" != "" ]; then
     123    for pfile in ${PATCH_FILES}; do
     124      echo "Applying - ${pfile}..."
     125      for pvalue in $(seq 0 5); do
     126        patch --dry-run -Np${pvalue} -i ${pfile} > /dev/null 2>&1
     127        if [ "${?}" = "0" ]; then
     128          PVALUE=${pvalue}
     129          break
     130        fi
     131      done
     132      if [ "${PVALUE}" != "" ]; then
     133        patch -Np${PVALUE} -i ${pfile}
     134      else
     135        echo "Patch: ${pfile} Failed to Apply..."
     136        exit 255
     137      fi
     138    done
     139  fi
     140
     141  # Cleanup Directory
     142  #
     143  cd ~/tmp/binutils-${SOURCEVERSION}
     144  rm -f $(find * -name "*~")
     145  rm -f $(find * -name "*.orig")
     146  rm -f $(find * -name "*.rej")
     147  rm -f *.orig *~ *.rej
     148
     149  # Create Patch
     150  #
     151  cd ~/tmp
     152  install -d ~/patches
     153  echo "Submitted By: Jim Gifford (jim at cross-lfs dot org)" > ~/patches/binutils-${SOURCEVERSION}-fixes-${PATCH_NUM2}.patch
     154  echo "Date: `date +%m-%d-%Y`" >> ~/patches/binutils-${SOURCEVERSION}-fixes-${PATCH_NUM2}.patch
     155  echo "Initial Package Version: ${VERSION}" >> ~/patches/binutils-${SOURCEVERSION}-fixes-${PATCH_NUM2}.patch
     156  echo "Origin: Upstream" >> ~/patches/binutils-${SOURCEVERSION}-fixes-${PATCH_NUM2}.patch
     157  echo "Upstream Status: Applied" >> ~/patches/binutils-${SOURCEVERSION}-fixes-${PATCH_NUM2}.patch
     158  echo "Description: This Patch contains fixes for binutils-${SOURCEVERSION}, and should be" >> ~/patches/binutils-${SOURCEVERSION}-fixes-${PATCH_NUM2}.patch
     159  echo "             rechecked periodically." >> ~/patches/binutils-${SOURCEVERSION}-fixes-${PATCH_NUM2}.patch
     160  echo "" >> ~/patches/binutils-${SOURCEVERSION}-fixes-${PATCH_NUM2}.patch
     161  diff -Naur binutils-${SOURCEVERSION}.orig binutils-${SOURCEVERSION} >> ~/patches/binutils-${SOURCEVERSION}-fixes-${PATCH_NUM2}.patch
     162  echo "Created ~/patches/binutils-${SOURCEVERSION}-fixes-${PATCH_NUM2}.patch."
     163fi
     164
     165# Cleanup Directory
     166#
     167cd ~/tmp
     168rm -rf binutils-${SOURCEVERSION} binutils-${SOURCEVERSION}.orig
Note: See TracChangeset for help on using the changeset viewer.