From 1285462a560a65c7de2579af2053e4f62faa28af Mon Sep 17 00:00:00 2001 From: Mike Burns Date: Wed, 19 Nov 2014 20:05:47 -0800 Subject: Add a release script The Makefiles were mostly filled with a complex shell script written in m4sh. Moving that out into a separate script helps debugging and compatibility, and in general makes life better. This also improved the DEVELOPERS.md documentation to be more clear about the steps of a release, including third-party packages. --- DEVELOPERS.md | 55 +++++++++++++++++++++++++++---------------------------- 1 file changed, 27 insertions(+), 28 deletions(-) (limited to 'DEVELOPERS.md') diff --git a/DEVELOPERS.md b/DEVELOPERS.md index 8e6f327..00e5d41 100644 --- a/DEVELOPERS.md +++ b/DEVELOPERS.md @@ -8,51 +8,50 @@ Making a release 2. Update the build system by running: `./autogen.sh`. -3. Build the packages: +3. Build the trivial packages: This all depends on a `gh-pages` branch: git branch gh-pages origin/gh-pages +First build the distribution: + + make distcheck + On any system you can build the tarball, Homebrew package, Arch PKGBUILD, and tag: - make release_build_tarball release_build_homebrew release_build_arch \ - release_build_tag + ./maint/release build tarball rcm-*.tar.gz + ./maint/release build homebrew rcm-*.tar.gz + ./maint/release build arch rcm-*.tar.gz + ./maint/release build tag rcm-*.tar.gz You need mdocml to tranform the manpages into HTML: - make release_build_man_html - -Only on Debian systems can you build the Debian package: - - make release_build_deb + ./maint/release build man_html rcm-*.tar.gz -If you are on a Debian system with mdocml, here is a shortcut: +Once built, you can push it live: - make release_build + ./maint/release push tarball rcm-*.tar.gz + # ... etc. ... -From here you can push these: +And once pushed, you should clean up - make release_push_tarball release_push_homebrew release_push_arch \ - release_push_tag release_push_man_html - make release_push_deb + ./maint/release clean tarball rcm-*.tar.gz + # ... etc. ... -Or, all at once: +4. Build the Debian package: - make release_push - -You can clean individual steps: - - make release_clean_tarball release_clean_homebrew release_clean_arch \ - release_clean_deb release_clean_tag release_clean_man_html - -Or, again, everything at once: +Only on Debian systems can you build the Debian package: - make release_clean + make NEWS.md + ./maint/release build deb rcm-*.tar.gz + ./maint/release push deb rcm-*.tar.gz + ./maint/release clean deb rcm-*.tar.gz -If you are on a Debian system, have mdocml installed, have an absurd -amount of trust in the system, and know how to debug it intimately, give -everything a go: +5. Contact package maintainers: - make release +Gentoo Anton Ilin 0xCB2AA11FEB76CE36 +OpenBSD Mike Burns 0x3E6761F72846B014 +openSUSE Andrei Dziahel 0x58BA3FA4A49D76C2 +Ubuntu Martin Frost 0x98624E2FE507FAF2 -- cgit v1.2.3