- #!/bin/sh
- ############################################################################################
- # Name : /public/scripts/WinBuild
- # Purpose : A script to run a full Windows/MFC/VC++ Globecom software build,
- # Based on perforce system
- # By : Yariv Sheizaf
- # Date : 02-Sep-2001
- # Argumnets :
- # 1 - configuration name
- # 2 - Build number
- #
- if [ "$USER" != "cmadm" -a "$USER" != "yariv" ]
- then
- echo ""
- echo "$0 should be run with user cmadm or yariv. Exit..."
- echo ""
- exit 1
- fi
- HOSTN=`hostname`
- if [ "$HOSTN" != "PRO2K-SEPHI" ]
- then
- echo ""
- echo "$0 should be run from host PRO2K-SEPHI. Exit..."
- echo ""
- exit 1
- fi
- ## Define servers
- WINSRVR="PRO2K-SEPHI"
- if [ $# -lt 2 ]
- then
- echo "Usage: $0 configuration-name Build-number"
- echo "Example: $0 prd_2.0 1.8.6"
- exit 1
- fi
- CNFNAME=$1
- ## Check configuration existing in P4 DB
- ISCNF="n"
- for i in `p4 dirs //Globecom/\* | awk -F/ '{print $NF}'`
- do
- if [ "$i" = "$CNFNAME" ]
- then
- ISCNF="y"
- fi
- done
- if [ "$ISCNF" = "n" ]
- then
- echo ""
- echo $CNFNAME" is not a valid configuration. Exit..."
- echo ""
- exit 1
- fi
- ## If version 2.x - Z2H_epop exist. else - not.
- echo $CNFNAME | grep "_2."
- if [ "$?" = "0" ]
- then
- ISZ2HEPOP="y"
- else
- ISZ2HEPOP="n"
- fi
- UNIXDRIVE=/cygdrive/f
- WINDRIVE=/cygdrive/o
- UNIXHOME=$UNIXDRIVE"/home/cmadm"
- WRKROOTDIR=$WINDRIVE"/Globecom/"$CNFNAME"/Globecom"
- INSDIR=$UNIXDRIVE"/"$CNFNAME"/ins"
- if [ ! -d $INSDIR ]
- then
- echo ""
- echo $INSDIR" is not exist. Exit..."
- echo ""
- exit 1
- fi
- BUILDNUM=$2
- ## Prevent write into P4 DB
- echo "Set P4 protect to open-only mode"
- p4 protect -o > /tmp/$$.p4protect
- p4 protect -o | sed 's/write/open/' | p4 protect -i
- ## Clean working directorties, then put head revision's source files
- for i in Z2H epop
- do
- echo "Remove old "$i" source files"
- p4 sync //Globecom/$CNFNAME/Globecom/$i/...#none > /dev/null
- echo "Remove old "$i" directories"
- rm -rf $WRKROOTDIR/$i
- echo "Synchronize head revision of "$i
- p4 sync //Globecom/$CNFNAME/Globecom/$i/... > /dev/null
- echo ""
- done
- if [ "$ISZ2HEPOP" = "y" ]
- then
- echo "Remove old Z2H_epop source files"
- p4 sync //Globecom/$CNFNAME/Globecom/Z2H_epop/...#none > /dev/null
- echo "Remove old Z2H_epop directories"
- rm -rf $WRKROOTDIR/Z2H_epop
- echo "Synchronize head revision of Z2H_epop"
- p4 sync //Globecom/$CNFNAME/Globecom/Z2H_epop/... > /dev/null
- echo ""
- fi
- ## Z2H Build
- for i in `ls -l $WRKROOTDIR | grep Z2H | awk '{print $NF}'`
- do
- echo ""
- Z2HDIR=$WRKROOTDIR"/"$i
- echo "Start "$i" Build..."
- echo "Build "$i" Template Convertor"
- cd $Z2HDIR/templateConvertor
- msdev templateConvertor.dsp /MAKE "templateConvertor - RELEASE" /REBUILD
- # msdev templateConvertor.dsp /MAKE ALL /REBUILD
- echo "Run TemplateConvertor - create *.h files"
- cd $Z2HDIR/templateConvertor/Release
- ./templateConvertor.exe ../../Templates ../../XmlConvertor/templates
- echo "Build XmlConvertor"
- cd $Z2HDIR/XmlConvertor
- msdev XmlConvertor.dsp /MAKE "XmlConvertor - RELEASE" /REBUILD
- # msdev XmlConvertor.dsp /MAKE ALL /REBUILD
- done
- ## Copy Z2H files from WIN environment to Unix environment
- Z2HTMPDIR=$UNIXHOME/Z2H_templates/$CNFNAME
- echo "Copy product *.h files to "$Z2HTMPDIR
- if [ -d $Z2HTMPDIR ]
- then
- rm -f $Z2HTMPDIR/*.h
- else
- mkdir $Z2HTMPDIR
- chmod 777 $Z2HTMPDIR
- fi
- Z2HMAINDIR=$WRKROOTDIR"/Z2H"
- cp $Z2HMAINDIR/XmlConvertor/templates/*.h $Z2HTMPDIR
- chmod 666 $Z2HTMPDIR/*.h
- echo "Copy Xmlconvertor to "$INSDIR
- rm -f $INSDIR/XmlConvertor.exe
- cp $Z2HMAINDIR/XmlConvertor/Release/XmlConvertor.exe $INSDIR
- echo "Copy images and JS files to "$INSDIR"/misc"
- if [ -d $INSDIR/misc ]
- then
- rm -rf $INSDIR/misc/*
- else
- mkdir $INSDIR/misc
- fi
- mkdir $INSDIR/misc/Windows
- mkdir $INSDIR/misc/Unix
- chmod -R 777 $INSDIR/misc/*
- ### *************** cp images and resources to $INSDIR/misc ??? ******************
- cp $Z2HMAINDIR/ConvertorRes/Images/* $INSDIR/misc
- cp $Z2HMAINDIR/ConvertorRes/Js/Windows/* $INSDIR/misc/Windows
- cp $Z2HMAINDIR/ConvertorRes/Js/Unix/* $INSDIR/misc/Unix
- ### *************** cp images and resources to $INSDIR/CI ??? ******************
- cp $Z2HMAINDIR/ConvertorRes/Images/* $INSDIR/CI/ConvertorRes/Images
- cp $Z2HMAINDIR/ConvertorRes/Js/Windows/* $INSDIR/CI/ConvertorRes/Js
- for i in EPOP-Source
- do
- echo "Copy files for "$i
- ## Copy Z2H_epop files from WIN environment to Unix environment
- echo "Copy Xerces DLLs to installation directory"
- if [ -d $INSDIR/$i ]
- then
- rm -f $INSDIR/$i/*
- else
- mkdir $INSDIR/$i
- chmod 777 $INSDIR/$i
- fi
- cp $Z2HMAINDIR/XmlConvertor/Release/xerces*.dll $INSDIR/$i
- if [ "$ISZ2HEPOP" = "y" ]
- then
- Z2HEPOPDIR=$WRKROOTDIR"/Z2H_epop"
- cp $Z2HEPOPDIR/XmlConvertor/Release/xerces*.dll $INSDIR/$i
- cp $Z2HEPOPDIR/XmlConvertor/Release/EpopConvertor.exe $INSDIR/$i
- cp $Z2HEPOPDIR/ConvertorRes/Images/* $INSDIR/$i
- cp $Z2HEPOPDIR/ConvertorRes/Js/* $INSDIR/$i
- fi
- done
- ## EPOP build
- echo "Start EPOP build..."
- EPOPDIR=$WRKROOTDIR"/epop"
- CURPWD=`pwd`
- cd $EPOPDIR
- for i in `ls -l | awk '{print $NF}' | tail +2 | grep -v InstallShield `
- do
- echo "Build "$i
- cd $i
- msdev $i.dsp /MAKE "$i - RELEASE" /REBUILD
- # msdev $i.dsp /MAKE ALL /REBUILD
- echo "Copy "$i".exe to installation directory"
- cp Release/$i.exe $INSDIR/EPOP-Source
- cd $EPOPDIR
- done
- cd $CURPWD
- ## Reopen P4 protect for write to programmers
- echo "Reconstruct P4 protect to write-mode"
- p4 protect -i < /tmp/$$.p4protect
- rm -f /tmp/$$.p4protect
- echo ""
- exit 0
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 1472 | Yariv Sheizaf | scripts dir | 23 years ago |