Serve favicon over http.
[darkstat] / release.sh
index df379b7..4dad0ce 100755 (executable)
@@ -1,15 +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.
 #
-# Remember to run "./test_headers.sh"
-# Remember to run "make depend" to update deps in Makefile.in
+# 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
@@ -31,6 +35,8 @@ acct.c \
 acct.h \
 addr.c \
 addr.h \
+bsd.c \
+bsd.h \
 cap.c \
 cap.h \
 cdefs.h \
@@ -50,6 +56,7 @@ dns.h \
 err.c \
 err.h \
 export-format.txt \
+favicon.h \
 graph_db.c \
 graph_db.h \
 graphjs.h \
@@ -65,6 +72,7 @@ localip.c \
 localip.h \
 ncache.c \
 ncache.h \
+now.c \
 now.h \
 opt.h \
 pidfile.c \
@@ -82,30 +90,36 @@ say() {
   echo ==\> "$@" >&2
 }
 
-PKG=$NAME-$VERSION
-say releasing $PKG
-
 run() {
   say "$@"
   "$@" || { say ERROR!; exit 1; }
 }
 
+PKG=$NAME-$VERSION
+say releasing $PKG
+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 -cf $PKG.tar $PKG
+run tar chof $PKG.tar $PKG
 run bzip2 -9vv $PKG.tar
 say output:
 ls -l $PKG.tar.bz2