Next: , Previous: Guidelines for GNU Source Packages, Up: Top



7 Using Automake and Swbis

This section describes an Automake target to include in the top level Makefile.am file. To use it, you must get your package working with Automake and able to create a distribution using one of the standard distribution targets such as dist-gzip that is already part of Automake.

This example target is called dist-swbis. The target is designed to be symmetric with the other standard Automake targets such as dist-gzip. It uses the swign program. The PSF.in file must use the %__tag and %__revision macros described above. The passphrase input options and identity is controlled by environment variables: SWPACKAGEPASSFD, GNUPGNAME, GNUPGHOME.

dist-swbis: distdir
        (cd $(distdir) && swign -s PSF.in --name-version=$(distdir) @-) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz
        $(sw_am__remove_distdir)
# Provide am__remove_distdir ourselves since am__remove_distdir may be a
# private automake variable.
sw_am__remove_distdir = \
  { test ! -d $(distdir) \
      || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \
               && rm -fr $(distdir); }; }

Here is an example invocation using the environment variable controls:

     export SWPACKAGEPASSFD=agent; export GNUPGNAME="Your Name"; make dist-swbis

To input your passphrase from the tty, unset SWPACKAGEPASSFD or set it to "tty".

The result should be a file named distdir.tar.gz that has the same layout as the package produced by dist-gzip excpept this package will carry around your GPG signature in the additional ./catalog meta-data directory.

The file should then be verified:

     swverify -d @- <distdir.tar.gz

That's it.