1
0
mirror of git://git.gnupg.org/gnupg.git synced 2024-11-10 21:38:50 +01:00

Prepared for last 1.4 release candidate

This commit is contained in:
Werner Koch 2004-12-14 07:49:27 +00:00
parent 1037420b76
commit d0b9eff4b6
43 changed files with 12337 additions and 14242 deletions

26
AUTHORS
View File

@ -7,11 +7,14 @@ Security related bug reports: <security@gnupg.org>
Authors Authors
======= =======
Ales Nyakhaychyk <nyakhaychyk@i1fn.linux.by> Translations [be]
Birger Langkjer <birger.langkjer@image.dk> Translations [da] Birger Langkjer <birger.langkjer@image.dk> Translations [da]
Maxim Britov <maxbritov@tut.by> Translations [ru] Maxim Britov <maxbritov@tut.by> Translations [ru]
Daniel Resare <daniel@resare.com> Translations [sv] Daniel Resare <daniel@resare.com> Translations [sv]
Per Tunedal <per@clipanish.com> Translations [sv]
David Shaw <dshaw@jabberwocky.com> Assigns past and future changes. David Shaw <dshaw@jabberwocky.com> Assigns past and future changes.
(all in keyserver/, (all in keyserver/,
@ -25,12 +28,12 @@ Edmund GRIMLEY EVANS <edmundo@rano.org> Translations [eo]
Florian Weimer <fw@deneb.enyo.de> Assigns past and future changes Florian Weimer <fw@deneb.enyo.de> Assigns past and future changes
(changed:g10/parse-packet.c, include/iobuf.h, util/iobuf.c) (changed:g10/parse-packet.c, include/iobuf.h, util/iobuf.c)
Gaël Quéri <gael@lautre.net> Translations [fr] Gaël Quéri <gael@lautre.net> Translations [fr]
(fixed a lot of typos) (fixed a lot of typos)
Gregory Steuck <steuck@iname.com> Translations [ru] Gregory Steuck <steuck@iname.com> Translations [ru]
Nagy Ferenc László <nfl@nfllab.com> Translations [hu] Nagy Ferenc László <nfl@nfllab.com> Translations [hu]
Ivo Timmermans <itimmermans@bigfoot.com> Translations [nl] Ivo Timmermans <itimmermans@bigfoot.com> Translations [nl]
@ -38,11 +41,20 @@ Jacobo Tarri'o Barreiro <jtarrio@iname.com> Translations [gl]
Janusz Aleksander Urbanowicz <alex@bofh.torun.pl> Translations [po] Janusz Aleksander Urbanowicz <alex@bofh.torun.pl> Translations [po]
Jedi Lin <Jedi@idej.org> Translations [zh-tw]
Jouni Hiltunen <jouni.hiltunen@kolumbus.fi> Translations [fi]
Tommi Vainikainen <Tommi.Vainikainen@iki.fi> Translations [fi]
Laurentiu Buzdugan <buzdugan@voyager.net> Translations [ro]
Magda Procha'zkova' <magda@math.muni.cz> Translations [cs] Magda Procha'zkova' <magda@math.muni.cz> Translations [cs]
Michael Roth <mroth@nessie.de> Assigns changes. Michael Roth <mroth@nessie.de> Assigns changes.
(wrote cipher/des.c., changes and bug fixes all over the place) (wrote cipher/des.c., changes and bug fixes all over the place)
Michal Majer <mmajer@econ.umb.sk> Translations [sk]
Marco d'Itri <md@linux.it> Translations [it] Marco d'Itri <md@linux.it> Translations [it]
Matthew Skala <mskala@ansuz.sooke.bc.ca> Disclaimer Matthew Skala <mskala@ansuz.sooke.bc.ca> Disclaimer
@ -65,7 +77,7 @@ Pavel I. Shajdo <zwon@severodvinsk.ru> Translations [ru]
Pedro Morais <morais@poli.org> Translations [pt_PT] Pedro Morais <morais@poli.org> Translations [pt_PT]
Rémi Guyomarch <rguyom@mail.dotcom.fr> Assigns past and future changes. Rémi Guyomarch <rguyom@mail.dotcom.fr> Assigns past and future changes.
(g10/compress.c, g10/encr-data.c, (g10/compress.c, g10/encr-data.c,
g10/free-packet.c, g10/mdfilter.c, g10/plaintext.c, util/iobuf.c) g10/free-packet.c, g10/mdfilter.c, g10/plaintext.c, util/iobuf.c)
@ -93,8 +105,8 @@ Yosiaki IIDA <iida@ring.gr.jp> Translations [ja]
Other legal information Other authors
======================= =============
This program uses the zlib compression library written by This program uses the zlib compression library written by
Jean-loup Gailly and Mark Adler. Jean-loup Gailly and Mark Adler.
@ -113,6 +125,10 @@ Copyright Peter Gutmann, Paul Kendall, and Chris Wedgwood 1996-1999.
The RPM specs file scripts/gnupg.spec has been contributed by The RPM specs file scripts/gnupg.spec has been contributed by
several people. several people.
The files below scripts/conf-w32brg/ is a contribution to GnuPG by
Brian Gladman and not to be considered a proper part of GnuPG.
Copyright 1998, 1999, 2000, 2001, 2002, 2004 Free Software Foundation, Inc. Copyright 1998, 1999, 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
This file is free software; as a special exception the author gives This file is free software; as a special exception the author gives

View File

@ -1,3 +1,9 @@
2004-12-14 Werner Koch <wk@g10code.com>
Released 1.3.93.
* Makefile.am (AUTOMAKE_OPTIONS): Add filename-length-max=99.
2004-11-06 David Shaw <dshaw@jabberwocky.com> 2004-11-06 David Shaw <dshaw@jabberwocky.com>
* configure.ac: Autodetect wldap32 on Windoze. * configure.ac: Autodetect wldap32 on Windoze.
@ -1093,8 +1099,8 @@ Fri Jun 9 10:09:52 CEST 2000 Werner Koch <wk@openit.de>
Wed Jun 7 19:19:09 CEST 2000 Werner Koch <wk@openit.de> Wed Jun 7 19:19:09 CEST 2000 Werner Koch <wk@openit.de>
* acinclude.m4 (MKDIR_TAKES_ONE_ARG): Check some headers. By Gaël Quéri. * acinclude.m4 (MKDIR_TAKES_ONE_ARG): Check some headers. By Gaël Quéri.
* configure.in (AM_INIT_AUTOMAKE): Use this now. By Gaël. * configure.in (AM_INIT_AUTOMAKE): Use this now. By Gaël.
Mon Jun 5 12:37:43 CEST 2000 Werner Koch <wk@openit.de> Mon Jun 5 12:37:43 CEST 2000 Werner Koch <wk@openit.de>
@ -1166,7 +1172,7 @@ Wed Feb 16 14:09:00 CET 2000 Werner Koch <wk@gnupg.de>
Thu Feb 10 17:39:44 CET 2000 Werner Koch <wk@gnupg.de> Thu Feb 10 17:39:44 CET 2000 Werner Koch <wk@gnupg.de>
* configure.in: Use /usr/local for CFLAGS and LDFLAGS when * configure.in: Use /usr/local for CFLAGS and LDFLAGS when
target is freebsd. By Rémi. target is freebsd. By Rémi.
Thu Jan 13 19:31:58 CET 2000 Werner Koch <wk@gnupg.de> Thu Jan 13 19:31:58 CET 2000 Werner Koch <wk@gnupg.de>
@ -1433,7 +1439,7 @@ Tue Jan 12 11:17:18 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
* config.links (m68k-atari-mint): New * config.links (m68k-atari-mint): New
Tue Jan 12 09:17:19 CET 1999 Gaël Quéri <gqueri@mail.dotcom.fr> Tue Jan 12 09:17:19 CET 1999 Gaël Quéri <gqueri@mail.dotcom.fr>
* all: Fixed typos all over the place * all: Fixed typos all over the place

52
INSTALL
View File

@ -1,13 +1,16 @@
Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software Installation Instructions
Foundation, Inc. *************************
This file is free documentation; the Free Software Foundation gives Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004 Free
Software Foundation, Inc.
This file is free documentation; the Free Software Foundation gives
unlimited permission to copy, distribute and modify it. unlimited permission to copy, distribute and modify it.
Basic Installation Basic Installation
================== ==================
These are generic installation instructions. These are generic installation instructions.
The `configure' shell script attempts to guess correct values for The `configure' shell script attempts to guess correct values for
various system-dependent variables used during compilation. It uses various system-dependent variables used during compilation. It uses
@ -67,9 +70,9 @@ The simplest way to compile this package is:
Compilers and Options Compilers and Options
===================== =====================
Some systems require unusual options for compilation or linking that Some systems require unusual options for compilation or linking that the
the `configure' script does not know about. Run `./configure --help' `configure' script does not know about. Run `./configure --help' for
for details on some of the pertinent environment variables. details on some of the pertinent environment variables.
You can give `configure' initial values for configuration parameters You can give `configure' initial values for configuration parameters
by setting variables in the command line or in the environment. Here by setting variables in the command line or in the environment. Here
@ -82,7 +85,7 @@ is an example:
Compiling For Multiple Architectures Compiling For Multiple Architectures
==================================== ====================================
You can compile the package for more than one kind of computer at the You can compile the package for more than one kind of computer at the
same time, by placing the object files for each architecture in their same time, by placing the object files for each architecture in their
own directory. To do this, you must use a version of `make' that own directory. To do this, you must use a version of `make' that
supports the `VPATH' variable, such as GNU `make'. `cd' to the supports the `VPATH' variable, such as GNU `make'. `cd' to the
@ -99,19 +102,19 @@ for another architecture.
Installation Names Installation Names
================== ==================
By default, `make install' will install the package's files in By default, `make install' will install the package's files in
`/usr/local/bin', `/usr/local/man', etc. You can specify an `/usr/local/bin', `/usr/local/man', etc. You can specify an
installation prefix other than `/usr/local' by giving `configure' the installation prefix other than `/usr/local' by giving `configure' the
option `--prefix=PATH'. option `--prefix=PREFIX'.
You can specify separate installation prefixes for You can specify separate installation prefixes for
architecture-specific files and architecture-independent files. If you architecture-specific files and architecture-independent files. If you
give `configure' the option `--exec-prefix=PATH', the package will use give `configure' the option `--exec-prefix=PREFIX', the package will
PATH as the prefix for installing programs and libraries. use PREFIX as the prefix for installing programs and libraries.
Documentation and other data files will still use the regular prefix. Documentation and other data files will still use the regular prefix.
In addition, if you use an unusual directory layout you can give In addition, if you use an unusual directory layout you can give
options like `--bindir=PATH' to specify different values for particular options like `--bindir=DIR' to specify different values for particular
kinds of files. Run `configure --help' for a list of the directories kinds of files. Run `configure --help' for a list of the directories
you can set and what kinds of files go in them. you can set and what kinds of files go in them.
@ -122,7 +125,7 @@ option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
Optional Features Optional Features
================= =================
Some packages pay attention to `--enable-FEATURE' options to Some packages pay attention to `--enable-FEATURE' options to
`configure', where FEATURE indicates an optional part of the package. `configure', where FEATURE indicates an optional part of the package.
They may also pay attention to `--with-PACKAGE' options, where PACKAGE They may also pay attention to `--with-PACKAGE' options, where PACKAGE
is something like `gnu-as' or `x' (for the X Window System). The is something like `gnu-as' or `x' (for the X Window System). The
@ -137,11 +140,11 @@ you can use the `configure' options `--x-includes=DIR' and
Specifying the System Type Specifying the System Type
========================== ==========================
There may be some features `configure' cannot figure out There may be some features `configure' cannot figure out automatically,
automatically, but needs to determine by the type of machine the package but needs to determine by the type of machine the package will run on.
will run on. Usually, assuming the package is built to be run on the Usually, assuming the package is built to be run on the _same_
_same_ architectures, `configure' can figure that out, but if it prints architectures, `configure' can figure that out, but if it prints a
a message saying it cannot guess the machine type, give it the message saying it cannot guess the machine type, give it the
`--build=TYPE' option. TYPE can either be a short name for the system `--build=TYPE' option. TYPE can either be a short name for the system
type, such as `sun4', or a canonical name which has the form: type, such as `sun4', or a canonical name which has the form:
@ -167,9 +170,9 @@ eventually be run) with `--host=TYPE'.
Sharing Defaults Sharing Defaults
================ ================
If you want to set default values for `configure' scripts to share, If you want to set default values for `configure' scripts to share, you
you can create a site shell script called `config.site' that gives can create a site shell script called `config.site' that gives default
default values for variables like `CC', `cache_file', and `prefix'. values for variables like `CC', `cache_file', and `prefix'.
`configure' looks for `PREFIX/share/config.site' if it exists, then `configure' looks for `PREFIX/share/config.site' if it exists, then
`PREFIX/etc/config.site' if it exists. Or, you can set the `PREFIX/etc/config.site' if it exists. Or, you can set the
`CONFIG_SITE' environment variable to the location of the site script. `CONFIG_SITE' environment variable to the location of the site script.
@ -178,7 +181,7 @@ A warning: not all `configure' scripts look for a site script.
Defining Variables Defining Variables
================== ==================
Variables not defined in a site shell script can be set in the Variables not defined in a site shell script can be set in the
environment passed to `configure'. However, some packages may run environment passed to `configure'. However, some packages may run
configure again during the build, and the customized values of these configure again during the build, and the customized values of these
variables may be lost. In order to avoid this problem, you should set variables may be lost. In order to avoid this problem, you should set
@ -192,8 +195,7 @@ overridden in the site shell script).
`configure' Invocation `configure' Invocation
====================== ======================
`configure' recognizes the following options to control how it `configure' recognizes the following options to control how it operates.
operates.
`--help' `--help'
`-h' `-h'

View File

@ -20,7 +20,7 @@
ACLOCAL_AMFLAGS = -I m4 ACLOCAL_AMFLAGS = -I m4
DISTCHECK_CONFIGURE_FLAGS = --enable-selinux-support DISTCHECK_CONFIGURE_FLAGS = --enable-selinux-support
AUTOMAKE_OPTIONS = dist-bzip2 AUTOMAKE_OPTIONS = dist-bzip2 filename-length-max=99
if CROSS_COMPILING if CROSS_COMPILING
checks = checks =

9
NEWS
View File

@ -1,6 +1,10 @@
Noteworthy changes in version 1.3.93 Noteworthy changes in version 1.3.93 (2004-12-14)
------------------------------------------------- -------------------------------------------------
* Ask the user to repeat a changed PIN.
* Switched to automake 1.9. Minor big fixes.
Noteworthy changes in version 1.3.92 (2004-10-28) Noteworthy changes in version 1.3.92 (2004-10-28)
------------------------------------------------- -------------------------------------------------
@ -1675,7 +1679,8 @@ Noteworthy changes in version 0.2.3
is generated on a system without a good random number generator. is generated on a system without a good random number generator.
Copyright 1998, 1999, 2000, 2001, 2002, 2003 Free Software Foundation, Inc. Copyright 1998, 1999, 2000, 2001, 2002, 2003,
2004 Free Software Foundation, Inc.
This file is free software; as a special exception the author gives This file is free software; as a special exception the author gives
unlimited permission to copy and/or distribute it, with or without unlimited permission to copy and/or distribute it, with or without

4
README
View File

@ -1,7 +1,7 @@
GnuPG - The GNU Privacy Guard GnuPG - The GNU Privacy Guard
------------------------------- -------------------------------
Version 1.3.92 Version 1.4.0
Copyright 1998, 1999, 2000, 2001, 2002, 2003, Copyright 1998, 1999, 2000, 2001, 2002, 2003,
2004 Free Software Foundation, Inc. 2004 Free Software Foundation, Inc.
@ -761,4 +761,4 @@
and we try to answer questions when time allows us to do so. and we try to answer questions when time allows us to do so.
Commercial grade support for GnuPG is available; please see Commercial grade support for GnuPG is available; please see
the GNU service directory or search other resources. the GNU service directory or check out http://g10code.com.

View File

@ -26,7 +26,7 @@ min_automake_version="1.7.9"
# Remember to change the version number immediately *after* a release # Remember to change the version number immediately *after* a release
# and remove the "-cvs" or "rc" suffix immediately *before* a release. # and remove the "-cvs" or "rc" suffix immediately *before* a release.
AC_INIT(gnupg, 1.3.93-cvs, bug-gnupg@gnu.org) AC_INIT(gnupg, 1.3.93, bug-gnupg@gnu.org)
# Set development_version to yes if the minor number is odd or you # Set development_version to yes if the minor number is odd or you
# feel that the default check for a development version is not # feel that the default check for a development version is not
# sufficient. # sufficient.

View File

@ -1,3 +1,11 @@
2004-12-14 Werner Koch <wk@g10code.com>
* keyserver.c (keyserver_work, keyserver_spawn): Map ldaps to ldap.
* keyedit.c (keyedit_menu): Removed the N_() markers from the
command names.
* card-util.c (card_edit): Ditto.
2004-12-13 Werner Koch <wk@g10code.com> 2004-12-13 Werner Koch <wk@g10code.com>
* passphrase.c (read_passphrase_from_fd): Fixed memory leak. * passphrase.c (read_passphrase_from_fd): Fixed memory leak.
@ -2999,7 +3007,7 @@
2003-04-10 Werner Koch <wk@gnupg.org> 2003-04-10 Werner Koch <wk@gnupg.org>
* passphrase.c (read_passphrase_from_fd): Do a dummy read if the * passphrase.c (read_passphrase_from_fd): Do a dummy read if the
agent is to be used. Noted by Ingo Klöcker. agent is to be used. Noted by Ingo Klöcker.
(agent_get_passphrase): Inhibit caching when we have no (agent_get_passphrase): Inhibit caching when we have no
fingerprint. This is required for key generation as well as for fingerprint. This is required for key generation as well as for
symmetric only encryption. symmetric only encryption.
@ -3942,7 +3950,7 @@
warning. warning.
* passphrase.c (agent_get_passphrase): Fixed signed/unsigned char * passphrase.c (agent_get_passphrase): Fixed signed/unsigned char
problem in %-escaping. Noted by Ingo Klöcker. problem in %-escaping. Noted by Ingo Klöcker.
2002-10-03 David Shaw <dshaw@jabberwocky.com> 2002-10-03 David Shaw <dshaw@jabberwocky.com>
@ -8270,12 +8278,12 @@ Fri Feb 11 17:44:40 CET 2000 Werner Koch <wk@gnupg.de>
Thu Feb 10 17:39:44 CET 2000 Werner Koch <wk@gnupg.de> Thu Feb 10 17:39:44 CET 2000 Werner Koch <wk@gnupg.de>
* keyedit.c (menu_expire): Fixed segv due to unitialized sub_pk. * keyedit.c (menu_expire): Fixed segv due to unitialized sub_pk.
By Rémi. By Rémi.
Thu Feb 10 11:39:41 CET 2000 Werner Koch <wk@gnupg.de> Thu Feb 10 11:39:41 CET 2000 Werner Koch <wk@gnupg.de>
* keylist.c (list_keyblock): Don't print warnings in the middle of * keylist.c (list_keyblock): Don't print warnings in the middle of
regulat output lines. By Rémi. regulat output lines. By Rémi.
* sig-check.c: Include options.h * sig-check.c: Include options.h
@ -8865,7 +8873,7 @@ Mon May 31 19:41:10 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
* g10.c (main): Fix for SHM init (Michael). * g10.c (main): Fix for SHM init (Michael).
* compress.c, encr-data.c, mdfilter.c, * compress.c, encr-data.c, mdfilter.c,
plaintext.c, free-packet.c: Speed patches (Rémi). plaintext.c, free-packet.c: Speed patches (Rémi).
Thu May 27 09:40:55 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> Thu May 27 09:40:55 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
@ -8890,7 +8898,7 @@ Wed May 26 14:36:29 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
Tue May 25 19:50:32 CEST 1999 Werner Koch <wk@isil.d.shuttle.de> Tue May 25 19:50:32 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
* sign.c (sign_file): Always use compression algo 1 for signed * sign.c (sign_file): Always use compression algo 1 for signed
onyl file becuase we can´ be sure the the verifier supports other onyl file becuase we can´ be sure the the verifier supports other
algorithms. algorithms.
* build-packet.c (build_sig_subpkt): Support for notation data. * build-packet.c (build_sig_subpkt): Support for notation data.
@ -9080,7 +9088,7 @@ Wed Apr 7 20:51:39 CEST 1999 Werner Koch <wk@isil.d.shuttle.de>
(protect_secret_key). Ditto. (protect_secret_key). Ditto.
* misc.c (print_cipher_algo_note): Twofish is now a standard algo. * misc.c (print_cipher_algo_note): Twofish is now a standard algo.
* keygen.c (do_create): Fixed spelling (Gaël Quéri) * keygen.c (do_create): Fixed spelling (Gaël Quéri)
(ask_keysize): Only allow keysizes up to 4096 (ask_keysize): Only allow keysizes up to 4096
* ringedit.c (add_keyblock_resource): chmod newly created secrings. * ringedit.c (add_keyblock_resource): chmod newly created secrings.
@ -9123,7 +9131,7 @@ Wed Mar 17 13:09:03 CET 1999 Werner Koch <wk@isil.d.shuttle.de>
* trustdb.c (insert_trust_record): Always use the primary key. * trustdb.c (insert_trust_record): Always use the primary key.
* encode.c (encode_simple): Added text_mode filter (Rémi Guyomarch) * encode.c (encode_simple): Added text_mode filter (Rémi Guyomarch)
(encode_crypt): Ditto. (encode_crypt): Ditto.
* mainproc.c (proc_pubkey_enc): Added status ENC_TO. * mainproc.c (proc_pubkey_enc): Added status ENC_TO.
@ -10504,7 +10512,7 @@ Wed Apr 8 13:40:33 1998 Werner Koch (wk@isil.d.shuttle.de)
Wed Apr 8 09:47:21 1998 Werner Koch (wk@isil.d.shuttle.de) Wed Apr 8 09:47:21 1998 Werner Koch (wk@isil.d.shuttle.de)
* sig-check.c (do_check): Applied small fix from Ulf Möller. * sig-check.c (do_check): Applied small fix from Ulf Möller.
Tue Apr 7 19:28:07 1998 Werner Koch (wk@isil.d.shuttle.de) Tue Apr 7 19:28:07 1998 Werner Koch (wk@isil.d.shuttle.de)

View File

@ -1247,29 +1247,26 @@ card_edit (STRLIST commands)
int admin_only; int admin_only;
const char *desc; const char *desc;
} cmds[] = { } cmds[] = {
{ N_("quit") , cmdQUIT , 0, N_("quit this menu") }, { "quit" , cmdQUIT , 0, N_("quit this menu")},
{ N_("q") , cmdQUIT , 0, NULL }, { "q" , cmdQUIT , 0, NULL },
{ N_("admin") , cmdADMIN , 0, N_("show admin commands") }, { "admin" , cmdADMIN , 0, N_("show admin commands")},
{ N_("help") , cmdHELP , 0, N_("show this help") }, { "help" , cmdHELP , 0, N_("show this help")},
{ "?" , cmdHELP , 0, NULL }, { "?" , cmdHELP , 0, NULL },
{ N_("list") , cmdLIST , 0, N_("list all available data") }, { "list" , cmdLIST , 0, N_("list all available data")},
{ N_("l") , cmdLIST , 0, NULL }, { "l" , cmdLIST , 0, NULL },
{ N_("debug") , cmdDEBUG , 0, NULL }, { "debug" , cmdDEBUG , 0, NULL },
{ N_("name") , cmdNAME , 1, N_("change card holder's name") }, { "name" , cmdNAME , 1, N_("change card holder's name")},
{ N_("url") , cmdURL , 1, N_("change URL to retrieve key") }, { "url" , cmdURL , 1, N_("change URL to retrieve key")},
{ N_("fetch") , cmdFETCH , 0, { "fetch" , cmdFETCH , 0, N_("fetch the key specified in the card URL")},
N_("fetch the key specified in the card URL") }, { "login" , cmdLOGIN , 1, N_("change the login name")},
{ N_("login") , cmdLOGIN , 1, N_("change the login name") }, { "lang" , cmdLANG , 1, N_("change the language preferences")},
{ N_("lang") , cmdLANG , 1, N_("change the language preferences") }, { "sex" , cmdSEX , 1, N_("change card holder's sex")},
{ N_("sex") , cmdSEX , 1, N_("change card holder's sex") }, { "cafpr" , cmdCAFPR , 1, N_("change a CA fingerprint")},
{ N_("cafpr"), cmdCAFPR, 1, N_("change a CA fingerprint") }, { "forcesig", cmdFORCESIG, 1, N_("toggle the signature force PIN flag")},
{ N_("forcesig"), { "generate", cmdGENERATE, 1, N_("generate new keys")},
cmdFORCESIG, 1, N_("toggle the signature force PIN flag") }, { "passwd" , cmdPASSWD, 0, N_("menu to change or unblock the PIN")},
{ N_("generate"),
cmdGENERATE, 1, N_("generate new keys") },
{ N_("passwd"), cmdPASSWD, 0, N_("menu to change or unblock the PIN") },
/* Note, that we do not announce this command yet. */ /* Note, that we do not announce this command yet. */
{ N_("privatedo"), cmdPRIVATEDO, 0, NULL }, { "privatedo", cmdPRIVATEDO, 0, NULL },
{ NULL, cmdINVCMD, 0, NULL } { NULL, cmdINVCMD, 0, NULL }
}; };

View File

@ -1242,56 +1242,57 @@ keyedit_menu( const char *username, STRLIST locusr,
int not_with_sk; /* but 2 == must use SK */ int not_with_sk; /* but 2 == must use SK */
const char *desc; const char *desc;
} cmds[] = { } cmds[] = {
{ N_("quit") , cmdQUIT , 0,0, N_("quit this menu") }, { "quit" , cmdQUIT , 0,0, N_("quit this menu") },
{ N_("q") , cmdQUIT , 0,0, NULL }, { "q" , cmdQUIT , 0,0, NULL },
{ N_("save") , cmdSAVE , 0,0, N_("save and quit") }, { "save" , cmdSAVE , 0,0, N_("save and quit") },
{ N_("help") , cmdHELP , 0,0, N_("show this help") }, { "help" , cmdHELP , 0,0, N_("show this help") },
{ "?" , cmdHELP , 0,0, NULL }, { "?" , cmdHELP , 0,0, NULL },
{ N_("fpr") , cmdFPR , 0,0, N_("show fingerprint") }, { "fpr" , cmdFPR , 0,0, N_("show fingerprint") },
{ N_("list") , cmdLIST , 0,0, N_("list key and user IDs") }, { "list" , cmdLIST , 0,0, N_("list key and user IDs") },
{ N_("l") , cmdLIST , 0,0, NULL }, { "l" , cmdLIST , 0,0, NULL },
{ N_("uid") , cmdSELUID , 0,0, N_("select user ID N") }, { "uid" , cmdSELUID , 0,0, N_("select user ID N") },
{ N_("key") , cmdSELKEY , 0,0, N_("select secondary key N") }, { "key" , cmdSELKEY , 0,0, N_("select secondary key N") },
{ N_("check") , cmdCHECK , 0,0, N_("list signatures") }, { "check" , cmdCHECK , 0,0, N_("list signatures") },
{ N_("c") , cmdCHECK , 0,0, NULL }, { "c" , cmdCHECK , 0,0, NULL },
{ N_("sign") , cmdSIGN , 0,1, N_("sign the key") }, { "sign" , cmdSIGN , 0,1, N_("sign the key") },
{ N_("s") , cmdSIGN , 0,1, NULL }, { "s" , cmdSIGN , 0,1, NULL },
{ N_("tsign") , cmdTSIGN , 0,1, N_("make a trust signature")}, { "tsign" , cmdTSIGN , 0,1, N_("make a trust signature")},
{ N_("lsign") , cmdLSIGN , 0,1, N_("sign the key locally") }, { "lsign" , cmdLSIGN , 0,1, N_("sign the key locally") },
{ N_("nrsign") , cmdNRSIGN , 0,1, N_("sign the key non-revocably") }, { "nrsign" , cmdNRSIGN , 0,1, N_("sign the key non-revocably") },
{ N_("nrlsign") , cmdNRLSIGN , 0,1, N_("sign the key locally and non-revocably") }, { "nrlsign" , cmdNRLSIGN , 0,1, N_("sign the key locally "
{ N_("debug") , cmdDEBUG , 0,0, NULL }, "and non-revocably") },
{ N_("adduid") , cmdADDUID , 1,1, N_("add a user ID") }, { "debug" , cmdDEBUG , 0,0, NULL },
{ N_("addphoto"), cmdADDPHOTO , 1,1, N_("add a photo ID") }, { "adduid" , cmdADDUID , 1,1, N_("add a user ID") },
{ N_("deluid") , cmdDELUID , 0,1, N_("delete user ID") }, { "addphoto" , cmdADDPHOTO , 1,1, N_("add a photo ID") },
{ "deluid" , cmdDELUID , 0,1, N_("delete user ID") },
/* delphoto is really deluid in disguise */ /* delphoto is really deluid in disguise */
{ N_("delphoto"), cmdDELUID , 0,1, NULL }, { "delphoto" , cmdDELUID , 0,1, NULL },
{ N_("addkey") , cmdADDKEY , 1,1, N_("add a secondary key") }, { "addkey" , cmdADDKEY , 1,1, N_("add a secondary key") },
#ifdef ENABLE_CARD_SUPPORT #ifdef ENABLE_CARD_SUPPORT
{ N_("addcardkey"), cmdADDCARDKEY , 1,1, N_("add a key to a smartcard") }, { "addcardkey", cmdADDCARDKEY , 1,1, N_("add a key to a smartcard") },
{ N_("keytocard"), cmdKEYTOCARD , 1,2, N_("move a key to a smartcard")}, { "keytocard", cmdKEYTOCARD , 1,2, N_("move a key to a smartcard")},
#endif /*ENABLE_CARD_SUPPORT*/ #endif /*ENABLE_CARD_SUPPORT*/
{ N_("delkey") , cmdDELKEY , 0,1, N_("delete a secondary key") }, { "delkey" , cmdDELKEY , 0,1, N_("delete a secondary key") },
{ N_("addrevoker"),cmdADDREVOKER,1,1, N_("add a revocation key") }, { "addrevoker",cmdADDREVOKER,1,1, N_("add a revocation key") },
{ N_("delsig") , cmdDELSIG , 0,1, N_("delete signatures") }, { "delsig" , cmdDELSIG , 0,1, N_("delete signatures") },
{ N_("expire") , cmdEXPIRE , 1,1, N_("change the expire date") }, { "expire" , cmdEXPIRE , 1,1, N_("change the expire date") },
{ N_("primary") , cmdPRIMARY , 1,1, N_("flag user ID as primary")}, { "primary" , cmdPRIMARY , 1,1, N_("flag user ID as primary")},
{ N_("toggle") , cmdTOGGLE , 1,0, N_("toggle between secret " { "toggle" , cmdTOGGLE , 1,0, N_("toggle between secret "
"and public key listing") }, "and public key listing") },
{ N_("t" ) , cmdTOGGLE , 1,0, NULL }, { "t" , cmdTOGGLE , 1,0, NULL },
{ N_("pref") , cmdPREF , 0,1, N_("list preferences (expert)")}, { "pref" , cmdPREF , 0,1, N_("list preferences (expert)")},
{ N_("showpref"), cmdSHOWPREF , 0,1, N_("list preferences (verbose)") }, { "showpref" , cmdSHOWPREF , 0,1, N_("list preferences (verbose)") },
{ N_("setpref") , cmdSETPREF , 1,1, N_("set preference list") }, { "setpref" , cmdSETPREF , 1,1, N_("set preference list") },
{ N_("updpref") , cmdUPDPREF , 1,1, N_("updated preferences") }, { "updpref" , cmdUPDPREF , 1,1, N_("updated preferences") },
{ N_("keyserver"),cmdPREFKS , 1,1, N_("set preferred keyserver URL")}, { "keyserver",cmdPREFKS , 1,1, N_("set preferred keyserver URL")},
{ N_("passwd") , cmdPASSWD , 1,1, N_("change the passphrase") }, { "passwd" , cmdPASSWD , 1,1, N_("change the passphrase") },
{ N_("trust") , cmdTRUST , 0,1, N_("change the ownertrust") }, { "trust" , cmdTRUST , 0,1, N_("change the ownertrust") },
{ N_("revsig") , cmdREVSIG , 0,1, N_("revoke signatures") }, { "revsig" , cmdREVSIG , 0,1, N_("revoke signatures") },
{ N_("revuid") , cmdREVUID , 1,1, N_("revoke a user ID") }, { "revuid" , cmdREVUID , 1,1, N_("revoke a user ID") },
{ N_("revkey") , cmdREVKEY , 1,1, N_("revoke a secondary key") }, { "revkey" , cmdREVKEY , 1,1, N_("revoke a secondary key") },
{ N_("disable") , cmdDISABLEKEY, 0,1, N_("disable a key") }, { "disable" , cmdDISABLEKEY, 0,1, N_("disable a key") },
{ N_("enable") , cmdENABLEKEY , 0,1, N_("enable a key") }, { "enable" , cmdENABLEKEY , 0,1, N_("enable a key") },
{ N_("showphoto"),cmdSHOWPHOTO , 0,0, N_("show photo ID") }, { "showphoto",cmdSHOWPHOTO , 0,0, N_("show photo ID") },
{ NULL, cmdNONE, 0, 0, NULL } }; { NULL, cmdNONE, 0, 0, NULL } };
enum cmdids cmd = 0; enum cmdids cmd = 0;
int rc = 0; int rc = 0;

View File

@ -789,10 +789,15 @@ keyserver_spawn(int action,STRLIST list,KEYDB_SEARCH_DESC *desc,
#endif #endif
/* Build the filename for the helper to execute */ /* Build the filename for the helper to execute */
/* Note that we don't use a symlink for "ldaps" anymore because this
won't work under MS Windows. */
command=m_alloc(strlen("gpgkeys_")+strlen(keyserver->scheme)+1); command=m_alloc(strlen("gpgkeys_")+strlen(keyserver->scheme)+1);
strcpy(command,"gpgkeys_"); strcpy(command,"gpgkeys_");
strcat(command,keyserver->scheme); if (!strcmp (keyserver->scheme, "ldaps"))
strcat(command, "ldap");
else
strcat(command,keyserver->scheme);
if(opt.keyserver_options.options&KEYSERVER_USE_TEMP_FILES) if(opt.keyserver_options.options&KEYSERVER_USE_TEMP_FILES)
{ {
if(opt.keyserver_options.options&KEYSERVER_KEEP_TEMP_FILES) if(opt.keyserver_options.options&KEYSERVER_KEEP_TEMP_FILES)
@ -1247,7 +1252,9 @@ keyserver_work(int action,STRLIST list,KEYDB_SEARCH_DESC *desc,
case KEYSERVER_VERSION_ERROR: case KEYSERVER_VERSION_ERROR:
log_error(_("gpgkeys_%s does not support handler version %d\n"), log_error(_("gpgkeys_%s does not support handler version %d\n"),
keyserver->scheme,KEYSERVER_PROTO_VERSION); !strcmp (keyserver->scheme,"ldaps")?
"ldap": keyserver->scheme,
KEYSERVER_PROTO_VERSION);
break; break;
case KEYSERVER_TIMEOUT: case KEYSERVER_TIMEOUT:

View File

@ -1,3 +1,8 @@
2004-12-14 Werner Koch <wk@g10code.com>
* Makefile.am (install-exec-hook, uninstall-hook): Removed. For
Windows reasons we can't use the symlink trick.
2004-12-03 David Shaw <dshaw@jabberwocky.com> 2004-12-03 David Shaw <dshaw@jabberwocky.com>
* Makefile.am: The harmless "ignored error" on gpgkeys_ldap * Makefile.am: The harmless "ignored error" on gpgkeys_ldap

View File

@ -39,12 +39,4 @@ gpgkeys_hkp_LDADD = ../util/libutil.a @NETLIBS@ @SRVLIBS@ $(other_libs) @GETOPT
gpgkeys_http_LDADD = ../util/libutil.a @NETLIBS@ @SRVLIBS@ $(other_libs) @GETOPT@ @W32LIBS@ gpgkeys_http_LDADD = ../util/libutil.a @NETLIBS@ @SRVLIBS@ $(other_libs) @GETOPT@ @W32LIBS@
gpgkeys_finger_LDADD = ../util/libutil.a @NETLIBS@ $(other_libs) @GETOPT@ @W32LIBS@ gpgkeys_finger_LDADD = ../util/libutil.a @NETLIBS@ $(other_libs) @GETOPT@ @W32LIBS@
install-exec-hook:
if GPGKEYS_LDAP
(cd $(libexecdir) && $(LN_S) -f gpgkeys_ldap$(EXEEXT) gpgkeys_ldaps$(EXEEXT))
endif
uninstall-hook:
if GPGKEYS_LDAP
rm -f $(libexecdir)/gpgkeys_ldaps$(EXEEXT)
endif

844
po/be.po

File diff suppressed because it is too large Load Diff

992
po/ca.po

File diff suppressed because it is too large Load Diff

986
po/cs.po

File diff suppressed because it is too large Load Diff

981
po/da.po

File diff suppressed because it is too large Load Diff

988
po/de.po

File diff suppressed because it is too large Load Diff

990
po/el.po

File diff suppressed because it is too large Load Diff

994
po/eo.po

File diff suppressed because it is too large Load Diff

990
po/es.po

File diff suppressed because it is too large Load Diff

990
po/et.po

File diff suppressed because it is too large Load Diff

990
po/fi.po

File diff suppressed because it is too large Load Diff

990
po/fr.po

File diff suppressed because it is too large Load Diff

990
po/gl.po

File diff suppressed because it is too large Load Diff

990
po/hu.po

File diff suppressed because it is too large Load Diff

990
po/id.po

File diff suppressed because it is too large Load Diff

990
po/it.po

File diff suppressed because it is too large Load Diff

986
po/ja.po

File diff suppressed because it is too large Load Diff

995
po/pl.po

File diff suppressed because it is too large Load Diff

990
po/pt.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

990
po/ro.po

File diff suppressed because it is too large Load Diff

990
po/ru.po

File diff suppressed because it is too large Load Diff

990
po/sk.po

File diff suppressed because it is too large Load Diff

998
po/sv.po

File diff suppressed because it is too large Load Diff

990
po/tr.po

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,9 @@
#! /bin/sh #! /bin/sh
# depcomp - compile a program generating dependencies as side-effects # depcomp - compile a program generating dependencies as side-effects
# Copyright 1999, 2000, 2003 Free Software Foundation, Inc.
scriptversion=2004-05-31.23
# Copyright (C) 1999, 2000, 2003, 2004 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify # 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 # it under the terms of the GNU General Public License as published by
@ -25,22 +27,45 @@
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>. # Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
case $1 in
'')
echo "$0: No command. Try \`$0 --help' for more information." 1>&2
exit 1;
;;
-h | --h*)
cat <<\EOF
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
Run PROGRAMS ARGS to compile a file, generating dependencies
as side-effects.
Environment variables:
depmode Dependency tracking mode.
source Source file read by `PROGRAMS ARGS'.
object Object file output by `PROGRAMS ARGS'.
DEPDIR directory where to store dependencies.
depfile Dependency file to output.
tmpdepfile Temporary file to use when outputing dependencies.
libtool Whether libtool is used (yes/no).
Report bugs to <bug-automake@gnu.org>.
EOF
exit 0
;;
-v | --v*)
echo "depcomp $scriptversion"
exit 0
;;
esac
if test -z "$depmode" || test -z "$source" || test -z "$object"; then if test -z "$depmode" || test -z "$source" || test -z "$object"; then
echo "depcomp: Variables source, object and depmode must be set" 1>&2 echo "depcomp: Variables source, object and depmode must be set" 1>&2
exit 1 exit 1
fi fi
# `libtool' can also be set to `yes' or `no'.
if test -z "$depfile"; then
base=`echo "$object" | sed -e 's,^.*/,,' -e 's,\.\([^.]*\)$,.P\1,'`
dir=`echo "$object" | sed 's,/.*$,/,'`
if test "$dir" = "$object"; then
dir=
fi
# FIXME: should be _deps on DOS.
depfile="$dir.deps/$base"
fi
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
depfile=${depfile-`echo "$object" |
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
rm -f "$tmpdepfile" rm -f "$tmpdepfile"
@ -262,26 +287,35 @@ tru64)
base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
if test "$libtool" = yes; then if test "$libtool" = yes; then
# Dependencies are output in .lo.d with libtool 1.4.
# With libtool 1.5 they are output both in $dir.libs/$base.o.d
# and in $dir.libs/$base.o.d and $dir$base.o.d. We process the
# latter, because the former will be cleaned when $dir.libs is
# erased.
tmpdepfile1="$dir.libs/$base.lo.d" tmpdepfile1="$dir.libs/$base.lo.d"
tmpdepfile2="$dir.libs/$base.d" tmpdepfile2="$dir$base.o.d"
tmpdepfile3="$dir.libs/$base.d"
"$@" -Wc,-MD "$@" -Wc,-MD
else else
tmpdepfile1="$dir$base.o.d" tmpdepfile1="$dir$base.o.d"
tmpdepfile2="$dir$base.d" tmpdepfile2="$dir$base.d"
tmpdepfile3="$dir$base.d"
"$@" -MD "$@" -MD
fi fi
stat=$? stat=$?
if test $stat -eq 0; then : if test $stat -eq 0; then :
else else
rm -f "$tmpdepfile1" "$tmpdepfile2" rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
exit $stat exit $stat
fi fi
if test -f "$tmpdepfile1"; then if test -f "$tmpdepfile1"; then
tmpdepfile="$tmpdepfile1" tmpdepfile="$tmpdepfile1"
else elif test -f "$tmpdepfile2"; then
tmpdepfile="$tmpdepfile2" tmpdepfile="$tmpdepfile2"
else
tmpdepfile="$tmpdepfile3"
fi fi
if test -f "$tmpdepfile"; then if test -f "$tmpdepfile"; then
sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
@ -477,3 +511,12 @@ none)
esac esac
exit 0 exit 0
# Local Variables:
# mode: shell-script
# sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# End:

View File

@ -1,7 +1,8 @@
#!/bin/sh #!/bin/sh
#
# install - install a program, script, or datafile # install - install a program, script, or datafile
#
scriptversion=2004-10-22.00
# This originates from X11R5 (mit/util/scripts/install.sh), which was # This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the # later released in X11R6 (xc/config/util/install.sh) with the
# following copyright and license. # following copyright and license.
@ -41,13 +42,11 @@
# from scratch. It can only install one file at a time, a restriction # from scratch. It can only install one file at a time, a restriction
# shared with many OS's install programs. # shared with many OS's install programs.
# set DOITPROG to echo to test this script # set DOITPROG to echo to test this script
# Don't use :- since 4.3BSD and earlier shells don't like it. # Don't use :- since 4.3BSD and earlier shells don't like it.
doit="${DOITPROG-}" doit="${DOITPROG-}"
# put in absolute paths if you don't have them in your path; or use env. vars. # put in absolute paths if you don't have them in your path; or use env. vars.
mvprog="${MVPROG-mv}" mvprog="${MVPROG-mv}"
@ -59,236 +58,266 @@ stripprog="${STRIPPROG-strip}"
rmprog="${RMPROG-rm}" rmprog="${RMPROG-rm}"
mkdirprog="${MKDIRPROG-mkdir}" mkdirprog="${MKDIRPROG-mkdir}"
transformbasename=""
transform_arg=""
instcmd="$mvprog"
chmodcmd="$chmodprog 0755" chmodcmd="$chmodprog 0755"
chowncmd="" chowncmd=
chgrpcmd="" chgrpcmd=
stripcmd="" stripcmd=
rmcmd="$rmprog -f" rmcmd="$rmprog -f"
mvcmd="$mvprog" mvcmd="$mvprog"
src="" src=
dst="" dst=
dir_arg="" dir_arg=
dstarg=
no_target_directory=
while [ x"$1" != x ]; do usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
case $1 in or: $0 [OPTION]... SRCFILES... DIRECTORY
-c) instcmd=$cpprog or: $0 [OPTION]... -t DIRECTORY SRCFILES...
shift or: $0 [OPTION]... -d DIRECTORIES...
continue;;
-d) dir_arg=true In the 1st form, copy SRCFILE to DSTFILE.
shift In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
continue;; In the 4th, create DIRECTORIES.
-m) chmodcmd="$chmodprog $2" Options:
shift -c (ignored)
shift -d create directories instead of installing files.
continue;; -g GROUP $chgrpprog installed files to GROUP.
-m MODE $chmodprog installed files to MODE.
-o USER $chownprog installed files to USER.
-s $stripprog installed files.
-t DIRECTORY install into DIRECTORY.
-T report an error if DSTFILE is a directory.
--help display this help and exit.
--version display version info and exit.
-o) chowncmd="$chownprog $2" Environment variables override the default commands:
shift CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
shift "
continue;;
-g) chgrpcmd="$chgrpprog $2" while test -n "$1"; do
shift case $1 in
shift -c) shift
continue;; continue;;
-s) stripcmd=$stripprog -d) dir_arg=true
shift shift
continue;; continue;;
-t=*) transformarg=`echo $1 | sed 's/-t=//'` -g) chgrpcmd="$chgrpprog $2"
shift shift
continue;; shift
continue;;
-b=*) transformbasename=`echo $1 | sed 's/-b=//'` --help) echo "$usage"; exit 0;;
shift
continue;;
*) if [ x"$src" = x ] -m) chmodcmd="$chmodprog $2"
then shift
src=$1 shift
else continue;;
# this colon is to work around a 386BSD /bin/sh bug
:
dst=$1
fi
shift
continue;;
esac
done
if [ x"$src" = x ] -o) chowncmd="$chownprog $2"
then shift
echo "$0: no input file specified" >&2 shift
exit 1 continue;;
else
:
fi
if [ x"$dir_arg" != x ]; then -s) stripcmd=$stripprog
dst=$src shift
src="" continue;;
if [ -d "$dst" ]; then -t) dstarg=$2
instcmd=:
chmodcmd=""
else
instcmd=$mkdirprog
fi
else
# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if [ -f "$src" ] || [ -d "$src" ]
then
:
else
echo "$0: $src does not exist" >&2
exit 1
fi
if [ x"$dst" = x ]
then
echo "$0: no destination specified" >&2
exit 1
else
:
fi
# If destination is a directory, append the input filename; if your system
# does not like double slashes in filenames, you may need to add some logic
if [ -d "$dst" ]
then
dst=$dst/`basename "$src"`
else
:
fi
fi
## this sed command emulates the dirname command
dstdir=`echo "$dst" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
# Make sure that the destination directory exists.
# this part is taken from Noah Friedman's mkinstalldirs script
# Skip lots of stat calls in the usual case.
if [ ! -d "$dstdir" ]; then
defaultIFS='
'
IFS="${IFS-$defaultIFS}"
oIFS=$IFS
# Some sh's can't handle IFS=/ for some reason.
IFS='%'
set - `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
IFS=$oIFS
pathcomp=''
while [ $# -ne 0 ] ; do
pathcomp=$pathcomp$1
shift shift
shift
continue;;
if [ ! -d "$pathcomp" ] ; -T) no_target_directory=true
then shift
$mkdirprog "$pathcomp" continue;;
else
:
fi
pathcomp=$pathcomp/ --version) echo "$0 $scriptversion"; exit 0;;
*) # When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified.
test -n "$dir_arg$dstarg" && break
# Otherwise, the last argument is the destination. Remove it from $@.
for arg
do
if test -n "$dstarg"; then
# $@ is not empty: it contains at least $arg.
set fnord "$@" "$dstarg"
shift # fnord
fi
shift # arg
dstarg=$arg
done
break;;
esac
done done
if test -z "$1"; then
if test -z "$dir_arg"; then
echo "$0: no input file specified." >&2
exit 1
fi
# It's OK to call `install-sh -d' without argument.
# This can happen when creating conditional directories.
exit 0
fi fi
if [ x"$dir_arg" != x ] for src
then do
$doit $instcmd "$dst" && # Protect names starting with `-'.
case $src in
-*) src=./$src ;;
esac
if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dst"; else : ; fi && if test -n "$dir_arg"; then
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dst"; else : ; fi && dst=$src
if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dst"; else : ; fi && src=
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dst"; else : ; fi
else
# If we're going to rename the final executable, determine the name now. if test -d "$dst"; then
mkdircmd=:
chmodcmd=
else
mkdircmd=$mkdirprog
fi
else
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
# might cause directories to be created, which would be especially bad
# if $src (and thus $dsttmp) contains '*'.
if test ! -f "$src" && test ! -d "$src"; then
echo "$0: $src does not exist." >&2
exit 1
fi
if [ x"$transformarg" = x ] if test -z "$dstarg"; then
then echo "$0: no destination specified." >&2
dstfile=`basename "$dst"` exit 1
else fi
dstfile=`basename "$dst" $transformbasename |
sed $transformarg`$transformbasename
fi
# don't allow the sed command to completely eliminate the filename dst=$dstarg
# Protect names starting with `-'.
case $dst in
-*) dst=./$dst ;;
esac
if [ x"$dstfile" = x ] # If destination is a directory, append the input filename; won't work
then # if double slashes aren't ignored.
dstfile=`basename "$dst"` if test -d "$dst"; then
else if test -n "$no_target_directory"; then
: echo "$0: $dstarg: Is a directory" >&2
fi exit 1
fi
dst=$dst/`basename "$src"`
fi
fi
# Make a couple of temp file names in the proper directory. # This sed command emulates the dirname command.
dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'`
dsttmp=$dstdir/_inst.$$_ # Make sure that the destination directory exists.
rmtmp=$dstdir/_rm.$$_
# Trap to clean up temp files at exit. # Skip lots of stat calls in the usual case.
if test ! -d "$dstdir"; then
defaultIFS='
'
IFS="${IFS-$defaultIFS}"
trap 'status=$?; rm -f "$dsttmp" "$rmtmp" && exit $status' 0 oIFS=$IFS
trap '(exit $?); exit' 1 2 13 15 # Some sh's can't handle IFS=/ for some reason.
IFS='%'
set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
shift
IFS=$oIFS
# Move or copy the file name to the temp name pathcomp=
$doit $instcmd "$src" "$dsttmp" && while test $# -ne 0 ; do
pathcomp=$pathcomp$1
shift
if test ! -d "$pathcomp"; then
$mkdirprog "$pathcomp"
# mkdir can fail with a `File exist' error in case several
# install-sh are creating the directory concurrently. This
# is OK.
test -d "$pathcomp" || exit
fi
pathcomp=$pathcomp/
done
fi
# and set any options; do chmod last to preserve setuid bits if test -n "$dir_arg"; then
$doit $mkdircmd "$dst" \
&& { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
&& { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
&& { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \
&& { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; }
# If any of these fail, we abort the whole thing. If we want to else
# ignore errors from any of these, just make sure not to ignore dstfile=`basename "$dst"`
# errors from the above "$doit $instcmd $src $dsttmp" command.
if [ x"$chowncmd" != x ]; then $doit $chowncmd "$dsttmp"; else :;fi && # Make a couple of temp file names in the proper directory.
if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd "$dsttmp"; else :;fi && dsttmp=$dstdir/_inst.$$_
if [ x"$stripcmd" != x ]; then $doit $stripcmd "$dsttmp"; else :;fi && rmtmp=$dstdir/_rm.$$_
if [ x"$chmodcmd" != x ]; then $doit $chmodcmd "$dsttmp"; else :;fi &&
# Now remove or move aside any old file at destination location. We try this # Trap to clean up those temp files at exit.
# two ways since rm can't unlink itself on some systems and the destination trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
# file might be busy for other reasons. In this case, the final cleanup trap '(exit $?); exit' 1 2 13 15
# might fail but the new file should still install successfully.
{ # Copy the file name to the temp name.
if [ -f "$dstdir/$dstfile" ] $doit $cpprog "$src" "$dsttmp" &&
then
$doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null ||
$doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null ||
{
echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
(exit 1); exit
}
else
:
fi
} &&
# Now rename the file to the real destination. # and set any options; do chmod last to preserve setuid bits.
#
# If any of these fail, we abort the whole thing. If we want to
# ignore errors from any of these, just make sure not to ignore
# errors from the above "$doit $cpprog $src $dsttmp" command.
#
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
&& { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
&& { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
&& { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } &&
$doit $mvcmd "$dsttmp" "$dstdir/$dstfile" # Now rename the file to the real destination.
{ $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \
|| {
# The rename failed, perhaps because mv can't rename something else
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
fi && # Now remove or move aside any old file at destination location.
# We try this two ways since rm can't unlink itself on some
# systems and the destination file might be busy for other
# reasons. In this case, the final cleanup might fail but the new
# file should still install successfully.
{
if test -f "$dstdir/$dstfile"; then
$doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \
|| $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
|| {
echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
(exit 1); exit
}
else
:
fi
} &&
# Now rename the file to the real destination.
$doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
}
}
fi || { (exit 1); exit; }
done
# The final little trick to "correctly" pass the exit status to the exit trap. # The final little trick to "correctly" pass the exit status to the exit trap.
{ {
(exit 0); exit (exit 0); exit
} }
# 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:

View File

@ -1,6 +1,10 @@
#! /bin/sh #! /bin/sh
# Common stub for a few missing GNU programs while installing. # Common stub for a few missing GNU programs while installing.
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003 Free Software Foundation, Inc.
scriptversion=2004-09-07.08
# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004
# Free Software Foundation, Inc.
# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996. # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify # This program is free software; you can redistribute it and/or modify
@ -38,18 +42,24 @@ else
configure_ac=configure.in configure_ac=configure.in
fi fi
msg="missing on your system"
case "$1" in case "$1" in
--run) --run)
# Try to run requested program, and just exit if it succeeds. # Try to run requested program, and just exit if it succeeds.
run= run=
shift shift
"$@" && exit 0 "$@" && exit 0
# Exit code 63 means version mismatch. This often happens
# when the user try to use an ancient version of a tool on
# a file that requires a minimum version. In this case we
# we should proceed has if the program had been absent, or
# if --run hadn't been passed.
if test $? = 63; then
run=:
msg="probably too old"
fi
;; ;;
esac
# If it does not exist, or fails to run (possibly an outdated version),
# try to emulate it.
case "$1" in
-h|--h|--he|--hel|--help) -h|--h|--he|--hel|--help)
echo "\ echo "\
@ -74,11 +84,15 @@ Supported PROGRAM values:
lex create \`lex.yy.c', if possible, from existing .c lex create \`lex.yy.c', if possible, from existing .c
makeinfo touch the output file makeinfo touch the output file
tar try tar, gnutar, gtar, then tar without non-portable flags tar try tar, gnutar, gtar, then tar without non-portable flags
yacc create \`y.tab.[ch]', if possible, from existing .[ch]" yacc create \`y.tab.[ch]', if possible, from existing .[ch]
Send bug reports to <bug-automake@gnu.org>."
exit 0
;; ;;
-v|--v|--ve|--ver|--vers|--versi|--versio|--version) -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
echo "missing 0.4 - GNU automake" echo "missing $scriptversion (GNU Automake)"
exit 0
;; ;;
-*) -*)
@ -87,14 +101,44 @@ Supported PROGRAM values:
exit 1 exit 1
;; ;;
aclocal*) esac
# Now exit if we have it, but it failed. Also exit now if we
# don't have it and --version was passed (most likely to detect
# the program).
case "$1" in
lex|yacc)
# Not GNU programs, they don't have --version.
;;
tar)
if test -n "$run"; then
echo 1>&2 "ERROR: \`tar' requires --run"
exit 1
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
exit 1
fi
;;
*)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed. # We have it, but it failed.
exit 1 exit 1
elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
# Could not run --version or --help. This is probably someone
# running `$TOOL --version' or `$TOOL --help' to check whether
# $TOOL exists and not knowing $TOOL uses missing.
exit 1
fi fi
;;
esac
# If it does not exist, or fails to run (possibly an outdated version),
# try to emulate it.
case "$1" in
aclocal*)
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if WARNING: \`$1' is $msg. You should only need it if
you modified \`acinclude.m4' or \`${configure_ac}'. You might want you modified \`acinclude.m4' or \`${configure_ac}'. You might want
to install the \`Automake' and \`Perl' packages. Grab them from to install the \`Automake' and \`Perl' packages. Grab them from
any GNU archive site." any GNU archive site."
@ -102,13 +146,8 @@ WARNING: \`$1' is missing on your system. You should only need it if
;; ;;
autoconf) autoconf)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed.
exit 1
fi
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if WARNING: \`$1' is $msg. You should only need it if
you modified \`${configure_ac}'. You might want to install the you modified \`${configure_ac}'. You might want to install the
\`Autoconf' and \`GNU m4' packages. Grab them from any GNU \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
archive site." archive site."
@ -116,13 +155,8 @@ WARNING: \`$1' is missing on your system. You should only need it if
;; ;;
autoheader) autoheader)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed.
exit 1
fi
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if WARNING: \`$1' is $msg. You should only need it if
you modified \`acconfig.h' or \`${configure_ac}'. You might want you modified \`acconfig.h' or \`${configure_ac}'. You might want
to install the \`Autoconf' and \`GNU m4' packages. Grab them to install the \`Autoconf' and \`GNU m4' packages. Grab them
from any GNU archive site." from any GNU archive site."
@ -140,13 +174,8 @@ WARNING: \`$1' is missing on your system. You should only need it if
;; ;;
automake*) automake*)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed.
exit 1
fi
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if WARNING: \`$1' is $msg. You should only need it if
you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
You might want to install the \`Automake' and \`Perl' packages. You might want to install the \`Automake' and \`Perl' packages.
Grab them from any GNU archive site." Grab them from any GNU archive site."
@ -156,14 +185,9 @@ WARNING: \`$1' is missing on your system. You should only need it if
;; ;;
autom4te) autom4te)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed.
exit 1
fi
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is needed, and you do not seem to have it handy on your WARNING: \`$1' is needed, but is $msg.
system. You might have modified some files without having the You might have modified some files without having the
proper tools for further handling them. proper tools for further handling them.
You can get \`$1' as part of \`Autoconf' from any GNU You can get \`$1' as part of \`Autoconf' from any GNU
archive site." archive site."
@ -185,7 +209,7 @@ WARNING: \`$1' is needed, and you do not seem to have it handy on your
bison|yacc) bison|yacc)
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if WARNING: \`$1' $msg. You should only need it if
you modified a \`.y' file. You may need the \`Bison' package you modified a \`.y' file. You may need the \`Bison' package
in order for those modifications to take effect. You can get in order for those modifications to take effect. You can get
\`Bison' from any GNU archive site." \`Bison' from any GNU archive site."
@ -215,7 +239,7 @@ WARNING: \`$1' is missing on your system. You should only need it if
lex|flex) lex|flex)
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if WARNING: \`$1' is $msg. You should only need it if
you modified a \`.l' file. You may need the \`Flex' package you modified a \`.l' file. You may need the \`Flex' package
in order for those modifications to take effect. You can get in order for those modifications to take effect. You can get
\`Flex' from any GNU archive site." \`Flex' from any GNU archive site."
@ -237,13 +261,8 @@ WARNING: \`$1' is missing on your system. You should only need it if
;; ;;
help2man) help2man)
if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
# We have it, but it failed.
exit 1
fi
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if WARNING: \`$1' is $msg. You should only need it if
you modified a dependency of a manual page. You may need the you modified a dependency of a manual page. You may need the
\`Help2man' package in order for those modifications to take \`Help2man' package in order for those modifications to take
effect. You can get \`Help2man' from any GNU archive site." effect. You can get \`Help2man' from any GNU archive site."
@ -262,13 +281,8 @@ WARNING: \`$1' is missing on your system. You should only need it if
;; ;;
makeinfo) makeinfo)
if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then
# We have makeinfo, but it failed.
exit 1
fi
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is missing on your system. You should only need it if WARNING: \`$1' is $msg. You should only need it if
you modified a \`.texi' or \`.texinfo' file, or any other file you modified a \`.texi' or \`.texinfo' file, or any other file
indirectly affecting the aspect of the manual. The spurious indirectly affecting the aspect of the manual. The spurious
call might also be the consequence of using a buggy \`make' (AIX, call might also be the consequence of using a buggy \`make' (AIX,
@ -284,10 +298,6 @@ WARNING: \`$1' is missing on your system. You should only need it if
tar) tar)
shift shift
if test -n "$run"; then
echo 1>&2 "ERROR: \`tar' requires --run"
exit 1
fi
# We have already tried tar in the generic part. # We have already tried tar in the generic part.
# Look for gnutar/gtar before invocation to avoid ugly error # Look for gnutar/gtar before invocation to avoid ugly error
@ -323,8 +333,8 @@ WARNING: I can't seem to be able to run \`tar' with the given arguments.
*) *)
echo 1>&2 "\ echo 1>&2 "\
WARNING: \`$1' is needed, and you do not seem to have it handy on your WARNING: \`$1' is needed, and is $msg.
system. You might have modified some files without having the You might have modified some files without having the
proper tools for further handling them. Check the \`README' file, proper tools for further handling them. Check the \`README' file,
it often tells you about the needed prerequisites for installing it often tells you about the needed prerequisites for installing
this package. You may also peek at any GNU archive site, in case this package. You may also peek at any GNU archive site, in case
@ -334,3 +344,10 @@ WARNING: \`$1' is needed, and you do not seem to have it handy on your
esac esac
exit 0 exit 0
# 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:

View File

@ -1,20 +1,32 @@
#! /bin/sh #! /bin/sh
# mkinstalldirs --- make directory hierarchy # mkinstalldirs --- make directory hierarchy
# Author: Noah Friedman <friedman@prep.ai.mit.edu>
scriptversion=2004-02-15.20
# Original author: Noah Friedman <friedman@prep.ai.mit.edu>
# Created: 1993-05-16 # Created: 1993-05-16
# Public domain # Public domain.
#
# This file is maintained in Automake, please report
# bugs to <bug-automake@gnu.org> or send patches to
# <automake-patches@gnu.org>.
errstatus=0 errstatus=0
dirmode="" dirmode=""
usage="\ usage="\
Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..." Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
Create each directory DIR (with mode MODE, if specified), including all
leading file name components.
Report bugs to <bug-automake@gnu.org>."
# process command line arguments # process command line arguments
while test $# -gt 0 ; do while test $# -gt 0 ; do
case $1 in case $1 in
-h | --help | --h*) # -h for help -h | --help | --h*) # -h for help
echo "$usage" 1>&2 echo "$usage"
exit 0 exit 0
;; ;;
-m) # -m PERM arg -m) # -m PERM arg
@ -23,6 +35,10 @@ while test $# -gt 0 ; do
dirmode=$1 dirmode=$1
shift shift
;; ;;
--version)
echo "$0 $scriptversion"
exit 0
;;
--) # stop option processing --) # stop option processing
shift shift
break break
@ -50,17 +66,37 @@ case $# in
0) exit 0 ;; 0) exit 0 ;;
esac esac
# Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and
# mkdir -p a/c at the same time, both will detect that a is missing,
# one will create a, then the other will try to create a and die with
# a "File exists" error. This is a problem when calling mkinstalldirs
# from a parallel make. We use --version in the probe to restrict
# ourselves to GNU mkdir, which is thread-safe.
case $dirmode in case $dirmode in
'') '')
if mkdir -p -- . 2>/dev/null; then if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
echo "mkdir -p -- $*" echo "mkdir -p -- $*"
exec mkdir -p -- "$@" exec mkdir -p -- "$@"
else
# On NextStep and OpenStep, the `mkdir' command does not
# recognize any option. It will interpret all options as
# directories to create, and then abort because `.' already
# exists.
test -d ./-p && rmdir ./-p
test -d ./--version && rmdir ./--version
fi fi
;; ;;
*) *)
if mkdir -m "$dirmode" -p -- . 2>/dev/null; then if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 &&
test ! -d ./--version; then
echo "mkdir -m $dirmode -p -- $*" echo "mkdir -m $dirmode -p -- $*"
exec mkdir -m "$dirmode" -p -- "$@" exec mkdir -m "$dirmode" -p -- "$@"
else
# Clean up after NextStep and OpenStep mkdir.
for d in ./-m ./-p ./--version "./$dirmode";
do
test -d $d && rmdir $d
done
fi fi
;; ;;
esac esac
@ -84,17 +120,17 @@ do
mkdir "$pathcomp" || lasterr=$? mkdir "$pathcomp" || lasterr=$?
if test ! -d "$pathcomp"; then if test ! -d "$pathcomp"; then
errstatus=$lasterr errstatus=$lasterr
else else
if test ! -z "$dirmode"; then if test ! -z "$dirmode"; then
echo "chmod $dirmode $pathcomp" echo "chmod $dirmode $pathcomp"
lasterr="" lasterr=""
chmod "$dirmode" "$pathcomp" || lasterr=$? chmod "$dirmode" "$pathcomp" || lasterr=$?
if test ! -z "$lasterr"; then if test ! -z "$lasterr"; then
errstatus=$lasterr errstatus=$lasterr
fi fi
fi fi
fi fi
fi fi
@ -107,5 +143,8 @@ exit $errstatus
# Local Variables: # Local Variables:
# mode: shell-script # mode: shell-script
# sh-indentation: 2 # sh-indentation: 2
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-end: "$"
# End: # End:
# mkinstalldirs ends here