From 002c902b5363656887b5ff5e056e247192b5b044 Mon Sep 17 00:00:00 2001 From: Christian Starkjohann Date: Fri, 18 Apr 2008 17:07:42 +0000 Subject: - added mkdist.sh script --- mkdist.sh | 127 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 127 insertions(+) create mode 100755 mkdist.sh (limited to 'mkdist.sh') diff --git a/mkdist.sh b/mkdist.sh new file mode 100755 index 0000000..fc35b99 --- /dev/null +++ b/mkdist.sh @@ -0,0 +1,127 @@ +#!/bin/sh +# Name: mkdist.sh +# Project: avr-usb +# Author: Christian Starkjohann +# Creation Date: 2008-04-18 +# Tabsize: 4 +# Copyright: (c) 2008 by OBJECTIVE DEVELOPMENT Software GmbH +# License: GNU GPL v2 (see License.txt) or proprietary (CommercialLicense.txt) +# This Revision: $Id$ + +# This script was created for Mac OS X with EAGLE and ImageMagick installed +# The "open" command is specific to Mac OS X and is used to start GUI +# applications or open files and directories. + +name=avrusb + +PATH="$PATH:/usr/local/EAGLE/bin" +eagle=eagle + +#------------------------------------------------------------------- +# initial user dialog: +#------------------------------------------------------------------- + +if [ "$1" = public ]; then + echo "Generating a public (tagged) release" + isPublic=yes + today=`date +%Y%m%d` + releasedate=`grep '^[*] Release ' usbdrv/Changelog.txt | awk '{date=$NF} END{gsub("-", "", date); print date}'` + if [ "$releasedate" != "$today" ]; then + echo "Release is not documented in usbdrv/Changelog.txt, please do that!" + exit 1 + fi + cat << EOF | sed -n -f /dev/stdin usbdrv/usbdrv.h >usbdrv/usbdrv.h.new +/^\( [*] \)\{0,1\}[+].*\$/ d +s/^#define USBDRV_VERSION .*\$/#define USBDRV_VERSION $today/g +p +EOF + rm usbdrv/usbdrv.h + mv usbdrv/usbdrv.h.new usbdrv/usbdrv.h +else + echo "For a public release (tagged in subversion) add parameter \"public\"" + isPublic=no +fi + +#------------------------------------------------------------------- +# determine version, commit and tag in SVN +#------------------------------------------------------------------- +open -a X11 # we need X11 for EAGLE + +if svn commit; then + : +else + echo "svn commit failed, aborting" + exit 1 +fi + +version=`grep USBDRV_VERSION usbdrv/usbdrv.h | awk '{print $NF}'` + +if [ "$isPublic" != yes ]; then + version="$version"-priv +fi + + +repository=`svn info | sed -n -e '/^URL:/ s|^URL: \(.*\)/trunk|\1| p'` +if [ "$isPublic" = yes ]; then + echo "Tagging $repository as $version" + svn copy "$repository/trunk" "$repository/tags/$version" -m "tagging as $version" +fi + +#------------------------------------------------------------------- +# SVN checkout +#------------------------------------------------------------------- + +echo "Creating distribution for $name version $version" +pkgname="$name-$version" + +if svn checkout "$repository/trunk" "/tmp/$pkgname"; then + : +else + echo "svn checkout failed, aborting" + exit 1 +fi +cd "/tmp/$pkgname" + +#------------------------------------------------------------------- +# Automatically create PNG files from EAGLE design +#------------------------------------------------------------------- + +# Script for exporting circuit diagram: +tname="mkdist-$$" +cat >/tmp/$tname.scr <