GNU Info

Info Node: (gimpprint.info)automake

(gimpprint.info)automake


Prev: autoconf Up: Integrating libgimpprint
Enter node , (file) or (file)node

`automake'
==========

   The `automake' program can be used to generate `Makefile.in' files
suitable for use with a `configure' script generated by `autoconf'.  As
`automake' _requires_ `autoconf', this section will assume the use of a
`configure' script which uses the `AM_PATH_GIMPPRINT' macro (there is
little point in _not_ using it!).

   It is highly recommeded that you use GNU `autoconf' and `automake'.
They will allow you to make your software build on most platforms with
most compilers. `automake' makes writing complex `Makefile' files very
easy, by expressing how to build your packages in terms of what files
are required to build a project and the installation locations of the
files. It imposes a few limitations over using plain `Makefile' files,
such as in the use of conditionals, but these problems are vastly
outweighed by the benefits it brings. It also creates many extra
targets in the generated `Makefile.in' files such as `dist',
`distcheck', `clean', `distclean', `maintainer-clean' and `tags', and
there are many more more available. Note: GNU automake,
for more information.

   Because `AM_PATH_GIMPPRINT' calls `AC_SUBST' to substitute
`GIMPPRINT_CFLAGS', `GIMPPRINT_LIBS' and `GIMPPRINT_CONFIG', `automake'
will automatically set these variables in the `Makefile.in' files it
generates, requiring no additional effort on your part!

   As in previous examples, we will make a program `prog' from a file
`prog.c'. This is how one might build write a `Makefile.am' to do this:

     AUTOMAKE_OPTIONS = 1.4 gnu
     MAINT_CHARSET = latin1
     
     @SET_MAKE@
     
     CFLAGS = @CFLAGS@
     
     INCLUDES = @INCLUDES@ $(GIMPPRINT_CFLAGS)
     
     bin_PROGRAMS = prog
     prog_SOURCES = prog.c
     prog_LDADD = $(GIMPPRINT_LIBS)
     
     MAINTAINERCLEANFILES = Makefile.in

   That's all there is to it! Please note that this example also
requires the macro `AC_PROG_MAKE_SET' to be used in `configure.in' and
the use of `AC_SUBST' to substitute `CFLAGS' and `INCLUDES' where
`@CFLAGS@' and `@INCLUDES@' are found in the file, respectively.


automatically generated by info2www version 1.2.2.9