File: make-release

package info (click to toggle)
altree 1.3.2-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 11,288 kB
  • sloc: perl: 3,482; ansic: 1,716; sh: 267; pascal: 67; makefile: 21
file content (96 lines) | stat: -rwxr-xr-x 2,288 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
#!/bin/sh

set -e

VERSION=$(cat progs/altree | \
	sed -e '/our.*VERSION/s/.*qv(\([0-9.]\+\)).*/\1/p;d')

if [ "$VERSION" = "" ]; then
	echo "Unable to read current version. Aborting."
	exit 1
fi

FORCE=""

while [ $# != 0 ]; do
  case "$1" in
  --force)
    echo "--force enabled. Disabling sanity check..."
    FORCE=yes
    ;;
  --dry-run|-n)
    echo "--dry-run enabled. No real release will be done."
    DRYRUN="echo DRY-RUN: "
    ;;
  --)
    shift
    break
    ;;
  -*)
    echo "Unknown option $1"
    echo "Aborting"
    exit 1
    ;;
  *)
    break;
    ;;
  esac
  shift
done

echo "Creating version '$VERSION'"

set -x
[ -f Makefile ] || perl Makefile.PL
make Makefile || true
make realclean
make -C Documentation distclean
set +x

if [ "$(git status --short --untracked)" != "" ]; then
   echo "************************************"
   echo "* Not all files are commited/cleaned"
   echo "* Please correct before creating a release"
   echo "* (use 'git status --short --untracked' to look for problematic files)"
   echo "* (use 'git stash -a' to remove them temporarely)"
   echo "************************************"
   if [ "$FORCE" ]; then
     echo "* !!! WARNING: --force enabled : type 'ENTER to continue'"
     echo "************************************"
     read a
   else
     exit 1
   fi
fi
  
perl Makefile.PL

if [ "$(make distcheck 2>&1 1>/dev/null | grep -v "^No such file: META.yml$")" != "" ]; then
   echo "************************************"
   echo "* Not all files are in MANIFEST (or removed from it)"
   echo "* Please correct before creating a release"
   echo "* (use 'make distcheck' to look for problematic files"
   echo "************************************"
   if [ "$FORCE" ]; then
     echo "* !!! WARNING: --force enabled : type 'ENTER to continue'"
     echo "************************************"
     read a
   else
     exit 1
   fi
fi
  
make disttest
make dist

echo "************************************"
echo "* SUCCESS !"
echo "************************************"
echo "* Release created in altree-$VERSION.tar.gz"
echo "* Do not forget to create a git tag and push it"
echo "* You need to copy this file to the web site"
echo "* and tell Vince to update the debian package"
echo "************************************"