autoconf
[Top][All Lists]
Advanced

[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





reply via email to

[Prev in Thread] Current Thread [Next in Thread]