mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-22 13:18:28 +00:00
Script for building a maintenance distribution.
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@40278 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
2ab05007d5
commit
84359f46ce
126
development/tools/lyx-build
Executable file
126
development/tools/lyx-build
Executable file
@ -0,0 +1,126 @@
|
||||
#!/bin/bash
|
||||
# This script builds a maintainance LyX distribution according to
|
||||
# the procedure outlined at:
|
||||
# http://wiki.lyx.org/Devel/ReleaseProcedure
|
||||
# It also includes several other tests, to make sure the packages
|
||||
# works as it should.
|
||||
# Note that this is for svn, not for git.
|
||||
|
||||
# A few variables need to be set, here at the top.
|
||||
# where all the source trees live
|
||||
BASE="/cvs/lyx/lyx-release";
|
||||
# where the svn directory lives
|
||||
SRCDIR="/cvs/lyx/lyx-pristine";
|
||||
# editor
|
||||
if [ -z "$EDITOR" ]; then EDITOR=vi; fi
|
||||
# options to make, when we compile
|
||||
MAKEOPTS="-j4";
|
||||
|
||||
|
||||
cd $SRCDIR/
|
||||
VERSION=$(head configure.ac | grep AC_INIT | perl -e 'while (<>) {m/(\d\.\d+\.\d+)/; print $1;}');
|
||||
|
||||
echo "This is version $VERSION.";
|
||||
echo -n "Ready to build source packages...";
|
||||
read
|
||||
|
||||
echo "Running svn export...";
|
||||
rm -Rf $BASE/lyx-export/
|
||||
svn export . $BASE/lyx-export/
|
||||
cd $BASE/lyx-export/
|
||||
./autogen.sh
|
||||
rm -Rf $BASE/lyx-build/
|
||||
mkdir $BASE/lyx-build/
|
||||
cd $BASE/lyx-build/
|
||||
|
||||
$BASE/lyx-export/configure --enable-build-type=rel
|
||||
if ! make lyxdist; then
|
||||
echo "Couldn't make distribution!";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
echo "Packages created:";
|
||||
cp -v lyx-$VERSION.tar.{gz,xz} $BASE;
|
||||
|
||||
echo -n "Ready to build signatures...";
|
||||
read
|
||||
|
||||
gpg -b lyx-$VERSION.tar.gz
|
||||
gpg -b lyx-$VERSION.tar.xz
|
||||
|
||||
echo "Signatures created:"
|
||||
cp -v lyx-$VERSION.tar.*.sig $BASE;
|
||||
|
||||
echo -n "Ready to test compilation.";
|
||||
read
|
||||
|
||||
rm -Rf $BASE/lyx-test/
|
||||
mkdir $BASE/lyx-test/
|
||||
cd $BASE/lyx-test/
|
||||
tar -zxvf $BASE/lyx-build/lyx-$VERSION.tar.gz >/dev/null
|
||||
if ! cd lyx-$VERSION; then
|
||||
echo "Unable to enter build directory!";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
./configure --enable-build-type=rel
|
||||
|
||||
if make $MAKEOPTS; then
|
||||
echo "Compilation complete.";
|
||||
echo -n "Ready to run LyX...";
|
||||
read
|
||||
src/lyx -userdir /tmp/lyx-test
|
||||
else
|
||||
echo "Compilation errors!!";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
LASTNUM=$(echo $VERSION | sed -e 's/.*\.//');
|
||||
LAST=$(($LASTNUM - 1));
|
||||
FIRST=$(echo $VERSION | sed -e 's/[0-9]*$//');
|
||||
ORIGINAL=${FIRST}0;
|
||||
LAST=$FIRST$LAST;
|
||||
echo "Last version was $LAST.";
|
||||
echo -n "Ready to make patch...";
|
||||
read
|
||||
|
||||
cd $BASE/lyx-patch/;
|
||||
tar -zxvf $BASE/lyx-build/lyx-$VERSION.tar.gz >/dev/null;
|
||||
|
||||
if [ ! -d lyx-$LAST ]; then
|
||||
echo "Can't find directory for last version $LAST!";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
diff -urN -x .svn -x version.cpp lyx-$LAST lyx-$VERSION > patch
|
||||
|
||||
echo -n "Please check the patch...";
|
||||
read
|
||||
$EDITOR patch;
|
||||
|
||||
NUMFIX="th";
|
||||
if [ "$LASTNUM" = "1" ]; then
|
||||
NUMFIX="st";
|
||||
elif [ "$LASTNUM" = "2" ]; then
|
||||
NUMFIX="nd";
|
||||
fi
|
||||
NUM="$LASTNUM$NUMFIX";
|
||||
cat $BASE/lyx-export/development/tools/patch-preamble | \
|
||||
sed -e "s/VERSION/$VERSION/; s/ORIGINAL/$ORIGINAL/; s/LAST/$LAST/; s/NUM/$NUM/;" >patch-preamble;
|
||||
echo -n "Please verify the patch preamble...";
|
||||
read
|
||||
$EDITOR patch-preamble;
|
||||
|
||||
PATCH="patch-$VERSION";
|
||||
cat patch-preamble patch >$PATCH;
|
||||
gzip -c $PATCH > $PATCH.gz
|
||||
rm $PATCH.gz.sig;
|
||||
gpg -b $PATCH.gz
|
||||
xz -zc $PATCH > $PATCH.xz
|
||||
rm $PATCH.xz.sig;
|
||||
gpg -b $PATCH.xz
|
||||
|
||||
echo -n "Patch and signatures created...";
|
||||
cp -v $PATCH.gz $PATCH.xz $BASE;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user