Serve favicon over http.
[darkstat] / release.sh
index 5a3cd0f..4dad0ce 100755 (executable)
@@ -1,11 +1,19 @@
 #!/bin/sh
 #
 # release.sh: script to roll a release tarball of darkstat.
-# copyright (c) 2006-2011 Emil Mikulic.
+# copyright (c) 2006-2016 Emil Mikulic.
 #
 # This is for developer use only and lives in the repo but
 # shouldn't end up in a tarball.
 #
+# Release checklist:
+#  - git tag 3.0.xxx
+#  - git push --tags
+#  - Update website
+#  - Mail announcement to darkstat-announce@googlegroups.com
+#  - Update FreeBSD port, e.g.:
+#    https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=200425
+#
 if [ $# -ne 1 ]; then
   echo "usage: $0 3.0.0rc0" >&2
   exit 1
@@ -27,6 +35,8 @@ acct.c \
 acct.h \
 addr.c \
 addr.h \
+bsd.c \
+bsd.h \
 cap.c \
 cap.h \
 cdefs.h \
@@ -46,6 +56,7 @@ dns.h \
 err.c \
 err.h \
 export-format.txt \
+favicon.h \
 graph_db.c \
 graph_db.h \
 graphjs.h \
@@ -61,6 +72,7 @@ localip.c \
 localip.h \
 ncache.c \
 ncache.h \
+now.c \
 now.h \
 opt.h \
 pidfile.c \
@@ -85,23 +97,26 @@ run() {
 
 PKG=$NAME-$VERSION
 say releasing $PKG
-
-run ./test_headers.sh
 run make depend
 run make graphjs.h stylecss.h
+run autoconf
+run autoheader
+run ./config.status
+run ./test_headers.sh
+if git status --porcelain | egrep -v '^\?\?' -q; then
+  say ERROR: uncommitted changes:
+  git status
+  exit 1
+fi
 run mkdir $PKG
 run cp -r $files $PKG/.
-
-# set the version number
 run sed -e "/AC_INIT/s/darkstat, [^,)]*/darkstat, $VERSION/" configure.ac > $PKG/configure.ac
-
 say set version: `grep '^AC_INIT' $PKG/configure.ac`
-(
- cd $PKG
+(cd $PKG
  run autoconf
  run autoheader
  run rm -r autom4te.cache
-)
+) || exit 1
 
 # package it up
 run tar chof $PKG.tar $PKG