Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeff Johnston <jjohnstn@redhat.com>2006-10-27 23:22:57 +0400
committerJeff Johnston <jjohnstn@redhat.com>2006-10-27 23:22:57 +0400
commitf29fdb2f9dae172bf3840206b1a4ff1fab1f8792 (patch)
tree3997468a1784c950bd560bc569876c5e55ccecc4 /newlib/README
parentfa9e684236f0d6968d42881470351b1d2d2b4c23 (diff)
2006-10-27 Jeff Johnston <jjohnstn@redhat.com>
* README: Add a brief section on how to regenerate configuration files in newlib.
Diffstat (limited to 'newlib/README')
-rw-r--r--newlib/README66
1 files changed, 66 insertions, 0 deletions
diff --git a/newlib/README b/newlib/README
index 7e8cef756..9e4d92c71 100644
--- a/newlib/README
+++ b/newlib/README
@@ -305,6 +305,72 @@ directory:
$(source_dir)/src/configure --with-newlib --prefix=$(install_dir) --disable-shared
+Regenerating Configuration Files
+================================
+
+At times you will need to make changes to configure.in and Makefile.am files.
+This will mean that configure and Makefile.in files will need to be
+regenerated.
+
+At the top level of newlib is the file: acinclude.m4. This file contains
+the definition of the NEWLIB_CONFIGURE macro which is used by all configure.in
+files in newlib. You will notice that each directory in newlib containing
+a configure.in file also contains an aclocal.m4 file. This file is
+generated by issuing: aclocal -I${relative_path_to_toplevel_newlib_dir}
+For example, to regenerate aclocal.m4 in newlib/libc/machine/arm:
+
+ aclocal -I ../../..
+
+Note that if the top level acinclude.m4 is altered, every aclocal.m4 file
+in newlib should be regenerated.
+
+If the aclocal.m4 file is regenerated due to a change in acinclude.m4 or
+if a configure.in file is modified, the corresponding configure file in the
+directory must be regenerated using autoconf. No parameters are necessary.
+In the previous example, we would issue:
+
+ autoconf
+
+from the newlib/libc/machine/arm directory.
+
+If you have regenerated a configure file or if you have modified a Makefile.am
+file, you will need to regenerate the appropriate Makefile.in file(s).
+For newlib, automake is a bit trickier. First of all, all Makefile.in
+files in newlib (and libgloss) are generated using the --cygnus option
+of automake.
+
+Makefile.in files are generated from the nearest directory up the chain
+which contains a configure.in file. In most cases, this is the same
+directory containing configure.in, but there are exceptions.
+For example, the newlib/libc directory has a number of
+subdirectories that do not contain their own configure.in files (e.g. stdio).
+For these directories, you must issue the automake command from newlib/libc
+which is the nearest parent directory that contains a configure.in.
+When you issue the automake command, you specify the subdirectory for
+the Makefile.in you are regenerating. For example:
+
+ automake --cygnus stdio/Makefile stdlib/Makefile
+
+Note how multiple Makefile.in files can be created in the same step. You
+would not specify machine/Makefile or sys/Makefile in the previous example
+because both of these subdirectories contain their own configure.in files.
+One would change to each of these subdirectories and in turn issue:
+
+ automake --cygnus Makefile
+
+Let's say you create a new machine directory XXXX off of newlib/libc/machine.
+After creating a new configure.in and Makefile.am file, you would issue:
+
+ aclocal -I ../../..
+ autoconf
+ automake --cygnus Makefile
+
+from newlib/libc/machine/XXXX
+
+It is strongly advised that you use an adequate version of autotools.
+For this latest release, this would be: autoconf 2.59, aclocal 1.9.5, and
+automake 1.9.5.
+
Reporting Bugs
==============