common/bin/compare.sh
changeset 37972 e1fa5c2e62a0
parent 37406 ffe907153695
child 39112 3d27ea6a582e
equal deleted inserted replaced
37971:df5f275ebdac 37972:e1fa5c2e62a0
   272     OTHER_DIR=$2
   272     OTHER_DIR=$2
   273     WORK_DIR=$3
   273     WORK_DIR=$3
   274 
   274 
   275     $MKDIR -p $WORK_DIR
   275     $MKDIR -p $WORK_DIR
   276 
   276 
       
   277     FILE_TYPES_FILTER="$SED \
       
   278         -e 's/BuildID[^,]*//' \
       
   279         -e 's/last modified: .*//' \
       
   280         "
       
   281 
   277     echo -n File types...
   282     echo -n File types...
   278     found=""
   283     found=""
   279     for f in `cd $OTHER_DIR && $FIND . ! -type d`
   284     for f in `cd $OTHER_DIR && $FIND . ! -type d`
   280     do
   285     do
   281         if [ ! -f ${OTHER_DIR}/$f ]; then continue; fi
   286         if [ ! -f ${OTHER_DIR}/$f ]; then continue; fi
   282         if [ ! -f ${THIS_DIR}/$f ]; then continue; fi
   287         if [ ! -f ${THIS_DIR}/$f ]; then continue; fi
   283         OF=`cd ${OTHER_DIR} && $FILE -h $f | $SED 's/BuildID[^,]*//g'`
   288         OF=$(cd ${OTHER_DIR} && $FILE -h $f | eval $FILE_TYPES_FILTER)
   284         TF=`cd ${THIS_DIR} && $FILE -h $f | $SED 's/BuildID[^,]*//g'`
   289         TF=$(cd ${THIS_DIR} && $FILE -h $f | eval $FILE_TYPES_FILTER)
   285         if [ "$OF" != "$TF" ]
   290         if [ "$OF" != "$TF" ]
   286         then
   291         then
   287             if [ "`echo $OF | $GREP -c 'Zip archive data'`" -gt 0 ] \
   292             if [ "`echo $OF | $GREP -c 'Zip archive data'`" -gt 0 ] \
   288                 && [ "`echo $TF | $GREP -c 'Zip archive data'`" -gt 0 ]
   293                 && [ "`echo $TF | $GREP -c 'Zip archive data'`" -gt 0 ]
   289             then
   294             then
   318         ! -name "*.cpl" ! -name "*.pdb" ! -name "*.exp" ! -name "*.ilk" \
   323         ! -name "*.cpl" ! -name "*.pdb" ! -name "*.exp" ! -name "*.ilk" \
   319         ! -name "*.lib" ! -name "*.war" ! -name "JavaControlPanel" ! -name "*.jmod" \
   324         ! -name "*.lib" ! -name "*.war" ! -name "JavaControlPanel" ! -name "*.jmod" \
   320         ! -name "*.obj" ! -name "*.o" ! -name "JavaControlPanelHelper" \
   325         ! -name "*.obj" ! -name "*.o" ! -name "JavaControlPanelHelper" \
   321         ! -name "JavaUpdater" ! -name "JavaWSApplicationStub" \
   326         ! -name "JavaUpdater" ! -name "JavaWSApplicationStub" \
   322         ! -name "jspawnhelper" ! -name "JavawsLauncher" ! -name "*.a" \
   327         ! -name "jspawnhelper" ! -name "JavawsLauncher" ! -name "*.a" \
   323         ! -name "finish_installation" ! -name "Sparkle" \
   328         ! -name "finish_installation" ! -name "Sparkle" ! -name "*.tar.gz" \
   324         | $GREP -v "./bin/"  | $SORT | $FILTER)
   329         | $GREP -v "./bin/"  | $SORT | $FILTER)
   325 
   330 
   326     echo Other files with binary differences...
   331     echo Other files with binary differences...
   327     for f in $GENERAL_FILES
   332     for f in $GENERAL_FILES
   328     do
   333     do
   421     $MKDIR -p $OTHER_UNZIPDIR
   426     $MKDIR -p $OTHER_UNZIPDIR
   422     if [ "$TYPE" = "jar" -o "$TYPE" = "war" -o "$TYPE" = "zip" -o "$TYPE" = "jmod" ]
   427     if [ "$TYPE" = "jar" -o "$TYPE" = "war" -o "$TYPE" = "zip" -o "$TYPE" = "jmod" ]
   423     then
   428     then
   424         (cd $THIS_UNZIPDIR && $UNARCHIVE $THIS_ZIP)
   429         (cd $THIS_UNZIPDIR && $UNARCHIVE $THIS_ZIP)
   425         (cd $OTHER_UNZIPDIR && $UNARCHIVE $OTHER_ZIP)
   430         (cd $OTHER_UNZIPDIR && $UNARCHIVE $OTHER_ZIP)
       
   431     elif [ "$TYPE" = "gz" ]
       
   432     then
       
   433         (cd $THIS_UNZIPDIR && $GUNZIP -c $THIS_ZIP | $TAR xf -)
       
   434         (cd $OTHER_UNZIPDIR && $GUNZIP -c $OTHER_ZIP | $TAR xf -)
   426     else
   435     else
   427         (cd $THIS_UNZIPDIR && $JIMAGE extract $THIS_ZIP)
   436         (cd $THIS_UNZIPDIR && $JIMAGE extract $THIS_ZIP)
   428         (cd $OTHER_UNZIPDIR && $JIMAGE extract $OTHER_ZIP)
   437         (cd $OTHER_UNZIPDIR && $JIMAGE extract $OTHER_ZIP)
   429     fi
   438     fi
   430 
   439 
   524 compare_all_zip_files() {
   533 compare_all_zip_files() {
   525     THIS_DIR=$1
   534     THIS_DIR=$1
   526     OTHER_DIR=$2
   535     OTHER_DIR=$2
   527     WORK_DIR=$3
   536     WORK_DIR=$3
   528 
   537 
   529     ZIPS=$(cd $THIS_DIR && $FIND . -type f -name "*.zip" | $SORT | $FILTER )
   538     ZIPS=$(cd $THIS_DIR && $FIND . -type f -name "*.zip" -o -name "*.tar.gz" \
       
   539         | $SORT | $FILTER )
   530 
   540 
   531     if [ -n "$ZIPS" ]; then
   541     if [ -n "$ZIPS" ]; then
   532         echo Zip files...
   542         echo Zip/tar.gz files...
   533 
   543 
   534         return_value=0
   544         return_value=0
   535         for f in $ZIPS; do
   545         for f in $ZIPS; do
   536             if [ -f "$OTHER_DIR/$f" ]; then
   546             if [ -f "$OTHER_DIR/$f" ]; then
   537                 compare_zip_file $THIS_DIR $OTHER_DIR $WORK_DIR $f
   547                 compare_zip_file $THIS_DIR $OTHER_DIR $WORK_DIR $f
   911             fi
   921             fi
   912         else
   922         else
   913             FULLDUMP_MSG="          "
   923             FULLDUMP_MSG="          "
   914             DIFF_FULLDUMP=
   924             DIFF_FULLDUMP=
   915             if [[ "$KNOWN_FULLDUMP_DIFF $ACCEPTED_FULLDUMP_DIFF" = *"$BIN_FILE"* ]]; then
   925             if [[ "$KNOWN_FULLDUMP_DIFF $ACCEPTED_FULLDUMP_DIFF" = *"$BIN_FILE"* ]]; then
   916                 FULLDUMP_MSG="    !     "
   926                 FULLDUMP_MSG="    !    "
   917             fi
   927             fi
   918         fi
   928         fi
   919     fi
   929     fi
   920 
   930 
   921     # Compare disassemble output
   931     # Compare disassemble output