#!/bin/sh -
COPY_EXAMPLES=0
JEDIR=$1
if [ $ DBDIR=..
else
DBDIR=$2
fi
if [ ! -d "$DBDIR/dbinc" -o ! -f "$JEDIR/build.xml" ] ; then
echo >&2 "Usage $0 /path/to/je [ /path/to/db ]"
exit 1
fi
JEDIR=$(cd "$JEDIR" ; /bin/pwd)
DBDIR=$(cd "$DBDIR" ; /bin/pwd)
JESRC="$JEDIR/src"
JETEST="$JEDIR/test"
JEEXAMPLES="$JEDIR/examples"
DBSRC="$DBDIR/java/src"
DBTEST="$DBDIR/test/scr024/src"
DBEXAMPLES="$DBDIR/examples_java/src"
DIRMATCH="com/sleepycat/\(\(asm\)\|\(bind\)\|\(collections\)\|\(persist\)\|\(util\)\)"
EXAMPLESMATCH="^\./\(\(collections\)\|\(persist\)\)"
cd "$JESRC"
for d in `find . -type d | grep -v CVS | grep $DIRMATCH` ; do
mkdir -p "$DBSRC/$d"
done
cd "$JETEST"
for d in `find . -type d | grep -v CVS | grep $DIRMATCH` ; do
mkdir -p "$DBTEST/$d"
done
if [ $COPY_EXAMPLES -eq 1 ] ; then
cd "$JEEXAMPLES"
for d in `find . -type d | grep -v CVS | grep $EXAMPLESMATCH` ; do
mkdir -p "$DBEXAMPLES/$d"
done
fi
E1='s/com\.sleepycat\.je/com.sleepycat.db/g'
E2='/<!-- begin JE only -->/,/<!-- end JE only -->/d'
EXCLUDESRC="ClassEnhancerTask"
EXCLUDETESTS="\(\(ConvertAndAddTest\)\|\(TestVersionCompatibility\)\|\(XACollectionTest\)\)"
cd "$JESRC"
for f in `find . -name '*.java' -o -name "package.html" | grep $DIRMATCH | grep -v $EXCLUDESRC` ; do
sed -e "$E1" -e "$E2" < $f > $DBSRC/$f.sed.out
diff -q -I "\$\Id:" $DBSRC/$f $DBSRC/$f.sed.out || \
mv -f $DBSRC/$f.sed.out $DBSRC/$f
rm -f $DBSRC/$f.sed.out
done
cd "$JETEST"
for f in `find . -name '*.java' -o -name "*.java.original" | grep $DIRMATCH | grep -v $EXCLUDETESTS` \
; do
sed -e "$E1" -e "$E2" < $f > $DBTEST/$f.sed.out
diff -q -I "\$\Id:" $DBTEST/$f $DBTEST/$f.sed.out || \
mv -f $DBTEST/$f.sed.out $DBTEST/$f
rm -f $DBTEST/$f.sed.out
done
if [ $COPY_EXAMPLES -eq 1 ] ; then
cd "$JEEXAMPLES"
for f in `find . -name '*.java' | grep $EXAMPLESMATCH` ; do
sed -e "$E1" -e "$E2" < $f > $DBEXAMPLES/$f.sed.out
diff -q -I "\$\Id:" $DBEXAMPLES/$f $DBEXAMPLES/$f.sed.out || \
mv -f $DBEXAMPLES/$f.sed.out $DBEXAMPLES/$f
rm -f $DBEXAMPLES/$f.sed.out
done
fi
exit 0