From d10fcdd019b2a015f53a892828c47139ba28db98 Mon Sep 17 00:00:00 2001 From: jsm28 Date: Fri, 4 Jun 2004 00:02:04 +0000 Subject: [PATCH] * gcc_release (maybe_build_tarfile): New function. (build_tarfiles): Use maybe_build_tarfile. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@82613 138bc75d-0d04-0410-961f-82ee72b054a4 --- maintainer-scripts/ChangeLog | 5 +++++ maintainer-scripts/gcc_release | 35 +++++++++++++++++++++++++++-------- 2 files changed, 32 insertions(+), 8 deletions(-) diff --git a/maintainer-scripts/ChangeLog b/maintainer-scripts/ChangeLog index 7964a6a5760..08459ef6bfb 100644 --- a/maintainer-scripts/ChangeLog +++ b/maintainer-scripts/ChangeLog @@ -1,3 +1,8 @@ +2004-06-03 Joseph S. Myers + + * gcc_release (maybe_build_tarfile): New function. + (build_tarfiles): Use maybe_build_tarfile. + 2004-05-21 Paolo Carlini * gcc_release (build_sources): Generate the NEWS file in toplevel. diff --git a/maintainer-scripts/gcc_release b/maintainer-scripts/gcc_release index dec063b7cc4..8b6a5603006 100755 --- a/maintainer-scripts/gcc_release +++ b/maintainer-scripts/gcc_release @@ -256,7 +256,7 @@ EOF # Buid a single tarfile. The first argument is the name of the name # of the tarfile to build, without any suffixes. They will be added # automatically. The rest of the arguments are the files or -# directories to include. +# directories to include, and possibly other arguments to tar. build_tarfile() { # Get the name of the destination tar file. @@ -269,6 +269,25 @@ build_tarfile() { FILE_LIST="${FILE_LIST} ${TARFILE}" } +# Build a single tarfile if any of the directories listed exist, +# but not if none of them do (because that component doesn't exist +# on this branch). +maybe_build_tarfile() { + dest=$1 + shift + dir_exists=0 + for maybe_dir in "$@"; do + if [ -d "$maybe_dir" ]; then + dir_exists=1 + fi + done + if [ $dir_exists = 1 ]; then + build_tarfile "$dest" "$@" + else + echo "Not building $dest tarfile" + fi +} + # Build the various tar files for the release. build_tarfiles() { @@ -286,13 +305,13 @@ build_tarfiles() { build_tarfile gcc-${RELEASE} `basename ${SOURCE_DIRECTORY}` # Now, build one for each of the languages. - build_tarfile gcc-ada-${RELEASE} ${ADA_DIRS} - build_tarfile gcc-g++-${RELEASE} ${CPLUSPLUS_DIRS} - build_tarfile gcc-g77-${RELEASE} ${FORTRAN_DIRS} - build_tarfile gcc-fortran-${RELEASE} ${FORTRAN95_DIRS} - build_tarfile gcc-java-${RELEASE} ${JAVA_DIRS} - build_tarfile gcc-objc-${RELEASE} ${OBJECTIVEC_DIRS} - build_tarfile gcc-testsuite-${RELEASE} ${TESTSUITE_DIRS} + maybe_build_tarfile gcc-ada-${RELEASE} ${ADA_DIRS} + maybe_build_tarfile gcc-g++-${RELEASE} ${CPLUSPLUS_DIRS} + maybe_build_tarfile gcc-g77-${RELEASE} ${FORTRAN_DIRS} + maybe_build_tarfile gcc-fortran-${RELEASE} ${FORTRAN95_DIRS} + maybe_build_tarfile gcc-java-${RELEASE} ${JAVA_DIRS} + maybe_build_tarfile gcc-objc-${RELEASE} ${OBJECTIVEC_DIRS} + maybe_build_tarfile gcc-testsuite-${RELEASE} ${TESTSUITE_DIRS} # The core is everything else. EXCLUDES="" -- 2.11.0