fwcutter/make: Avoid _DEFAULT_SOURCE warning
[b43-tools.git] / fwcutter / makerelease.sh
index bcb74e0865b00ccb67666290b76c6029d73efeb9..093c51130cf9b95d2dab183facee0c598382ee07 100755 (executable)
@@ -1,44 +1,26 @@
-#!/bin/bash
-set -e
+#!/bin/sh
 
-project="b43-fwcutter"
+srcdir="$(dirname "$0")"
+[ "$(echo "$srcdir" | cut -c1)" = '/' ] || srcdir="$PWD/$srcdir"
 
+srcdir="$srcdir/.." # git repos root
 
-origin="$(pwd)"
-version="$(cat $origin/Makefile | grep -e VERSION | head -n1 | cut -d' ' -f3)"
-if [ -z "$version" ]; then
-       echo "Could not determine version!"
-       exit 1
-fi
-release_name="$project-$version"
-tarball="$release_name.tar.bz2"
+die() { echo "$*"; exit 1; }
 
-export GIT_DIR="$origin/../.git"
+# Import the makerelease.lib
+# http://bues.ch/gitweb?p=misc.git;a=blob_plain;f=makerelease.lib;hb=HEAD
+for path in $(echo "$PATH" | tr ':' ' '); do
+       [ -f "$MAKERELEASE_LIB" ] && break
+       MAKERELEASE_LIB="$path/makerelease.lib"
+done
+[ -f "$MAKERELEASE_LIB" ] && . "$MAKERELEASE_LIB" || die "makerelease.lib not found."
 
-cd /tmp/
-rm -Rf "$release_name"
-echo "Creating target directory"
-mkdir "$release_name"
-cd "$release_name"
-echo "git checkout"
-git checkout -f
-mv fwcutter $release_name
-cd $release_name
+hook_get_version()
+{
+       local file="$1/Makefile"
+       version="$(cat "$file" | grep -e VERSION | head -n1 | cut -d' ' -f3)"
+}
 
-rm makerelease.sh
-
-echo "creating tarball"
-cd ..
-tar cjf "$tarball" "$release_name"
-mv "$tarball" "$origin"
-
-echo "running testbuild"
-cd "$release_name"
-make
-
-echo "removing testbuild"
-cd ../..
-rm -R "$release_name"
-
-echo
-echo "built release $version"
+project=b43-fwcutter
+srcsubdir=fwcutter
+makerelease "$@"