summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Josefsson <simon@josefsson.org>2008-02-26 10:50:20 +0100
committerSimon Josefsson <simon@josefsson.org>2008-02-26 10:50:20 +0100
commit729bc7c7766b5a30eeee29f22b058ee47ca0a971 (patch)
treef00e011edb603c6d989b00ba8f61ff7f4af05658
parent9613dce563ff50ea823de63e07d75b0a1f03ac60 (diff)
downloadgnutls-729bc7c7766b5a30eeee29f22b058ee47ca0a971.tar.gz
Use gnupload.
-rw-r--r--Makefile.am9
-rwxr-xr-xbuild-aux/gnupload183
-rw-r--r--gl/gnulib.mk9
-rw-r--r--gl/m4/gnulib-cache.m44
-rw-r--r--gl/m4/gnulib-comp.m41
5 files changed, 199 insertions, 7 deletions
diff --git a/Makefile.am b/Makefile.am
index d886059900..5c7411dbae 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -50,14 +50,15 @@ release:
cd doc && ../build-aux/gendocs.sh -o ../$(htmldir)/manual/ $(PACKAGE) "GNU TLS"
git commit -m Generated. ChangeLog
git-tag -u b565716f! -m $(VERSION) $(tag)
- git-push --tags
- git-push
+ cp -v $(distdir).tar.bz2 $(distdir).tar.bz2.sig $(htmldir)/releases/
+ cp -v doc/reference/html/*.html doc/reference/html/*.png doc/reference/html/*.css doc/reference/html/*.devhelp $(htmldir)/reference/
gpg -b $(distdir).tar.bz2
gpg --verify $(distdir).tar.bz2.sig
+ git-push --tags
+ git-push
scp $(distdir).tar.bz2 $(distdir).tar.bz2.sig igloo.linux.gr:~ftp/pub/gnutls/devel/
ssh igloo.linux.gr 'cd ~ftp/pub/gnutls/devel/ && sha1sum *.tar.bz2 > CHECKSUMS'
- cp -v $(distdir).tar.bz2 $(distdir).tar.bz2.sig $(htmldir)/releases/
- cp -v doc/reference/html/*.html doc/reference/html/*.png doc/reference/html/*.css doc/reference/html/*.devhelp $(htmldir)/reference/
+ build-aux/gnupload --to alpha.gnu.org:gnutls $(distdir).tar.gz
cd $(htmldir) && \
cvs add -kb releases/$(distdir).tar.bz2 \
releases/$(distdir).tar.bz2.sig && \
diff --git a/build-aux/gnupload b/build-aux/gnupload
new file mode 100755
index 0000000000..2e3c8014c7
--- /dev/null
+++ b/build-aux/gnupload
@@ -0,0 +1,183 @@
+#!/bin/sh
+# Sign files and upload them.
+
+scriptversion=2007-12-18.17
+
+# Copyright (C) 2004, 2005, 2006, 2007 Free Software Foundation
+#
+# 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, 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, see <http://www.gnu.org/licenses/>.
+
+# Originally written by Alexandre Duret-Lutz <adl@gnu.org>.
+
+set -e
+
+GPG='gpg --batch --no-tty'
+to=
+
+usage="Usage: $0 [OPTIONS]... FILES...
+
+Sign all FILES, and upload them to selected destinations, according to
+<http://www.gnu.org/prep/maintain/html_node/Automated-FTP-Uploads.html>.
+
+Options:
+ --help print this help text and exit
+ --to DEST specify one destination for FILES
+ (multiple --to options are allowed)
+ --user NAME sign with key NAME
+ --version output version information and exit
+
+Recognized destinations are:
+ alpha.gnu.org:DIRECTORY
+ savannah.gnu.org:DIRECTORY
+ savannah.nongnu.org:DIRECTORY
+ ftp.gnu.org:DIRECTORY
+ build directive files and upload files by FTP
+ [user@]host:DIRECTORY upload files with scp
+
+Example:
+ gnupload --to sources.redhat.com:~ftp/pub/automake \\
+ --to alpha.gnu.org:automake \\
+ automake-1.8.2b.tar.gz automake-1.8.2b.tar.bz2
+
+Report bugs to <bug-automake@gnu.org>.
+Send patches to <automake-patches@gnu.org>."
+
+while test -n "$1"; do
+ case $1 in
+ --help)
+ echo "$usage"
+ exit $?
+ ;;
+ --to)
+ if test -z "$2"; then
+ echo "$0: Missing argument for --to" 1>&2
+ exit 1
+ else
+ to="$to $2"
+ shift 2
+ fi
+ ;;
+ --user)
+ if test -z "$2"; then
+ echo "$0: Missing argument for --user" 1>&2
+ exit 1
+ else
+ GPG="$GPG --local-user $2"
+ shift 2
+ fi
+ ;;
+ --version)
+ echo "gnupload $scriptversion"
+ exit $?
+ ;;
+ -*)
+ echo "$0: Unknown option \`$1', try \`$0 --help'" 1>&2
+ exit 1
+ ;;
+ *)
+ break
+ ;;
+ esac
+done
+
+if test $# = 0; then
+ echo "$0: No file to upload" 1>&2
+ exit 1
+else
+ :
+fi
+
+# Make sure all files exist. We don't want to ask
+# for the passphrase if the script will fail.
+for file
+do
+ if test ! -f $file; then
+ echo "$0: Cannot find \`$file'" 1>&2
+ exit 1
+ else
+ :
+ fi
+done
+
+# Make sure passphrase is not exported in the environment.
+unset passphrase
+
+# Reset PATH to be sure that echo is a built-in. We will later use
+# `echo $passphrase' to output the passphrase, so it is important that
+# it is a built-in (third-party programs tend to appear in `ps'
+# listings with their arguments...).
+# Remember this script runs with `set -e', so if echo is not built-in
+# it will exit now.
+PATH=/empty echo -n "Enter GPG passphrase: "
+stty -echo
+read -r passphrase
+stty echo
+echo
+
+for file
+do
+ echo "Signing $file..."
+ rm -f $file.sig
+ echo $passphrase | $GPG --passphrase-fd 0 -ba -o $file.sig $file
+done
+
+for dest in $to
+do
+ for file
+ do
+ echo "Uploading $file to $dest..."
+ files="$file $file.sig"
+ destdir=`echo $dest | sed 's/[^:]*://'`
+ case $dest in
+ alpha.gnu.org:*)
+ rm -f $file.directive $file.directive.asc
+ cat >$file.directive<<EOF
+version: 1.1
+directory: $destdir
+filename: $file
+EOF
+ echo "$passphrase" | $GPG --passphrase-fd 0 --clearsign $file.directive
+ ncftpput ftp-upload.gnu.org /incoming/alpha $files $file.directive.asc
+ rm -f $file.directive $file.directive.asc
+ ;;
+ ftp.gnu.org:*)
+ rm -f $file.directive $file.directive.asc
+ cat >$file.directive<<EOF
+version: 1.1
+directory: $destdir
+filename: $file
+EOF
+ echo "$passphrase" | $GPG --passphrase-fd 0 --clearsign $file.directive
+ ncftpput ftp-upload.gnu.org /incoming/ftp $files $file.directive.asc
+ rm -f $file.directive $file.directive.asc
+ ;;
+ savannah.gnu.org:*)
+ ncftpput savannah.gnu.org /incoming/savannah/$destdir $files
+ ;;
+ savannah.nongnu.org:*)
+ ncftpput savannah.nongnu.org /incoming/savannah/$destdir $files
+ ;;
+ *)
+ scp $files $dest
+ ;;
+ esac
+ done
+done
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff --git a/gl/gnulib.mk b/gl/gnulib.mk
index 4253563af0..80b164bd0e 100644
--- a/gl/gnulib.mk
+++ b/gl/gnulib.mk
@@ -9,7 +9,7 @@
# the same distribution terms as the rest of that program.
#
# Generated by gnulib-tool.
-# Reproduce by: gnulib-tool --import --dir=. --local-dir=gl/override --lib=libgnu --source-base=gl --m4-base=gl/m4 --doc-base=doc --aux-dir=build-aux --avoid=gettext-h --avoid=malloc-posix --avoid=realloc-posix --avoid=snprintf --avoid=stdbool --avoid=stdio --avoid=string --avoid=sys_socket --avoid=unistd --avoid=vasnprintf --makefile-name=gnulib.mk --libtool --macro-prefix=gl arpa_inet error fdl gendocs getaddrinfo getline getpass gpl-3.0 inet_ntop inet_pton lgpl-2.1 maintainer-makefile progname readline version-etc-fsf
+# Reproduce by: gnulib-tool --import --dir=. --local-dir=gl/override --lib=libgnu --source-base=gl --m4-base=gl/m4 --doc-base=doc --aux-dir=build-aux --avoid=gettext-h --avoid=malloc-posix --avoid=realloc-posix --avoid=snprintf --avoid=stdbool --avoid=stdio --avoid=string --avoid=sys_socket --avoid=unistd --avoid=vasnprintf --makefile-name=gnulib.mk --libtool --macro-prefix=gl arpa_inet error fdl gendocs getaddrinfo getline getpass gnupload gpl-3.0 inet_ntop inet_pton lgpl-2.1 maintainer-makefile progname readline version-etc-fsf
MOSTLYCLEANFILES += core *.stackdump
@@ -101,6 +101,13 @@ EXTRA_libgnu_la_SOURCES += getpass.c
## end gnulib module getpass
+## begin gnulib module gnupload
+
+
+EXTRA_DIST += $(top_srcdir)/build-aux/gnupload
+
+## end gnulib module gnupload
+
## begin gnulib module havelib
diff --git a/gl/m4/gnulib-cache.m4 b/gl/m4/gnulib-cache.m4
index 359bc56dd4..2e9b9cdac2 100644
--- a/gl/m4/gnulib-cache.m4
+++ b/gl/m4/gnulib-cache.m4
@@ -15,11 +15,11 @@
# Specification in the form of a command-line invocation:
-# gnulib-tool --import --dir=. --local-dir=gl/override --lib=libgnu --source-base=gl --m4-base=gl/m4 --doc-base=doc --aux-dir=build-aux --avoid=gettext-h --avoid=malloc-posix --avoid=realloc-posix --avoid=snprintf --avoid=stdbool --avoid=stdio --avoid=string --avoid=sys_socket --avoid=unistd --avoid=vasnprintf --makefile-name=gnulib.mk --libtool --macro-prefix=gl arpa_inet error fdl gendocs getaddrinfo getline getpass gpl-3.0 inet_ntop inet_pton lgpl-2.1 maintainer-makefile progname readline version-etc-fsf
+# gnulib-tool --import --dir=. --local-dir=gl/override --lib=libgnu --source-base=gl --m4-base=gl/m4 --doc-base=doc --aux-dir=build-aux --avoid=gettext-h --avoid=malloc-posix --avoid=realloc-posix --avoid=snprintf --avoid=stdbool --avoid=stdio --avoid=string --avoid=sys_socket --avoid=unistd --avoid=vasnprintf --makefile-name=gnulib.mk --libtool --macro-prefix=gl arpa_inet error fdl gendocs getaddrinfo getline getpass gnupload gpl-3.0 inet_ntop inet_pton lgpl-2.1 maintainer-makefile progname readline version-etc-fsf
# Specification in the form of a few gnulib-tool.m4 macro invocations:
gl_LOCAL_DIR([gl/override])
-gl_MODULES([arpa_inet error fdl gendocs getaddrinfo getline getpass gpl-3.0 inet_ntop inet_pton lgpl-2.1 maintainer-makefile progname readline version-etc-fsf])
+gl_MODULES([arpa_inet error fdl gendocs getaddrinfo getline getpass gnupload gpl-3.0 inet_ntop inet_pton lgpl-2.1 maintainer-makefile progname readline version-etc-fsf])
gl_AVOID([gettext-h malloc-posix realloc-posix snprintf stdbool stdio string sys_socket unistd vasnprintf])
gl_SOURCE_BASE([gl])
gl_M4_BASE([gl/m4])
diff --git a/gl/m4/gnulib-comp.m4 b/gl/m4/gnulib-comp.m4
index 1c484848da..d9fd011da9 100644
--- a/gl/m4/gnulib-comp.m4
+++ b/gl/m4/gnulib-comp.m4
@@ -190,6 +190,7 @@ AC_DEFUN([gl_FILE_LIST], [
build-aux/GNUmakefile
build-aux/config.rpath
build-aux/gendocs.sh
+ build-aux/gnupload
build-aux/maint.mk
doc/fdl.texi
doc/gendocs_template