From 63941aff85d482345798fc16d74c1551f79286d5 Mon Sep 17 00:00:00 2001 From: Aleksander Morgado Date: Wed, 12 Oct 2022 20:35:43 +0000 Subject: RELEASING: switch to meson based steps --- RELEASING | 67 +++++++++++++++++++++++++++++++-------------------------------- 1 file changed, 33 insertions(+), 34 deletions(-) (limited to 'RELEASING') diff --git a/RELEASING b/RELEASING index 0ffe11a6..90bf8739 100644 --- a/RELEASING +++ b/RELEASING @@ -1,5 +1,5 @@ -The libqmi releases are generated using the GNU autotools. +The libqmi releases are generated using meson. 0.1) For major releases: * Increment qmi_minor_version and reset qmi_micro_version. @@ -9,32 +9,26 @@ The libqmi releases are generated using the GNU autotools. 0.2) For stable branch releases: * Increment qmi_micro_version. -1) Configure and build the whole project, making sure gtk-doc is enabled: +1) Add signed tag: + $ git tag -s 1.32.0 - $ NOCONFIGURE=1 ./autogen.sh - $ ./configure --enable-gtk-doc - $ make -j8 + The description included in the signed tag could be: + Release 1.32.0 -2) Run distcheck so that the source distribution tarball is generated, and the - project test suite is run on it: +2) Configure and build the whole project, making sure gtk-doc and introspection + are enabled: + $ meson setup build \ + --prefix=/usr \ + --buildtype=release \ + -Dintrospection=true \ + -Dgtk_doc=true + $ ninja -C build - $ make distcheck +3) Run the test suite and install locally: + $ ninja -C build test + $ sudo ninja -C build install -3) Compute checksum of the tarball so that it can be referenced in the release - email: - - $ sha256sum libqmi-${VERSION}.tar.xz - -4) Sign release tarball, and verify it (*): - - $ gpg --detach-sign --armor libqmi-${VERSION}.tar.xz - $ gpg --verify libqmi-${VERSION}.tar.xz.asc libqmi-${VERSION}.tar.xz - -5) Upload source tarball (.tar.xz) and signature (.tar.xz.asc) to - freedesktop.org. - $ scp libqmi-${VERSION}.tar.xz* fd.o:${libqmi}/ - -6) Create directories for the manpages and gtk-doc documentation in +4) Create directories for the manpages and gtk-doc documentation in freedesktop.org, and also update the 'latest' links: $ ssh fd.o [fd.o] $ cd ${libqmi}/man/ @@ -46,20 +40,25 @@ The libqmi releases are generated using the GNU autotools. [fd.o] $ mkdir -p ${VERSION} [fd.o] $ ln -s ${VERSION} latest -7) Generate HTML for the manpages: - $ roffit < docs/man/qmicli.1 > qmicli.1.html - $ roffit < docs/man/qmi-network.1 > qmi-network.1.html - $ roffit < docs/man/qmi-firmware-update.1 > qmi-firmware-update.1.html +5) Generate HTML for the manpages: + $ roffit < build/docs/man/qmicli.1 > qmicli.1.html + $ roffit < build/docs/man/qmi-network.1 > qmi-network.1.html + $ roffit < build/docs/man/qmi-firmware-update.1 > qmi-firmware-update.1.html -8) Upload manpages in HTML to freedesktop.org: +6) Upload manpages in HTML to freedesktop.org: $ scp *.1.html fd.o:${libqmi}/man/${VERSION}/ -9) Upload the gtk-doc in HTML available inside the source tarball to - freedesktop.org. It must be the one inside the tarball because it contains - the correct fixed refs to the online documentation of the dependencies - (e.g. the glib/gobject/gio documentation URLs in http://developer.gnome.org) - $ tar -Jxvf libqmi-${VERSION}.tar.xz - $ scp libqmi-${VERSION}/docs/reference/libqmi-glib/html/* fd.o:${libqmi}/libqmi-glib/${VERSION}/ +7) Copy documentation from /usr/share/gtk-doc and fix online references manually + $ mkdir html + $ cp -r /usr/share/gtk-doc/html/libqmi-glib/* html/ + $ for FILE in $(ls html/*.html); do \ + sed -i 's|]* href="\.\./glib/[^"]*|