[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Config.rpath vs. AC_CONFIG_AUX_DIR
From: |
Alexandre Duret-Lutz |
Subject: |
Re: Config.rpath vs. AC_CONFIG_AUX_DIR |
Date: |
Thu, 15 Jan 2004 00:27:16 +0100 |
User-agent: |
Gnus/5.1003 (Gnus v5.10.3) Emacs/21.3.50 (gnu/linux) |
>>> "Dalibor" == Dalibor Topic <address@hidden> writes:
Dalibor> Hi all,
Dalibor> I've used Automake 1.8.2 and autoconf 2.59 for kaffe's CVS, and moved
Dalibor> the automake/autoconf scripts into their own direcoty using
Dalibor> AC_CONFIG_AUX_DIR. There is a small problem, though.
Dalibor> config.rpath doesn't seem to get moved into the ac_aux_dir
Dalibor> automatically. This leads to warnings in configure which can;t find
Dalibor> the config.rpath script anymore.
Welcome to automaze... The easiest heuristic to find your way
through all this is to select keywords such as
`AC_CONFIG_AUX_DIR' or `config.rpath', and grep each manual in
turn until you find the start of a clue.
[automake.info]
| `AC_CONFIG_AUX_DIR'
| Automake will look for various helper scripts, such as
| `install-sh', in the directory named in this macro invocation.
| (The full list of scripts is: `config.guess', `config.sub',
| `depcomp', `elisp-comp', `compile', `install-sh', `ltmain.sh',
| `mdate-sh', `missing', `mkinstalldirs', `py-compile',
| `texinfo.tex', and `ylwrap'.) Not all scripts are always searched
| for; some scripts will only be sought if the generated
| `Makefile.in' requires them.
[...]
| Required files from `AC_CONFIG_AUX_DIR' are automatically
| distributed, even if there is no `Makefile.am' in this directory.
[...]
| `automake' accepts the following options:
|
|`-a'
|`--add-missing'
| Automake requires certain common files to exist in certain
| situations; for instance `config.guess' is required if
| `configure.ac' runs `AC_CANONICAL_HOST'. Automake is distributed
| with several of these files (*note Auxiliary Programs::); this
| option will cause the missing ones to be automatically added to
| the package, whenever possible. In general if Automake tells you
| a file is missing, try using this option. By default Automake
| tries to make a symbolic link pointing to its own copy of the
| missing file; this can be changed with `--copy'.
|
| Many of the potentially-missing files are common scripts whose
| location may be specified via the `AC_CONFIG_AUX_DIR' macro.
| Therefore, `AC_CONFIG_AUX_DIR''s setting affects whether a file is
| considered missing, and where the missing file is added (*note
| Optional::).
[...]
And the `Auxiliary Programs' node --which describes each one of
these little utilities automake distributes-- does not mention
config.rpath.
IOW, config.rpath is not something that automake installs.
However
[automake.info]
| For the most part, the files to distribute are automatically found by
| Automake: all source files are automatically included in a distribution,
| as are all `Makefile.am's and `Makefile.in's. Automake also has a
| built-in list of commonly used files which are automatically included
| if they are found in the current directory (either physically, or as
| the target of a `Makefile.am' rule). This list is printed by `automake
| --help'.
and
[automake --help]
| Files which are automatically distributed, if found:
| ABOUT-GNU README config.rpath ltcf-gcj.sh
| ABOUT-NLS THANKS config.sub ltconfig
| AUTHORS TODO configure ltmain.sh
| BACKLOG acconfig.h configure.ac mdate-sh
| COPYING aclocal.m4 configure.in missing
| COPYING.DOC ansi2knr.1 depcomp mkinstalldirs
[...]
I.e., config.rpath is automatically distributed if automake
processes a Makefile.am in a directory where config.rpath
exists. (This subtly differs from the list of AC_CONFIG_AUX_DIR
tools installed by Automake --those listed in the first quote--
and which get distributed even when there is no Makefile.am in
the vicinity.)
[gettext.info]
| The program `gettextize' provides the following files. However, no
| existing file will be replaced unless the option `--force' (`-f') is
| specified.
[...]
| 4. The files `config.rpath' and `mkinstalldirs' are copied into the
| directory containing configuration support files. It is needed by
| the `AM_GNU_GETTEXT' autoconf macro.
[...]
| It is also important to understand that `gettextize' is not part of
| the GNU build system, in the sense that it should not be invoked
| automatically, and not be invoked by someone who doesn't assume the
| responsibilities of a package maintainer. For the latter purpose, a
| separate tool is provided, see *Note autopoint Invocation::.
[...]
| The `autopoint' program copies standard gettext infrastructure files
| into a source package. It extracts from a macro call of the form
| `AM_GNU_GETTEXT_VERSION(VERSION)', found in the package's
| `configure.in' or `configure.ac' file, the gettext version used by the
| package, and copies the infrastructure files belonging to this version
| into the package.
config.rpath is installed by gettextize or autopoint.
Dalibor> The same may also apply to mkinstalldirs, but I'm not sure if that
Dalibor> script is part of autoconf/automake/libtool toolchain.
[automake.info]
| `mkinstalldirs'
| This script used to be a wrapper around `mkdir -p', which is not
| portable. Now we use prefer to use `install-sh -d' when configure
| finds that `mkdir -p' does not work, this makes one less script to
| distribute.
|
| For backward compatibility `mkinstalldirs' is still used and
| distributed when `automake' finds it in a package. But it is no
| longer installed automatically, and it should be safe to remove it.
--
Alexandre Duret-Lutz