diff --git a/scripts/MAKE_RELEASE.sh b/scripts/MAKE_RELEASE.sh new file mode 100644 index 000000000..7d0a85950 --- /dev/null +++ b/scripts/MAKE_RELEASE.sh @@ -0,0 +1,63 @@ +#!/bin/sh + +# This script makes a release from a git repository. The input is +# the number for a snapshot and the path to a temporary directory. +# for example: +# +# sh scripts/MAKE_RELEASE.sh 0.9.1 ~/tmp +# +# The above assumes that there is a tag "v0_9_1" at the point +# to be released. (The tag has the "v", but the argument to this +# script does not have the "v"). This script extracts based on the +# tag, uses the temporary directory to stage intermediate results, +# and finally creates a file called verilog-0.9.1.tar.gz that +# contains the release ready to go. +# +# The complete steps to make a release x.y.z generally are: +# +# git tag -a v0_9_1 +# (Make the tag in the local git repository.) +# +# sh scripts/MAKE_RELEASE.sh 0.9.1 ~/tmp +# (Make the snapshot bundle verilog-0.9.1.tar.gz) +# +# git push --tags +# (Publish the tag to the repository.) +# +id=$1 +destdir=$2 + +# The git tag to use. +tag="v"`echo $id | tr '.' '_'` + +# The prefix is the directory that contains the extracted files +# of the bundle. This is also the name of the bundle file itself. +prefix="verilog-$id" + +if [ ! -d $destdir ]; then + echo "ERROR: Directory $destdir does not exist." + exit 1 +fi + +if [ -e $destdir/$prefix ]; then + echo "ERROR: $destdir/$prefix already exists." + exit 1 +fi + +echo "Exporting $tag to $destdir/$prefix..." +git archive --prefix="$prefix/" $tag | ( cd "$destdir" && tar xf - ) + +versionh="$destdir/$prefix/version.h" +echo "Create $versionh ..." +echo "#define VERSION_TAG \"$tag\"" > $versionh + +echo "Running autoconf.sh..." +( cd $destdir/$prefix && sh autoconf.sh ) + +echo "Making bundle $prefix.tar.gz..." +tar czf $prefix.tar.gz --exclude=autom4te.cache -C "$destdir" $prefix + +echo "Removing temporary $destdir/$prefix..." +rm -rf "$destdir/$prefix" + +echo done diff --git a/verilog.spec b/verilog.spec index 0a01a5339..15f21e7e2 100644 --- a/verilog.spec +++ b/verilog.spec @@ -10,11 +10,11 @@ # Summary: Icarus Verilog Name: verilog%{suff} -Version: 0.9.0.%{rev_date} +Version: 0.9.1 Release: 0 License: GPL Group: Productivity/Scientific/Electronics -Source: verilog%{suff}-%{rev_date}.tar.gz +Source: verilog%{suff}-%{version}.tar.gz URL: http://www.icarus.com/eda/verilog/index.html Packager: Stephen Williams @@ -32,7 +32,7 @@ engineering formats, including simulation. It strives to be true to the IEEE-1364 standard. %prep -%setup -n verilog%{suff}-%{rev_date} +%setup -n verilog%{suff}-%{version} %build if test X%{suff} != X diff --git a/version_base.in b/version_base.in index f113f6be0..763c05e18 100644 --- a/version_base.in +++ b/version_base.in @@ -3,5 +3,5 @@ * Edit this definition in version_base.in to define the base version * number for the compiled result. */ -#define VERSION "0.9.devel" +#define VERSION "0.9.1" #endif