cppcheck/createrelease

76 lines
2.0 KiB
Bash
Executable File

#!/bin/bash
#
# A script for creating release packages. The release packages are create in the home directory.
#
# Test cppcheck on itself.
# cppcheck -q -j2 --inconclusive --enable=all lib
#
# Make sure "cppcheck --errorlist" works. For example with:
# make test
# cppcheck --errorlist > errlist.xml
# xmllint --noout errlist.xml
# cppcheck --xml-version=2 --errorlist > errlist.xml
# xmllint --noout errlist.xml
#
# Update version numbers in:
# - lib/cppcheck.cpp
# - cli/main.cpp
# - cli/cppcheck.rc
# - man/manual.docbook
# - win_installer/productInfo.wxs
#
# Make sure versions are set:
# grep 'VERSION ' cli/cppcheck.rc
#
# Update the Changelog..
# wget http://josefsson.org/git2cl/git2cl
# chmod 744 git2cl
# ./git2cl > Changelog
# git commit -a -m "1.43: Updated Changelog"
#
# Update the Makefile:
# make dmake
# ./dmake --release
# git commit -a -m "1.43: Updated Makefile"
#
# Build and test the windows installer
#
# Tag:
# git tag 1.43
# git push --tags
#
# Create release:
# ./createrelease 1.43
#
# Restore the Makefile:
# ./dmake
# git commit -a -m "Makefile: Set debug mode"
#
# Generate the manual.pdf, manual.html and version.txt
# make
# ./cppcheck --version > version.txt
# docbook2pdf man/manual.docbook
# xsltproc -o manual.html /usr/share/xml/docbook/stylesheet/nwalsh/xhtml/docbook.xsl man/manual.docbook
#
# Upload manual.pdf , manual.html and version.txt...
# sftp danielmarjamaki,cppcheck@web.sourceforge.net
#
# save "cppcheck --doc" output on wiki
#
# compile new democlient:
# ssh -t danielmarjamaki,cppcheck@shell.sourceforge.net
# ./build.sh 1.43
# Tag to use
tag=$1
# Name of release
releasename=cppcheck-$tag
# Create archives..
git archive --format=tar --prefix=$releasename/ $tag | gzip > ~/$releasename.tar.gz
git archive --format=tar --prefix=$releasename/ $tag | bzip2 > ~/$releasename.tar.bz2
git archive --format=zip -9 --prefix=$releasename/ $tag > ~/$releasename.zip
scp ../$releasename.* danielmarjamaki,cppcheck@frs.sourceforge.net:/home/frs/project/c/cp/cppcheck/cppcheck/$tag/