From 1019ee831513e43a1bfa595ef8a2fb7cf753a779 Mon Sep 17 00:00:00 2001 From: jakub Date: Thu, 3 May 2018 09:29:39 +0000 Subject: [PATCH] PR other/85622 * gcc_release: For -f, verify contrib/gennews has the major version pages listed and both index.html and changes.html have been updated for the new release. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@259881 138bc75d-0d04-0410-961f-82ee72b054a4 --- maintainer-scripts/ChangeLog | 7 +++++++ maintainer-scripts/gcc_release | 32 +++++++++++++++++++++++++++++++- 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/maintainer-scripts/ChangeLog b/maintainer-scripts/ChangeLog index 71b80f2f431..0259aabd1d3 100644 --- a/maintainer-scripts/ChangeLog +++ b/maintainer-scripts/ChangeLog @@ -1,3 +1,10 @@ +2018-05-03 Jakub Jelinek + + PR other/85622 + * gcc_release: For -f, verify contrib/gennews has the major version + pages listed and both index.html and changes.html have been updated + for the new release. + 2018-04-25 Jakub Jelinek * crontab: Enable snapshots from gcc-8-branch. diff --git a/maintainer-scripts/gcc_release b/maintainer-scripts/gcc_release index e784554eabb..440b0ba51ff 100755 --- a/maintainer-scripts/gcc_release +++ b/maintainer-scripts/gcc_release @@ -9,7 +9,7 @@ # Contents: # Script to create a GCC release. # -# Copyright (c) 2001-2015 Free Software Foundation. +# Copyright (c) 2001-2018 Free Software Foundation. # # This file is part of GCC. # @@ -109,6 +109,36 @@ build_sources() { ${SVN} -q co "${SVNROOT}/${SVNBRANCH}" "`basename ${SOURCE_DIRECTORY}`" ||\ error "Could not check out release sources" + + grep -q "gcc-${RELEASE_MAJOR}/index.html gcc-${RELEASE_MAJOR}/changes.html" \ + ${SOURCE_DIRECTORY}/contrib/gennews ||\ + error "New release not listed in contrib/gennews" + + ${SOURCE_DIRECTORY}/contrib/gennews > NEWS ||\ + error "Could not regenerate NEWS files" + + grep -q "no releases of GCC ${RELEASE_MAJOR} have yet been made" NEWS &&\ + error "gcc-${RELEASE_MAJOR}/index.html has not been updated yet" + + grep -q "GCC ${RELEASE_MAJOR} has not been released yet" NEWS &&\ + error "gcc-${RELEASE_MAJOR}/changes.html has not been updated yet" + + thisindex="http:\/\/gcc.gnu.org\/gcc-${RELEASE_MAJOR}\/index.html" + thischanges="http:\/\/gcc.gnu.org\/gcc-${RELEASE_MAJOR}\/changes.html" + previndex="http:\/\/gcc.gnu.org\/gcc-`expr ${RELEASE_MAJOR} - 1`\/index.html" + sed -n -e "/^${thisindex}/,/^${thischanges}/p" NEWS |\ + sed -n -e "/Release History/,/References and Acknowledgments/p" |\ + grep -q "GCC ${RELEASE_MAJOR}.${RELEASE_MINOR}" ||\ + error "GCC ${RELEASE_MAJOR}.${RELEASE_MINOR} not mentioned "\ + "in gcc-${RELEASE_MAJOR}/index.html" + + sed -n -e "/^${thischanges}/,/^${previndex}/p" NEWS |\ + grep -q "^GCC ${RELEASE_MAJOR}.${RELEASE_MINOR}" ||\ + error "GCC ${RELEASE_MAJOR}.${RELEASE_MINOR} not mentioned "\ + "in gcc-${RELEASE_MAJOR}/changes.html" + + rm -f NEWS + svnciargs="" for x in `changedir ${SOURCE_DIRECTORY} && \ find . -name ChangeLog`; do -- 2.11.4.GIT