зеркало из https://github.com/mozilla/pjs.git
112 строки
3.1 KiB
Bash
112 строки
3.1 KiB
Bash
#! /bin/bash
|
|
|
|
# Set up paths for finding files.
|
|
FEDIR=$PWD/../resources
|
|
XPIFILES=$PWD
|
|
XPIROOT=$PWD/xpi-tree
|
|
JARROOT=$PWD/jar-tree
|
|
|
|
|
|
if [ "$1" == "clean" ]; then
|
|
echo -n "Cleaning up files"
|
|
echo -n .
|
|
rm -rf $XPIROOT
|
|
echo -n .
|
|
rm -rf $JARROOT
|
|
echo ". done."
|
|
|
|
exit
|
|
fi
|
|
|
|
|
|
# Extract version number.
|
|
VERSION=`grep "const __vnk_version" $FEDIR/content/venkman-static.js | sed "s|.*\"\([^\"]\+\)\".*|\1|"`
|
|
|
|
echo Begining build of JavaScript Debugger $VERSION...
|
|
|
|
|
|
# Check for existing.
|
|
if [ -r "venkman-$VERSION.xpi" ]; then
|
|
echo " WARNING: output XPI will be overwritten."
|
|
fi
|
|
|
|
# Check for required directory layouts.
|
|
echo -n " Checking XPI structure"
|
|
echo -n .
|
|
if ! [ -d xpi-tree ]; then mkdir xpi-tree; fi
|
|
echo -n .
|
|
if ! [ -d xpi-tree/chrome ]; then mkdir xpi-tree/chrome; fi
|
|
echo -n .
|
|
if ! [ -d xpi-tree/components ]; then mkdir xpi-tree/components; fi
|
|
echo ". done"
|
|
|
|
echo -n " Checking JAR structure"
|
|
echo -n .
|
|
if ! [ -d jar-tree ]; then mkdir jar-tree; fi
|
|
echo ". done"
|
|
|
|
|
|
# Make Firefox updates.
|
|
echo -n " Updating Firefox Extension files"
|
|
echo -n .
|
|
sed "s|@REVISION@|$VERSION|g" < $XPIFILES/install.rdf > $XPIROOT/install.rdf
|
|
echo ". done"
|
|
|
|
|
|
# Make Mozilla Suite updates.
|
|
echo -n " Updating Mozilla Extension files"
|
|
echo -n .
|
|
mv $FEDIR/content/contents.rdf $FEDIR/content/contents.rdf.in
|
|
echo -n .
|
|
sed "s|@MOZILLA_VERSION@|vnk-$VERSION|g;s|\(chrome:displayName=\)\"[^\"]\+\"|\1\"JavaScript Debugger $VERSION\"|g" < $FEDIR/content/contents.rdf.in > $FEDIR/content/contents.rdf
|
|
echo -n .
|
|
rm $FEDIR/content/contents.rdf.in
|
|
echo -n .
|
|
mv $FEDIR/locale/en-US/contents.rdf $FEDIR/locale/en-US/contents.rdf.in
|
|
echo -n .
|
|
sed "s|@MOZILLA_VERSION@|vnk-$VERSION|g" < $FEDIR/locale/en-US/contents.rdf.in > $FEDIR/locale/en-US/contents.rdf
|
|
echo -n .
|
|
rm $FEDIR/locale/en-US/contents.rdf.in
|
|
echo ". done"
|
|
|
|
|
|
# Create JAR.
|
|
echo -n " Constructing JAR package"
|
|
echo -n .
|
|
cd $FEDIR/../../../config
|
|
echo -n .
|
|
OUT=`perl make-jars.pl -v -z zip -p preprocessor.pl -s $FEDIR -d $JARROOT < $FEDIR/jar.mn 2>&1`
|
|
if [ "$?" != "0" ]; then echo ERROR; echo $OUT; fi
|
|
echo -n .
|
|
OUT=`perl make-jars.pl -v -z zip -p preprocessor.pl -s $FEDIR/sm -d $JARROOT < $FEDIR/sm/jar.mn 2>&1`
|
|
if [ "$?" != "0" ]; then echo ERROR; echo $OUT; fi
|
|
echo -n .
|
|
OUT=`perl make-jars.pl -v -z zip -p preprocessor.pl -s $FEDIR/ff -d $JARROOT < $FEDIR/ff/jar.mn 2>&1`
|
|
if [ "$?" != "0" ]; then echo ERROR; echo $OUT; fi
|
|
echo -n .
|
|
cd $XPIFILES
|
|
echo -n .
|
|
sed "s|@REVISION@|$VERSION|g" < install.js > $XPIROOT/install.js
|
|
echo ". done"
|
|
|
|
|
|
# Make XPI.
|
|
echo -n " Constructing XPI package"
|
|
echo -n .
|
|
OUT=`cp -v $JARROOT/venkman.jar $XPIROOT/chrome/`
|
|
if [ "$?" != "0" ]; then echo ERROR; echo $OUT; fi
|
|
echo -n .
|
|
OUT=`cp -v $FEDIR/../js/venkman-service.js $XPIROOT/components/`
|
|
if [ "$?" != "0" ]; then echo ERROR; echo $OUT; fi
|
|
echo -n .
|
|
chmod 664 $XPIROOT/chrome/venkman.jar
|
|
echo -n .
|
|
chmod 664 $XPIROOT/components/venkman-service.js
|
|
echo -n .
|
|
cd $XPIROOT; OUT=`zip -vr ../venkman-$VERSION.xpi * 2>&1`; cd $XPIFILES
|
|
if [ "$?" != "0" ]; then echo ERROR; echo $OUT; fi
|
|
echo ". done"
|
|
|
|
|
|
echo "Build of JavaScript Debugger $VERSION... ALL DONE"
|