Help with automake/autoconf

2002-03-08 Thread Andrew Li
 
 Andrew Li [EMAIL PROTECTED] wrote: 

I am newbie in using automake/autoconf programs.
I am running into the following problem. Any help is really appreciated
I initially had a working system in my machine, with autoconf version 2.13
Then when I created new source(.c) files in my tree, I read the documentation
to generate new makefiles. It says to modify the Makefile.am file and then
run automake. Since I did not have automake in my machine, I had to install
the latest version of automake. During the process I was asked to install 
autoconf version 2.52 or later. So had to get version 2.52.
Now I ran 
automake, followed by
autoconf
which gives me the following error:
configure.in:17: error: possibly undefined macro: dnl
I am doing somethin wrong. Any help is really appreciated.

thanks 
AL


Do You Yahoo!?Try FREE Yahoo! Mail - the world's greatest free email!Do You Yahoo!?
Try FREE Yahoo! Mail - the world's greatest free email!

[patch] mkinstalldirs used conditionally

2002-03-08 Thread Roger Leigh

I sent a link to my patch a week ago, but I didn't see any reply.  Is
there anything wrong with this patch?

Regards,
Roger

diff -urN automake/lib/am/data.am automake-new/lib/am/data.am
--- automake/lib/am/data.am Fri Nov  9 16:25:03 2001
+++ automake-new/lib/am/data.am Fri Mar  1 23:26:36 2002
 -28,7 +28,9 
 ?!EXEC?.PHONY install-data-am: install-%DIR%%PRIMARY%
 install-%DIR%%PRIMARY%: $(%DIR%_%PRIMARY%)
$(NORMAL_INSTALL)
-   $(mkinstalldirs) $(DESTDIR)$(%NDIR%dir)
+   if test -n '$(%DIR%_%PRIMARY%)'; then \
+ $(mkinstalldirs) $(DESTDIR)$(%NDIR%dir); \
+   fi
 ## Funny invocation because Makefile variable can be empty, leading to
 ## a syntax error in sh.
list='$(%DIR%_%PRIMARY%)'; for p in $$list; do \
diff -urN automake/lib/am/java.am automake-new/lib/am/java.am
--- automake/lib/am/java.am Wed May 30 03:02:50 2001
+++ automake-new/lib/am/java.am Sat Mar  2 00:39:10 2002
 -42,7 +42,9 
 ?!EXEC?.PHONY install-data-am: install-%DIR%JAVA
 install-%DIR%JAVA: class%DIR%.stamp
$(NORMAL_INSTALL)
-   $(mkinstalldirs) $(DESTDIR)$(%NDIR%dir)
+   if test -n '$(%DIR%_JAVA)'; then \
+ $(mkinstalldirs) $(DESTDIR)$(%NDIR%dir); \
+   fi
 ## A single .java file can be compiled into multiple .class files.  So
 ## we just install all the .class files that got built into this
 ## directory.  This is not optimal, but will have to do for now.
diff -urN automake/lib/am/libs.am automake-new/lib/am/libs.am
--- automake/lib/am/libs.am Thu Jun 28 16:06:50 2001
+++ automake-new/lib/am/libs.am Fri Mar  1 23:26:36 2002
 -37,7 +37,9 
 ?!EXEC?.PHONY install-data-am: install-%DIR%LIBRARIES
 install-%DIR%LIBRARIES: $(%DIR%_LIBRARIES)
$(NORMAL_INSTALL)
-   $(mkinstalldirs) $(DESTDIR)$(%NDIR%dir)
+   if test -n '$(%DIR%_LIBRARIES)'; then \
+ $(mkinstalldirs) $(DESTDIR)$(%NDIR%dir); \
+   fi
 ## Funny invocation because Makefile variable can be empty, leading to
 ## a syntax error in sh.
list='$(%DIR%_LIBRARIES)'; for p in $$list; do \
diff -urN automake/lib/am/lisp.am automake-new/lib/am/lisp.am
--- automake/lib/am/lisp.am Fri Nov  9 16:25:03 2001
+++ automake-new/lib/am/lisp.am Fri Mar  1 23:26:36 2002
 -44,7 +44,9 
$(NORMAL_INSTALL)
 ## lispdir might not be defined.
if test -n $(lispdir); then \
- $(mkinstalldirs) $(DESTDIR)$(%NDIR%dir); \
+ if test -n '$(%DIR%_LISP)'; then \
+   $(mkinstalldirs) $(DESTDIR)$(%NDIR%dir); \
+ fi; \
 ## Funny invocation because Makefile variable can be empty, leading to
 ## a syntax error in sh.
  list='$(%DIR%_LISP)'; for p in $$list; do \
diff -urN automake/lib/am/ltlib.am automake-new/lib/am/ltlib.am
--- automake/lib/am/ltlib.amMon Apr  9 10:50:33 2001
+++ automake-new/lib/am/ltlib.amFri Mar  1 23:26:36 2002
 -27,7 +27,9 
 ?!EXEC?.PHONY install-data-am: install-%DIR%LTLIBRARIES
 install-%DIR%LTLIBRARIES: $(%DIR%_LTLIBRARIES)
$(NORMAL_INSTALL)
-   $(mkinstalldirs) $(DESTDIR)$(%NDIR%dir)
+   if test -n '$(%DIR%_LTLIBRARIES)'; then \
+ $(mkinstalldirs) $(DESTDIR)$(%NDIR%dir); \
+   fi
 ## Funny invocation because Makefile variable can be empty, leading to
 ## a syntax error in sh.
list='$(%DIR%_LTLIBRARIES)'; for p in $$list; do \
diff -urN automake/lib/am/mans.am automake-new/lib/am/mans.am
--- automake/lib/am/mans.am Sun May  6 06:40:47 2001
+++ automake-new/lib/am/mans.am Sat Mar  2 00:43:25 2002
 -31,7 +31,6 
 .PHONY install-man: install-man%SECTION%
 install-man%SECTION%: $(man%SECTION%_MANS) $(man_MANS)
$(NORMAL_INSTALL)
-   $(mkinstalldirs) $(DESTDIR)$(man%SECTION%dir)
list='$(man%SECTION%_MANS) $(dist_man%SECTION%_MANS) 
$(nodist_man%SECTION%_MANS)'; \
 ## Extract all items from man_MANS that should go in this section.
 ## This must be done dynamically to support conditionals.
 -42,6 +41,10 
*.%SECTION%*) list=$$list $$i ;; \
  esac; \
done; \
+## Make the installation directory if there are MANS to install
+   if test -n `echo $$list | sed -e 's/ //g'`; then \
+ $(mkinstalldirs) $(DESTDIR)$(man%SECTION%dir); \
+   fi; \
for i in $$list; do \
 ## Find the file.
  if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
diff -urN automake/lib/am/progs.am automake-new/lib/am/progs.am
--- automake/lib/am/progs.amSun Jul 22 22:50:18 2001
+++ automake-new/lib/am/progs.amFri Mar  1 23:26:36 2002
 -28,7 +28,9 
 ?!EXEC?.PHONY install-data-am: install-%DIR%PROGRAMS
 install-%DIR%PROGRAMS: $(%DIR%_PROGRAMS)
$(NORMAL_INSTALL)
-   $(mkinstalldirs) $(DESTDIR)$(%NDIR%dir)
+   if test -n '$(%DIR%_PROGRAMS)'; then \
+ $(mkinstalldirs) $(DESTDIR)$(%NDIR%dir); \
+   fi
 ## Funny invocation because Makefile variable can be empty, leading to
 ## a syntax error in sh.
list='$(%DIR%_PROGRAMS)'; for p in $$list; do \
diff -urN automake/lib/am/python.am 

Patches submitted in February (and Re: COPYING.LIB in --gnits mode)

2002-03-08 Thread Bonzini Paolo

Is there more interest for my February patches (COPYING.LESSER, shtool,
PDF support) now that Automake 1.6 has been released and, I guess, 1.7
development has been opened?

And also, re. COPYING.LESSER: yes, COPYING.LESSER is not widespread
outside GNU packages, but I did receive mail from rms around 2000 asking
me to switch to the Lesser GPL (version 2.1) and consequently to change
the file name.

Making the switch easier (by automatically distributing COPYING.LESSER)
for people using automake, or hinting people at it by issuing a warning in
--gnu mode (and an error in --gnits mode), might be considered good.

Paolo





Autoconf 2.53 is released

2002-03-08 Thread Akim Demaille


The Autoconf team is extremely pleased to announce Autoconf 2.53.  We
hope it will address your problems, and make your life easier.

Enjoy!

Akim, Alexandre, Jim, Paul, Tom.

  ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.53.tar.gz   (973 kB)
  ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.53.tar.bz2  (743 kB)

And here are xdelta-style diffs

  ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.52-2.53.xdelta   (215 kB)

Here are the MD5 and SHA1 signatures for the compressed tar files:

42948310deb847982004a3b0d936f7bb  autoconf-2.53.tar.gz
c121b003f51e293c2bf5a6105c721388  autoconf-2.53.tar.bz2
a9fe8460b4ed6f279f3d3f8a73eb39b19e93dc98  autoconf-2.53.tar.gz
c99aa737c0fe24c1cfcf0701e614e69f3ff07209  autoconf-2.53.tar.bz2

NEWS:

** Requirements

  Perl 5.005_03 or later is required: autom4te is written in Perl and is
  needed by autoconf.  autoheader, autoreconf, ifnames, and autoscan are
  rewritten in Perl.

** Documentation

- AC_INIT
  Argument requirements, output variables, defined macros.
- M4sugar, M4sh, Autotest
  First sketch.
- Double quoting macros
  AC_TRY_CPP, AC_TRY_COMPILE, AC_TRY_LINK and AC_TRY_RUN.
- Licensing
  The Autoconf manual is now distributed under the terms of the GNU FDL.
- Section `Hosts and Cross-Compilation'
  Explains the rationale for the 2.5x changes in the cross-compilation
  chain, and in the relationships between build, host, and target
  types.
  Emphasizes that `cross-compilation' == `--host is given'.
  If you are working on compilers etc., be sure to read this section.
- Section `AC_LIBOBJ vs. LIBOBJS'
  Explains why assigning LIBOBJS directly is now an error.
  Details how to update the code.

** configure

- $LINENO
  Now used instead of hard coded line numbers.
  This eases the comparison of `configure's, and diminishes the
  pressure over control version archives.
  Automatic replacement for shells that don't support this feature.
- New output variables
  builddir, top_builddir, abs_srcdir, abs_top_srcdir, abs_builddir,
  abs_top_builddir@.

** Emacs

  Autoconf and Autotest modes are provided.

** Executables

- autom4te
  New, used by the Autoconf suite to cache and speed up most processing.
- --force, -f
  Supported by autom4te, autoconf and autoheader.
- --include, -I
  Replaces --autoconf-dir and --localdir in autoconf, autoheader,
  autoupdate, and autoreconf.
- autoreconf
  No longer passes --cygnus, --foreign, --gnits, --gnu, --include-deps:
  automake options are to be given via AUTOMAKE_OPTIONS.
- autoreconf
  Runs gettextize and libtoolize when appropriate.
- autoreconf
  --m4dir is no longer supported.
- autoreconf
  Now runs only in the specified directories, defaulting to `.',
  but understands AC_CONFIG_SUBDIRS for dependent directories.
  Before, it used to run on all the `configure.ac' found in the
  current tree.
  Independent packages are properly updated.

** Bug fixes

- The top level $prefix is propagated to the AC_CONFIG_SUBDIRS configures.
- AC_TRY_RUN
  Under the user pressure, $? is finally available.  Probably a mistake.
- AC_F77_LIBRARY_LDFLAGS now supports the HP/UX f90 compiler.
- Precious variables accumulation
  config.status could stack several copies of the precious variables
  assignments.
- AC_PATH_PROG and family.
  Works properly when given a literal path.
- AC_FUNC_SETPGRP
  Somewhere since 2.13, the result had been reversed.

** C Macros

- AC_C_BIGENDIAN supports the cross-compiling case.
- AC_C_BIGENDIAN accepts ACTION-IF-TRUE, ACTION-IF-FALSE, and
  ACTION-IF-UNKNOWN arguments.  All are facultative, and the default
  for ACTION-IF-TRUE is to define WORDS_BIGENDIAN like AC_C_BIGENDIAN
  always did.
- AC_C_LONG_DOUBLE now succeeds only if `long double' has more range or
  precision than `double'.

** Generic macros

- AC_INIT
  It now defines the preprocessor symbols PACKAGE_NAME,
  PACKAGE_TARNAME, PACKAGE_VERSION, PACKAGE_STRING, and
  PACKAGE_BUGREPORT.

- AC_INIT
  Admits a fourth optional parameter: the tar name.

- AC_CONFIG_COMMANDS, HEADERS, FILES, LINKS.
  Provide the user with srcdir, ac_srcdir, ac_top_srcdir, ac_builddir,
  ac_top_builddir, ac_abs_srcdir, ac_abs_top_srcdir, ac_abs_builddir,
  ac_abs_top_builddir.

- AC_CONFIG_COMMANDS, HEADERS, FILES, LINKS and AC_OUTPUT.
  Are much less expensive when using long lists of files.

- AC_PREFIX_PROGRAM
  Works with shell variables, and non alphanumeric names.

** Library macros

- AC_FUNC_STRERROR_R now sets STRERROR_R_CHAR_P, not HAVE_WORKING_STRERROR_R,
  because POSIX 1003.1-200x draft 7 says strerror_r returns int, not char *.

- AC_FUNC_STRTOD substitutes POW_LIB.

- AC_FUNC_STRNLEN
  New.




Re: Autoconf 2.53 is released

2002-03-08 Thread Bruce Korb

Akim Demaille wrote:
 
 The Autoconf team is extremely pleased to announce Autoconf 2.53.  We
 hope it will address your problems, and make your life easier.

 - Double quoting macros
   AC_TRY_CPP, AC_TRY_COMPILE, AC_TRY_LINK and AC_TRY_RUN.

FYI:  this will teach me for upgrading without thorough testing.
I double quoted the program arguments like you said I should,
only to find that when I upgraded I was overquoted and it trashed
*my* release.  In the future, I cannot recommend strongly enough
that when you change interfaces like this, CHANGE THE NAME, TOO!




Re: Autoconf 2.53 is released

2002-03-08 Thread akim

On Fri, Mar 08, 2002 at 05:57:52PM -0800, Bruce Korb wrote:
 Akim Demaille wrote:
  
  The Autoconf team is extremely pleased to announce Autoconf 2.53.  We
  hope it will address your problems, and make your life easier.
 
  - Double quoting macros
AC_TRY_CPP, AC_TRY_COMPILE, AC_TRY_LINK and AC_TRY_RUN.
 
 FYI:  this will teach me for upgrading without thorough testing.
 I double quoted the program arguments like you said I should,
 only to find that when I upgraded I was overquoted and it trashed
 *my* release.  In the future, I cannot recommend strongly enough
 that when you change interfaces like this, CHANGE THE NAME, TOO!

There must be some confusion here.  The section of the NEWS file you are
quoting here refers to the documentation changes: 2.53 documents what
macros are double quoting (as oppposed to the rest of Autoconf), because
we cannot change the interface for backward compatibility.

Thanks.