From: Tom Tromey Date: Fri, 9 Apr 1999 22:27:07 +0000 (+0000) Subject: * automake.texi (Macros): Mention AM_PROG_GCJ. X-Git-Tag: last-merge-into-user-dep-gen-branch~36 X-Git-Url: https://sourceware.org/git/?a=commitdiff_plain;h=d8440311510f70fee39911dbfb26e53e41a0c7b5;p=automake.git * automake.texi (Macros): Mention AM_PROG_GCJ. (Java Support): New node. (Dist): Documented dist_ and nodist_ prefixes. * m4/gcj.m4 (AM_PROG_GCJ): Renamed from AC_PROG_GCJ. --- diff --git a/ChangeLog b/ChangeLog index eee9e365..4e20f6e0 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,11 @@ 1999-04-09 Tom Tromey + * automake.texi (Macros): Mention AM_PROG_GCJ. + (Java Support): New node. + (Dist): Documented dist_ and nodist_ prefixes. + + * m4/gcj.m4 (AM_PROG_GCJ): Renamed from AC_PROG_GCJ. + * automake.in (lang_java_finish): Generate .lo rule for `.java' files, not `.gcj' files. diff --git a/NEWS b/NEWS index 7a9be027..c17b2fc9 100644 --- a/NEWS +++ b/NEWS @@ -4,6 +4,7 @@ New in 1.4a: * GNU tar is no longer required for `make dist' * The usual bug fixes * Added support for `dist_' and `nodist_' prefixes to some primaries +* Compiled Java support New in 1.4: * Added support for the Fortran 77 programming language. diff --git a/automake.texi b/automake.texi index 11dee30c..ccce671d 100644 --- a/automake.texi +++ b/automake.texi @@ -1337,6 +1337,12 @@ Programs, , Particular Program Checks, autoconf, The Autoconf Manual}), but uses the @code{missing} script on systems that do not have @code{lex}. @samp{HP-UX 10} is one such system. +@item AM_PROG_GCJ +This macro finds the @code{gcj} program or causes an error. It sets +@samp{GCJ} and @samp{GCJFLAGS}. @code{gcj} is the Java front-end to the +GNU C compiler. +@cvindex AM_PROG_GCJ + @item AM_SANITY_CHECK This checks to make sure that a file created in the build directory is newer than a file in the source directory. This can fail on systems @@ -1491,6 +1497,7 @@ to build programs and libraries. * Yacc and Lex:: Yacc and Lex support * C++ Support:: * Fortran 77 Support:: +* Java Support:: * Support for Other Languages:: * ANSI:: Automatic de-ANSI-fication * Dependencies:: Automatic dependency tracking @@ -1954,7 +1961,7 @@ The command used to actually link a C++ program. @end vtable -@node Fortran 77 Support, Support for Other Languages, C++ Support, Programs +@node Fortran 77 Support, Java Support, C++ Support, Programs @comment node-name, next, previous, up @section Fortran 77 Support @@ -2200,14 +2207,32 @@ Fortran 77 support was added to Autoconf 2.13, so you will want to use that version of Autoconf or later. -@node Support for Other Languages, ANSI, Fortran 77 Support, Programs +@node Java Support, Support for Other Languages, Fortran 77 Support, Programs +@comment node-name, next, previous, up + +Automake includes support for compiled Java, using @code{gcj}, the Java +front end to the GNU C compiler. + +Any package including Java code to be compiled must define the output +variable @samp{GCJ} in @file{configure.in}; the variable @samp{GCJFLAGS} +must also be defined somehow (either in @file{configure.in} or +@file{Makefile.am}). The simplest way to do this is to use the +@code{AM_PROG_GCJ} macro. + +By default, programs including Java source files are linked with +@code{gcj}. + + +@node Support for Other Languages, ANSI, Java Support, Programs @comment node-name, next, previous, up @section Support for Other Languages Automake currently only includes full support for C, C++ (@pxref{C++ -Support})and Fortran 77 (@pxref{Fortran 77 Support}). There is only -rudimentary support for other languages, support for which will be -improved based on user demand. +Support}), Fortran 77 (@pxref{Fortran 77 Support}), and Java +(@pxref{Java Support}). There is only rudimentary support for other +languages, support for which will be improved based on user demand. + +@c FIXME: mention suffix rule processing here. @node ANSI, Dependencies, Support for Other Languages, Programs @@ -2860,6 +2885,26 @@ there; in this case the entire directory will be recursively copied into the distribution. @vindex EXTRA_DIST +Sometimes you need tighter control over what does @emph{not} go into the +distribution; for instance you might have source files which are +generated and which you do not want to distribute. In this case +Automake gives fine-grained control using the @samp{dist} and +@samp{nodist} prefixes. Any primary or @samp{_SOURCES} variable can be +prefixed with @samp{dist_} to add the listed files to the distribution. +Similarly, @samp{nodist_} can be used to omit the files from the +distribution. +@vindex dist_ +@vindex nodist_ + +As an example, here is how you would cause some data to be distributed +while leaving some source code out of the distribution: + +@example +dist_data_DATA = distribute-this +bin_PROGRAMS = foo +nodist_foo_SOURCES = do-not-distribute.c +@end example + If you define @code{SUBDIRS}, Automake will recursively include the subdirectories in the distribution. If @code{SUBDIRS} is defined conditionally (@pxref{Conditionals}), Automake will normally include all diff --git a/m4/gcj.m4 b/m4/gcj.m4 index 2b67bda2..f040173d 100644 --- a/m4/gcj.m4 +++ b/m4/gcj.m4 @@ -1,7 +1,7 @@ dnl Check for Java compiler. dnl For now we only handle the GNU compiler. -AC_DEFUN(AC_PROG_GCJ,[ +AC_DEFUN(AM_PROG_GCJ,[ AC_CHECK_PROG(GCJ, gcj) test -z "$GCJ" && AC_MSG_ERROR([no acceptable gcj found in \$PATH]) if test "x${GCJFLAGS+set}" = xset; then diff --git a/stamp-vti b/stamp-vti index 89846150..27436269 100644 --- a/stamp-vti +++ b/stamp-vti @@ -1,3 +1,3 @@ -@set UPDATED 31 March 1999 +@set UPDATED 9 April 1999 @set EDITION 1.4a @set VERSION 1.4a diff --git a/version.texi b/version.texi index 89846150..27436269 100644 --- a/version.texi +++ b/version.texi @@ -1,3 +1,3 @@ -@set UPDATED 31 March 1999 +@set UPDATED 9 April 1999 @set EDITION 1.4a @set VERSION 1.4a