Re: AC_DEFINE* with 2 args discouraged?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





Ralf Wildenhues wrote:
* Guido Draheim wrote on Mon, Dec 01, 2003 at 09:25:39AM CET:

Ralf Wildenhues wrote:

*snip*


Now current CVS autoheader (2.59a) gives me
|autoheader: warning: missing template: _LIBFOO_FEATURE_BAZ
|autoheader: Use AC_DEFINE([_LIBFOO_FEATURE_BAZ], [], [Description])

Is this deprecated usage?  How is my goal best accomplished?
Is having duplicate sets of defines in config.h/libfoo_conf.h the
solution of choice?  Then I'd suggest the description in
info '(autoconf.info)Defining Symbols' to be more precise (where
only the usage with one parameter is explicitly discouraged).

You do know about AX_PREFIX_CONFIG_H, do you?


No, I didn't before.  Looks like a good idea, except for the minor
cosmetic issue of having numerous exposed macros which do not belong
to the library interface.  Thanks for the suggestion, though, this
looks like the easiest and least error-prone solution.

yes and yes and yes. It puts in a lot but those defines are not for the library user anyway - make up derived exported #defines in your main library header and document them. It's simply a very easy and safe solution, and it makes it a _lot_ easier to turn some procedure package into a library project. It just needs an extra macro and an extra #include, the rest will follow. ;-)


BTW, current CVS autotools will break the example given in ax_prefix_config_h.m4 unless obsolete AM_CONFIG_HEADER is replaced with AC_CONFIG_HEADERS.

It does work on my system but those are not cvs level. Hmmmm.



Still there is the Autoconf documentation issue with AC_DEFINE*, namely that I would like to know if usage with 2 args is deprecated.


the autoconf.info manual says "`autoheader' needs you to document all of the symbols that you might use; i.e., there must be at least one `AC_DEFINE' or one `AC_DEFINE_UNQUOTED' call with a third argument for each symbol" ... here I see "there MUST be (at least one)".

have fun,
-- guido                                  http://google.de/search?q=guidod
GCS/E/S/P C++/++++$ ULHS L++w- N++@ d(+-) s+a- r+@>+++ y++ 5++X- (geekcode)




[Index of Archives]     [GCC Help]     [Kernel Discussion]     [RPM Discussion]     [Red Hat Development]     [Yosemite News]     [Linux USB]     [Samba]

  Powered by Linux