Revision 3d5fda3b67f9a261bcfcae8ccede7a3013fb8c36 authored by Alexandre Oliva on 17 November 2021, 13:42:00 UTC, committed by Alexandre Oliva on 17 November 2021, 13:42:00 UTC
1 parent 328fa18
Raw File
mkgitrel
#! /bin/bash

# Copyright 2021 Alexandre Oliva <lxoliva@fsfla.org>
#
# This program is part of GNU Linux-libre, a GNU project that
# publishes scripts to clean up Linux so as to make it suitable for
# use in the GNU Project and in Free System Distributions.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301
# USA


# usage: mkgitrel 5.5.5-gnu 5.4.3-gnu 5.0.111-gnu1 ...

# This is our release engineering script.  It's very tied to our
# internal cleaning-up repository structure, as well as to our public
# git and download repositories.

# It checks out upstream sources, finds and checks out cleaning-up
# scripts, cleans up the sources, commits the changes, creates signed
# tags for publishing, tarballs and patchfiles for publishing and for
# manual verification, checks that the tarballs look clean and waits
# for manual verification before preparing tags and tarballs for
# publishing.

success=:
for rel
do
  case $rel in
  v*)
    echo $rel starts with v, that is unexpected >&2
    success=false
    ;;
  *.*-gnu*)
    ;;
  *)
    echo $rel does not end with -gnu, that is unexpected >&2
    success=false
    ;;
  esac
done && $success &&

$0.cln "$@" &&

echo all revs cleaned up, awaiting manual check results... &&

$0.pub "$@" &&

echo all git tagging done, now compressing... &&

$0.rel "$@"

exit
back to top