85 lines
2.3 KiB
Plaintext
85 lines
2.3 KiB
Plaintext
|
#!/bin/sh
|
||
|
# This script builds a full release package including XHTML and PDF
|
||
|
# versions of both master and wsi_extensions branches. Other files
|
||
|
# in the release directory are removed, including man pages,
|
||
|
# XHTML chunked, HTML, validity output, etc.
|
||
|
#
|
||
|
# Both branches must be fully committed and up to date when the
|
||
|
# script is run, with no outstanding un-added / un-committed
|
||
|
# files. Both branches must have fully regenerated all
|
||
|
# automatically-regeneratable files.
|
||
|
#
|
||
|
# After completing the build, the current branch is set to 'master'
|
||
|
# and suggestions for creating tags are printed out.
|
||
|
#
|
||
|
# Essentially replaced by genRelease
|
||
|
|
||
|
# Root of the Vulkan git repo
|
||
|
root=/home/tree/git/vulkan
|
||
|
|
||
|
# Directory with vk.xml and generation tools
|
||
|
xml=$root/src/spec
|
||
|
|
||
|
# Directory with spec sources
|
||
|
spec=$root/doc/specs/vulkan
|
||
|
|
||
|
# Branch name for WSI
|
||
|
wsibranch=wsi_extensions
|
||
|
|
||
|
##################### master Branch #####################
|
||
|
|
||
|
echo "**** GENERATING MASTER BRANCH ****"
|
||
|
git checkout master
|
||
|
|
||
|
echo "**** AUTOGENERATING HEADERS AND SPEC INCLUDE FILES ****"
|
||
|
cd $xml
|
||
|
make clobber
|
||
|
make full_install
|
||
|
|
||
|
echo "**** CLEANING SPEC ****"
|
||
|
cd $spec
|
||
|
outdir=$root/out
|
||
|
rm -rf $outdir/man $outdir/xhtml $outdir/pdf $outdir/chunked $outdir/vkspec.html
|
||
|
rm specversion.txt
|
||
|
|
||
|
echo "**** GENERATING SPEC ****"
|
||
|
make specversion.txt
|
||
|
make OUTDIR=$outdir xhtml pdf
|
||
|
rm $outdir/pdf/vkspec.xml
|
||
|
git checkout -- specversion.txt
|
||
|
|
||
|
##################### wsi_extensions Branch #####################
|
||
|
|
||
|
echo "**** GENERATING WSI BRANCH ****"
|
||
|
git checkout $wsibranch
|
||
|
|
||
|
echo "**** AUTOGENERATING WSI HEADERS AND SPEC INCLUDE FILES ****"
|
||
|
cd $xml
|
||
|
make clobber
|
||
|
make full_install
|
||
|
|
||
|
echo "**** CLEANING WSI SPEC ****"
|
||
|
cd $spec
|
||
|
outdir=$root/out/wsi
|
||
|
rm -rf $outdir/man $outdir/xhtml $outdir/pdf $outdir/chunked $outdir/vkspec.html
|
||
|
rm specversion.txt
|
||
|
|
||
|
echo "**** GENERATING WSI SPEC ****"
|
||
|
make specversion.txt
|
||
|
make OUTDIR=$outdir xhtml pdf
|
||
|
rm $outdir/pdf/vkspec.xml
|
||
|
git checkout -- specversion.txt
|
||
|
|
||
|
##################### Post-generation cleanup #####################
|
||
|
|
||
|
git checkout master
|
||
|
echo "*** Spec generaion complete, on master branch"
|
||
|
echo "To tag the spec branches, do the following:"
|
||
|
|
||
|
date=`date +%Y%m%d`
|
||
|
echo git checkout master
|
||
|
echo git tag -a -m '"Tag core API specification for' $date 'release"' v1.0-core-$date
|
||
|
|
||
|
echo git checkout $wsibranch
|
||
|
echo git tag -a -m '"Tag core+WSI API specification for' $date 'release"' v1.0-core+wsi-$date
|