This is autoconf-archive.info, produced by makeinfo version 6.7 from autoconf-archive.texi. This manual is for GNU Autoconf Archive version 2021.02.19, a collection of freely re-usable Autoconf macros. Copyright (C) 2016 Autoconf Archive Maintainers Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". INFO-DIR-SECTION Software development START-INFO-DIR-ENTRY * Autoconf Archive: (autoconf-archive). A collection of re-usable Autoconf macros. END-INFO-DIR-ENTRY  File: autoconf-archive.info, Node: ax_prog_splint, Next: ax_prog_ssh, Prev: ax_prog_scp, Up: The Macros ax_prog_splint ============== Synopsis ******** AX_PROG_SPLINT([AX_SPLINTFLAGS]) Description *********** Check for program splint, the static C code checking tool. The splint URL is given by http://www.splint.org. This macro should be use together with automake. Enables following environment variables: SPLINT SPLINTFLAGS and AX_SPLINTFLAGS is given by AC_SUBST. If AX_SPLINTFLAGS is not given by AX_PROG_SPLINT it defaults to "-weak". Enables the following make target: splint-check which runs splint per PROGRAMS and LIBRARIES. Output from splint run is collected in file ***_splint.log where *** is given by the PROGRAMS or LIBRARIES name. The following line is required in Makefile.am: include aminclude_static.am Source Code *********** Download the latest version of 'ax_prog_splint.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_prog_splint.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_prog_splint.m4). License ******* Copyright (C) 2011 Henrik Uhrenholt Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_prog_ssh, Next: ax_prog_tasm, Prev: ax_prog_splint, Up: The Macros ax_prog_ssh =========== Synopsis ******** AX_PROG_SSH Description *********** Check for the program 'ssh', let script continue if exists, pops up error message if not. Besides checking existence, this macro also set these environment variables upon completion: SSH = which ssh Source Code *********** Download the latest version of 'ax_prog_ssh.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_prog_ssh.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_prog_ssh.m4). License ******* Copyright (C) 2008 Gleen Salmon This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_prog_tasm, Next: ax_prog_tasm_opt, Prev: ax_prog_ssh, Up: The Macros ax_prog_tasm ============ Synopsis ******** AX_PROG_TASM([ACTION-IF-NOT-FOUND]) Description *********** This macro searches for the TASM assembler and sets the variable "tasm" to the name of the application or to "no" if not found. If ACTION-IF-NOT-FOUND is not specified, configure will fail when the program is not found. Example: AX_PROG_TASM() AX_PROG_TASM([tasm_avail="no"]) Source Code *********** Download the latest version of 'ax_prog_tasm.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_prog_tasm.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_prog_tasm.m4). License ******* Copyright (C) 2007,2009 Bogdan Drozdowski This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_prog_tasm_opt, Next: ax_prog_tcl, Prev: ax_prog_tasm, Up: The Macros ax_prog_tasm_opt ================ Synopsis ******** AX_PROG_TASM_OPT(option, var_name) Description *********** This macro checks if the TASM assembler accepts the given option. If yes, the option is appended to the variable 'var_name', otherwise 'var_name' is unchanged. Example: AX_PROG_TASM_OPT([/z], [TASM_OPTS]) Source Code *********** Download the latest version of 'ax_prog_tasm_opt.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_prog_tasm_opt.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_prog_tasm_opt.m4). License ******* Copyright (C) 2007,2009 Bogdan Drozdowski This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_prog_tcl, Next: ax_prog_xsltproc, Prev: ax_prog_tasm_opt, Up: The Macros ax_prog_tcl =========== Synopsis ******** AX_PROG_TCL([min-version]) Description *********** Searches for tcl (tclsh and wish) in PATH and checks which version is installed. The macro bails out if either tcl is not found or the minimum version is not satisfied, unless minimum version is "0". Example: AX_PROG_TCL This checks for tcl and if not found, exits with an error. If found, it prints tcl path and version number. AX_PROG_TCL([8.0]) Checks for tcl and exits with an error if its not found or the version is below 8.0. Source Code *********** Download the latest version of 'ax_prog_tcl.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_prog_tcl.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_prog_tcl.m4). License ******* Copyright (C) 2008 David Cluytens Copyright (C) 2008 Uwe Mayer This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_prog_xsltproc, Next: ax_prog_yasm, Prev: ax_prog_tcl, Up: The Macros ax_prog_xsltproc ================ Synopsis ******** AX_PROG_XSLTPROC([default-flags]) Description *********** Find an xsltproc executable. Input: "default-flags" is the default $XSLTPROC_FLAGS, which will be overridden if the user specifies -with-xsltproc-flags. Output: $XSLTPROC contains the path to xsltproc, or is empty if none was found or the user specified -without-xsltproc. $XSLTPROC_FLAGS contains the flags to use with xsltproc. Source Code *********** Download the latest version of 'ax_prog_xsltproc.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_prog_xsltproc.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_prog_xsltproc.m4). License ******* Copyright (C) 2008,2009 Zmanda Inc. Copyright (C) 2008,2009 Dustin J. Mitchell This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_prog_yasm, Next: ax_prog_yasm_opt, Prev: ax_prog_xsltproc, Up: The Macros ax_prog_yasm ============ Synopsis ******** AX_PROG_YASM([ACTION-IF-NOT-FOUND]) Description *********** This macro searches for the YASM assembler and sets the variable "yasm" to the name of the application or to "no" if not found. If ACTION-IF-NOT-FOUND is not specified, configure will fail when the program is not found. Example: AX_PROG_YASM() AX_PROG_YASM([yasm_avail="no"]) Source Code *********** Download the latest version of 'ax_prog_yasm.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_prog_yasm.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_prog_yasm.m4). License ******* Copyright (C) 2007,2009 Bogdan Drozdowski This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_prog_yasm_opt, Next: ax_prototype, Prev: ax_prog_yasm, Up: The Macros ax_prog_yasm_opt ================ Synopsis ******** AX_PROG_YASM_OPT(option, var_name) Description *********** This macro checks if the YASM assembler accepts the given option. If yes, the option is appended to the variable 'var_name', otherwise 'var_name' is unchanged. Example: AX_PROG_YASM_OPT([-f bin], [YASM_OPTS]) Source Code *********** Download the latest version of 'ax_prog_yasm_opt.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_prog_yasm_opt.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_prog_yasm_opt.m4). License ******* Copyright (C) 2007,2009 Bogdan Drozdowski This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_prototype, Next: ax_prototype_accept, Prev: ax_prog_yasm_opt, Up: The Macros ax_prototype ============ Synopsis ******** AX_PROTOTYPE(function, includes, code, TAG1, values1 [, TAG2, values2 [...]]) Description *********** Try all the combinations of , ... to successfully compile . , , ... are substituted in and with values found in , , ... respectively. , , ... contain a list of possible values for each corresponding tag and all combinations are tested. When AC_TRY_COMPILE(include, code) is successful for a given substitution, the macro stops and defines the following macros: FUNCTION_TAG1, FUNCTION_TAG2, ... using AC_DEFINE() with values set to the current values of , , ... If no combination is successful the configure script is aborted with a message. Intended purpose is to find which combination of argument types is acceptable for a given function . It is recommended to list the most specific types first. For instance ARG1, [size_t, int] instead of ARG1, [int, size_t]. Generic usage pattern: 1) add a call in configure.in AX_PROTOTYPE(...) 2) call autoheader to see which symbols are not covered 3) add the lines in acconfig.h /* Type of Nth argument of function */ #undef FUNCTION_ARGN 4) Within the code use FUNCTION_ARGN instead of an hardwired type Complete example: 1) configure.in AX_PROTOTYPE(getpeername, [ #include #include ], [ int a = 0; ARG2 * b = 0; ARG3 * c = 0; getpeername(a, b, c); ], ARG2, [struct sockaddr, void], ARG3, [socklen_t, size_t, int, unsigned int, long unsigned int]) 2) call autoheader autoheader: Symbol `GETPEERNAME_ARG2' is not covered by ./acconfig.h autoheader: Symbol `GETPEERNAME_ARG3' is not covered by ./acconfig.h 3) acconfig.h /* Type of second argument of getpeername */ #undef GETPEERNAME_ARG2 /* Type of third argument of getpeername */ #undef GETPEERNAME_ARG3 4) in the code ... GETPEERNAME_ARG2 name; GETPEERNAME_ARG3 namelen; ... ret = getpeername(socket, &name, &namelen); ... Implementation notes: generating all possible permutations of the arguments is not easily done with the usual mixture of shell and m4, that is why this macro is almost 100% m4 code. It generates long but simple to read code. Source Code *********** Download the latest version of 'ax_prototype.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_prototype.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_prototype.m4). License ******* Copyright (C) 2009 Loic Dachary This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_prototype_accept, Next: ax_prototype_getsockname, Prev: ax_prototype, Up: The Macros ax_prototype_accept =================== Synopsis ******** AX_PROTOTYPE_ACCEPT Description *********** Requires the AX_PROTOTYPE macro. FIXME: Put this in the code! Find the type of argument two and three of accept. User must include the following in acconfig.h: /* Type of second argument of accept */ #undef ACCEPT_ARG2 /* Type of third argument of accept */ #undef ACCEPT_ARG3 Source Code *********** Download the latest version of 'ax_prototype_accept.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_prototype_accept.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_prototype_accept.m4). License ******* Copyright (C) 2008 Loic Dachary This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_prototype_getsockname, Next: ax_prototype_setsockopt, Prev: ax_prototype_accept, Up: The Macros ax_prototype_getsockname ======================== Synopsis ******** AX_PROTOTYPE_GETSOCKNAME Description *********** Requires the AX_PROTOTYPE macro. FIXME: Put this in the code! Find the type of argument two and three of getsockname. User must include the following in acconfig.h: /* Type of second argument of getsockname */ #undef GETSOCKNAME_ARG2 /* Type of third argument of getsockname */ #undef GETSOCKNAME_ARG3 Source Code *********** Download the latest version of 'ax_prototype_getsockname.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_prototype_getsockname.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_prototype_getsockname.m4). License ******* Copyright (C) 2008 Loic Dachary This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_prototype_setsockopt, Next: ax_pthread, Prev: ax_prototype_getsockname, Up: The Macros ax_prototype_setsockopt ======================= Synopsis ******** AX_PROTOTYPE_SETSOCKOPT Description *********** Requires the AX_PROTOTYPE macro. FIXME: Put this in the code! Find the type of argument three of setsockopt. User must include the following in acconfig.h: /* Type of third argument of setsockopt */ #undef SETSOCKOPT_ARG3 Source Code *********** Download the latest version of 'ax_prototype_setsockopt.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_prototype_setsockopt.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_prototype_setsockopt.m4). License ******* Copyright (C) 2008 Loic Dachary This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_pthread, Next: ax_python, Prev: ax_prototype_setsockopt, Up: The Macros ax_pthread ========== Synopsis ******** AX_PTHREAD([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]]) Description *********** This macro figures out how to build C programs using POSIX threads. It sets the PTHREAD_LIBS output variable to the threads library and linker flags, and the PTHREAD_CFLAGS output variable to any special C compiler flags that are needed. (The user can also force certain compiler flags/libs to be tested by setting these environment variables.) Also sets PTHREAD_CC and PTHREAD_CXX to any special C compiler that is needed for multi-threaded programs (defaults to the value of CC respectively CXX otherwise). (This is necessary on e.g. AIX to use the special cc_r/CC_r compiler alias.) NOTE: You are assumed to not only compile your program with these flags, but also to link with them as well. For example, you might link with $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS $PTHREAD_CXX $CXXFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS If you are only building threaded programs, you may wish to use these variables in your default LIBS, CFLAGS, and CC: LIBS="$PTHREAD_LIBS $LIBS" CFLAGS="$CFLAGS $PTHREAD_CFLAGS" CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS" CC="$PTHREAD_CC" CXX="$PTHREAD_CXX" In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute constant has a nonstandard name, this macro defines PTHREAD_CREATE_JOINABLE to that name (e.g. PTHREAD_CREATE_UNDETACHED on AIX). Also HAVE_PTHREAD_PRIO_INHERIT is defined if pthread is found and the PTHREAD_PRIO_INHERIT symbol is defined when compiling with PTHREAD_CFLAGS. ACTION-IF-FOUND is a list of shell commands to run if a threads library is found, and ACTION-IF-NOT-FOUND is a list of commands to run it if it is not found. If ACTION-IF-FOUND is not specified, the default action will define HAVE_PTHREAD. Please let the authors know if this macro fails on any platform, or if you have any other suggestions or comments. This macro was based on work by SGJ on autoconf scripts for FFTW (http://www.fftw.org/) (with help from M. Frigo), as well as ac_pthread and hb_pthread macros posted by Alejandro Forero Cuervo to the autoconf macro repository. We are also grateful for the helpful feedback of numerous users. Updated for Autoconf 2.68 by Daniel Richard G. Source Code *********** Download the latest version of 'ax_pthread.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_pthread.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_pthread.m4). License ******* Copyright (C) 2008 Steven G. Johnson Copyright (C) 2011 Daniel Richard G. Copyright (C) 2019 Marc Stevens This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_python, Next: ax_python_config_var, Prev: ax_pthread, Up: The Macros ax_python ========= Synopsis ******** AX_PYTHON Description *********** This macro does a complete Python development environment check. It checks for all known versions. When it finds an executable, it looks to find the header files and library. It sets PYTHON_BIN to the name of the python executable, PYTHON_INCLUDE_DIR to the directory holding the header files, and PYTHON_LIB to the name of the Python library. This macro calls AC_SUBST on PYTHON_BIN (via AC_CHECK_PROG), PYTHON_INCLUDE_DIR and PYTHON_LIB. Source Code *********** Download the latest version of 'ax_python.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_python.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_python.m4). License ******* Copyright (C) 2008 Michael Tindal This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_python_config_var, Next: ax_python_devel, Prev: ax_python, Up: The Macros ax_python_config_var ==================== Synopsis ******** AX_PYTHON_CONFIG_VAR(PYTHON_VARIABLE, [SHELL_VARIABLE]) AX_PYTHON_CONFIG_H AX_PYTHON_MAKEFILE Description *********** AX_PYTHON_CONFIG_VAR: Using the Python module distutils.sysconfig[1], return a Python configuration variable. PYTHON_VARIABLE is the name of the variable to request from Python, and SHELL_VARIABLE is the name of the shell variable into which the results should be deposited. If SHELL_VARIABLE is not specified, the macro wil prefix PY_ to the PYTHON_VARIABLE, e.g., LIBS -> PY_LIBS. SHELL_VARIABLE is AC_SUBST'd. No action is taken if an error occurs. Note if $PYTHON is not set, AC_CHECK_PROG(PYTHON, python, python) will be run. Example: AX_PYTHON_CONFIG_VAR(LINKFORSHARED, PY_LFS) AX_PYTHON_CONFIG_H: Using the Python module distutils.sysconfig[1], put the full pathname of the config.h file used to compile Python into the shell variable PY_CONFIG_H. PY_CONFIG_H is AC_SUBST'd. Note if $PYTHON is not set, AC_CHECK_PROG(PYTHON, python, python) will be run. AX_PYTHON_MAKEFILE: Using the Python module distutils.sysconfig[1], put the full pathname of the Makefile file used to compile Python into the shell variable PY_MAKEFILE. PY_MAKEFILE is AC_SUBST'd. Note if $PYTHON is not set, AC_CHECK_PROG(PYTHON, python, python) will be run. [1] http://www.python.org/doc/current/dist/module-distutils.sysconfig.html Source Code *********** Download the latest version of 'ax_python_config_var.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_python_config_var.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_python_config_var.m4). License ******* Copyright (C) 2008 Dustin J. Mitchell Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_python_devel, Next: ax_python_embed, Prev: ax_python_config_var, Up: The Macros ax_python_devel =============== Synopsis ******** AX_PYTHON_DEVEL([version]) Description *********** Note: Defines as a precious variable "PYTHON_VERSION". Don't override it in your configure.ac. This macro checks for Python and tries to get the include path to 'Python.h'. It provides the $(PYTHON_CPPFLAGS) and $(PYTHON_LIBS) output variables. It also exports $(PYTHON_EXTRA_LIBS) and $(PYTHON_EXTRA_LDFLAGS) for embedding Python in your code. You can search for some particular version of Python by passing a parameter to this macro, for example ">= '2.3.1'", or "== '2.4'". Please note that you *have* to pass also an operator along with the version to match, and pay special attention to the single quotes surrounding the version number. Don't use "PYTHON_VERSION" for this: that environment variable is declared as precious and thus reserved for the end-user. This macro should work for all versions of Python >= 2.1.0. As an end user, you can disable the check for the python version by setting the PYTHON_NOVERSIONCHECK environment variable to something else than the empty string. If you need to use this macro for an older Python version, please contact the authors. We're always open for feedback. Source Code *********** Download the latest version of 'ax_python_devel.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_python_devel.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_python_devel.m4). License ******* Copyright (C) 2009 Sebastian Huber Copyright (C) 2009 Alan W. Irwin Copyright (C) 2009 Rafael Laboissiere Copyright (C) 2009 Andrew Collier Copyright (C) 2009 Matteo Settenvini Copyright (C) 2009 Horst Knorr Copyright (C) 2013 Daniel Mullner This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_python_embed, Next: ax_python_module, Prev: ax_python_devel, Up: The Macros ax_python_embed =============== Synopsis ******** AX_PYTHON_DEFAULT AX_PYTHON_ENABLE AX_PYTHON_WITH AX_PYTHON_PATH AX_PYTHON_VERSION_ENSURE( [2.2] ) AX_PYTHON_CSPEC AX_PYTHON_LSPEC Description *********** This file provides autoconf support for those applications that want to embed python. It supports all pythons >= 2.2 which is the first official release containing distutils. Version 2.2 of python was released December 21, 2001. Since it actually executes the python, cross platform configuration will probably not work. Also, most of the platforms supported are consistent until you look into Mac OS X. The python included with it is installed as a framework which is a very different environment to set up the normal tools such as gcc and libtool to deal with. Therefore, once we establish which python that we are going to use, we use its distutils to actually compile and link our modules or applications. At this time, it does NOT support linking with Python statically. It does support dynamic linking. This set of macros help define $PYTHON, $PYTHON_USE, $PYTHON_CSPEC and $PYTHON_LSPEC. $PYTHON defines the full executable path for the Python being linked to and is used within these macros to determine if that has been specified or found. These macros do execute this python version so it must be present on the system at configure time. $PYTHON_USE is an automake variable that defines whether Python support should be included or not in your application. $PYTHON_CSPEC is a variable that supplies additional CFLAGS for the compilation of the application/shared library. $PYTHON_LSPEC is a variable that supplies additional LDFLAGS for linking the application/shared library. The following is an example of how to set up for python usage within your application in your configure.in: AX_PYTHON_DEFAULT( ) AX_PYTHON_ENABLE( ) # Optional AX_PYTHON_WITH( ) # Optional AX_PYTHON_PATH( ) # or AX_PYTHON_INSIST( ) # if $PYTHON is not defined, then the following do nothing. AX_PYTHON_VERSION_ENSURE( [2.2] ) AX_PYTHON_CSPEC AX_PYTHON_LSPEC The AX_PYTHON_DEFAULT sets the $PYTHON_USE to false. Thereby, excluding it if it was optional. The AX_PYTHON_ENABLE looks for the optional configure parameters of -enable-python/-disable-python and establishes the $PYTHON and $PYTHON_USE variables accordingly. The AX_PYTHON_WITH looks for the optional configure parameters of -with-python/-without-python and establishes the $PYTHON and $PYTHON_USE variables accordingly. The AX_PYTHON_PATH looks for python assuming that none has been previously found or defined and issues an error if it does not find it. If it does find it, it establishes the $PYTHON and $PYTHON_USE variables accordingly. AX_PYTHON_INSIST could be used here instead if you want to insist that Python support be included using the -enable-python or -with-python checks previously done. The AX_PYTHON_VERSION_ENSURE issues an error if the Python previously found is not of version 2.2 or greater. Once that these macros have be run, we can use PYTHON_USE within the makefile.am file to conditionally add the Python support such as: Makefile.am example showing optional inclusion of directories: if PYTHON_USE plugins = plugins src = src else plugins = src = endif SUBDIRS = . $(plugins) $(src) Makefile.am example showing optional shared library build: if PYTHON_USE lib_LTLIBRARIES = libElemList.la libElemList_la_SOURCES = libElemList.c libElemList_la_CFLAGS = @PYTHON_CSPEC@ libElemList_la_LDFLAGS = @PYTHON_LSPEC@ endif Makefile.am example showing optional program build: if PYTHON_USE bin_PROGRAMS = runFunc runFunc_SOURCES = runFunc.c runFunc_CFLAGS = @PYTHON_CSPEC@ runFunc_LDFLAGS = @PYTHON_LSPEC@ endif The above compiles the modules only if PYTHON_USE was specified as true. Also, the else portion of the if was optional. Source Code *********** Download the latest version of 'ax_python_embed.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_python_embed.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_python_embed.m4). License ******* Copyright (C) 2008 Robert White Copyright (C) 2008 Dustin J. Mitchell Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_python_module, Next: ax_python_module_version, Prev: ax_python_embed, Up: The Macros ax_python_module ================ Synopsis ******** AX_PYTHON_MODULE(modname[, fatal, python]) Description *********** Checks for Python module. If fatal is non-empty then absence of a module will trigger an error. The third parameter can either be "python" for Python 2 or "python3" for Python 3; defaults to Python 3. Source Code *********** Download the latest version of 'ax_python_module.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_python_module.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_python_module.m4). License ******* Copyright (C) 2008 Andrew Collier Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_python_module_version, Next: ax_r_package, Prev: ax_python_module, Up: The Macros ax_python_module_version ======================== Synopsis ******** AX_PYTHON_MODULE_VERSION(modname, min_version[, python]) Description *********** Checks for Python module with at least the given version. Triggers an error if module is absent or present but at a lower version. The third parameter can either be "python" for Python 2 or "python3" for Python 3; defaults to Python 3. Source Code *********** Download the latest version of 'ax_python_module_version.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_python_module_version.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_python_module_version.m4). License ******* Copyright (C) 2015 Endless Mobile, Inc.; contributed by Philip Chimento and Kurt von Laven Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_r_package, Next: ax_recursive_eval, Prev: ax_python_module_version, Up: The Macros ax_r_package ============ Synopsis ******** AX_R_PACKAGE(pkgname[, version, R]) Description *********** Checks for an R package. Optionally checks for the version when a second argument is given. A different R can be used by providing a third argument. Source Code *********** Download the latest version of 'ax_r_package.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_r_package.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_r_package.m4). License ******* Copyright (C) 2017 Ricardo Wurmus Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_recursive_eval, Next: ax_require_defined, Prev: ax_r_package, Up: The Macros ax_recursive_eval ================= Synopsis ******** AX_RECURSIVE_EVAL(VALUE, RESULT) Description *********** Interpolate the VALUE in loop until it doesn't change, and set the result to $RESULT. WARNING: It's easy to get an infinite loop with some unsane input. Source Code *********** Download the latest version of 'ax_recursive_eval.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_recursive_eval.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_recursive_eval.m4). License ******* Copyright (C) 2008 Alexandre Duret-Lutz This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_require_defined, Next: ax_require_one_func, Prev: ax_recursive_eval, Up: The Macros ax_require_defined ================== Synopsis ******** AX_REQUIRE_DEFINED(MACRO) Description *********** AX_REQUIRE_DEFINED is a simple helper for making sure other macros have been defined and thus are available for use. This avoids random issues where a macro isn't expanded. Instead the configure script emits a non-fatal: ./configure: line 1673: AX_CFLAGS_WARN_ALL: command not found It's like AC_REQUIRE except it doesn't expand the required macro. Here's an example: AX_REQUIRE_DEFINED([AX_CHECK_LINK_FLAG]) Source Code *********** Download the latest version of 'ax_require_defined.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_require_defined.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_require_defined.m4). License ******* Copyright (C) 2014 Mike Frysinger Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_require_one_func, Next: ax_restore_flags, Prev: ax_require_defined, Up: The Macros ax_require_one_func =================== Synopsis ******** AX_REQUIRE_ONE_FUNC (FUNCTION..., [ACTION-IF-ANY-FOUND], [ACTION-IF-NONE-FOUND]) Description *********** AX_REQUIRE_ONE_FUNC is a simple wrapper for AC_CHECK_FUNCS. It calls AC_CHECK_FUNCS on the list of functions named in the first argument, then invokes ACTION-IF-ANY-FOUND if at least one of the functions exists or ACTION-IF-NONE-FOUND if none of the functions exist. Here's an example: AX_REQUIRE_ONE_FUNC([posix_memalign memalign valloc], , [AC_MSG_ERROR([unable to allocate page-aligned memory])]) Source Code *********** Download the latest version of 'ax_require_one_func.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_require_one_func.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_require_one_func.m4). License ******* Copyright (C) 2008 Scott Pakin Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_restore_flags, Next: ax_restore_flags_with_prefix, Prev: ax_require_one_func, Up: The Macros ax_restore_flags ================ Synopsis ******** AX_RESTORE_FLAGS([namespace]) Description *********** Restore common compilation flags from temporary variables. Compilation flags includes: CPPFLAGS, CFLAGS, CXXFLAGS, LDFLAGS, LIBS, OBJCFLAGS. By default these flags are restored to a global (empty) namespace, but user could restore from specific NAMESPACE by using AX_RESTORE_FLAGS(NAMESPACE) macro. Typical usage is like: AX_SAVE_FLAGS(mypackage) CPPFLAGS="-Imypackagespath ${CPPFLAGS}" dnl ... do some detection ... AX_RESTORE_FLAGS(mypackage) Source Code *********** Download the latest version of 'ax_restore_flags.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_restore_flags.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_restore_flags.m4). License ******* Copyright (C) 2009 Filippo Giunchedi Copyright (C) 2011 The Board of Trustees of the Leland Stanford Junior University Copyright (C) 2011 Russ Allbery Copyright (C) 2013 Bastien ROUCARIES Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_restore_flags_with_prefix, Next: ax_rpm_init, Prev: ax_restore_flags, Up: The Macros ax_restore_flags_with_prefix ============================ Synopsis ******** AX_RESTORE_FLAGS_WITH_PREFIX(PREFIX, LIST-OF-FLAGS) Description *********** Restore the flags saved by AX_SAVE_FLAGS_WITH_PREFIX. Expansion example: AX_RESTORE_FLAGS_WITH_PREFIX([GL], [[CFLAGS],[LIBS]]) expands to CFLAGS="$gl_saved_flag_cflags" LIBS="$gl_saved_flag_libs" One common use case is to define a package specific wrapper macro around this one, and also restore other variables if needed. For example: AC_DEFUN([_AX_CHECK_GL_RESTORE_FLAGS], [ AX_RESTORE_FLAGS_WITH_PREFIX([GL],[$1]) AC_LANG_POP([C]) ]) # Restores CFLAGS, LIBS and language state _AX_CHECK_GL_RESTORE_FLAGS([[CFLAGS],[LIBS]]) Source Code *********** Download the latest version of 'ax_restore_flags_with_prefix.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_restore_flags_with_prefix.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_restore_flags_with_prefix.m4). License ******* Copyright (C) 2016 Felix Chern This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_rpm_init, Next: ax_ruby_devel, Prev: ax_restore_flags_with_prefix, Up: The Macros ax_rpm_init =========== Synopsis ******** AX_RPM_INIT Description *********** Setup variables for creation of rpms. It will define several variables useful for creating rpms on a system where rpms are supported. Currently, I requires changes to Makefile.am to function properly (see the example below). Also note that I do not use any non-UNIX OSs (and for the most part, I only use RedHat), so this is probably generally not useful for other systems. Required setup: In configure.in: dnl For my rpm.m4 macros RPM_RELEASE=1 AC_SUBST(RPM_RELEASE) AX_RPM_INIT dnl Enable or disable the rpm making rules in Makefile.am AM_CONDITIONAL(MAKE_RPMS, test x$make_rpms = xtrue) Furthermore, the %GNUconfigure rpm macro has a problem in that it does not define CXXFLAGS for the target system correctly, so for compiling C++ code, add the following line _before_ calling AC_PROG_CXX: dnl This is a little hack to make this work with rpm better (see mysql++.spec.in) test -z "$CXXFLAGS" && CXXFLAGS="${CFLAGS}" Changes to Makefile.am (I am trying to get rid of this step; suggestions invited): if MAKE_RPMS rpm: @RPM_TARGET@ .PHONY: rpm $(RPM_TARGET): $(DISTFILES) ${MAKE} dist -mkdir -p $(RPM_DIR)/SRPMS -mkdir -p `dirname $(RPM_TARGET)` $(RPM_PROG) $(RPM_ARGS) $(RPM_TARBALL) @echo Congratulations, $(RPM_TARGET) "(and friends)" should now exist. else endif Also, it works best with a XXXX.spec.in file like the following (this is way down on the wishlist, but a program to generate the skeleton spec.in much like autoscan would just kick butt!): ---------- 8< ---------- # -*- Mode:rpm-spec -*- # mysql++.spec.in Summary: Your package description goes here %define rel @RPM_RELEASE@ %define version @VERSION@ %define pkgname @PACKAGE@ %define prefix /usr %define lt_release @LT_RELEASE@ %define lt_version @LT_CURRENT@.@LT_REVISION@.@LT_AGE@ # This is a hack until I can figure out how to better handle replacing # autoconf macros... (gotta love autoconf...) %define __aclocal aclocal || aclocal -I ./macros %define configure_args @RPM_CONFIGURE_ARGS@ Name: %{pkgname} Version: %{version} Release: %{rel} Copyright: LGPL Group: # your group name goes here Source: %{pkgname}-%{version}.tar.gz Requires: # additional requirements Buildroot: /tmp/%{pkgname}-root URL: http://yoururl.go.here Prefix: %{prefix} BuildArchitectures: # Target platforms, i.e., i586 Packager: Your Name %description Your package description %changelog %prep %setup #%patch %build %GNUconfigure %{configure_args} # This is why we copy the CFLAGS to the CXXFLAGS in configure.in # CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" ./configure %{_target_platform} --prefix=%{prefix} make %install # To make things work with BUILDROOT if [ "$RPM_BUILD_ROOT" != "/tmp/%{pkgname}-root" ] then echo echo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ echo @ @ echo @ RPM_BUILD_ROOT is not what I expected. Please clean it yourself. @ echo @ @ echo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ echo else echo Cleaning RPM_BUILD_ROOT: "$RPM_BUILD_ROOT" rm -rf "$RPM_BUILD_ROOT" fi make DESTDIR="$RPM_BUILD_ROOT" install %clean # Call me paranoid, but I do not want to be responsible for nuking # someone's harddrive! if [ "$RPM_BUILD_ROOT" != "/tmp/%{pkgname}-root" ] then echo echo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ echo @ @ echo @ RPM_BUILD_ROOT is not what I expected. Please clean it yourself. @ echo @ @ echo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ echo else echo Cleaning RPM_BUILD_ROOT: "$RPM_BUILD_ROOT" rm -rf "$RPM_BUILD_ROOT" fi %files %defattr(-, root, root) # Your application file list goes here # %{prefix}/lib/lib*.so* %doc COPYRIGHT ChangeLog README AUTHORS NEWS %doc doc/* # If you install a library %post -p /sbin/ldconfig # If you install a library %postun -p /sbin/ldconfig %package devel Summary: Development files for %{pkgname} Group: Applications/Databases %description devel Development files for %{pkgname}. %files devel %defattr(-, root, root) # Your development files go here # Programmers documentation goes here %doc doc # end of file ---------- >8 ---------- Source Code *********** Download the latest version of 'ax_rpm_init.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_rpm_init.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_rpm_init.m4). License ******* Copyright (C) 2008 Dale K. Hawkins Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_ruby_devel, Next: ax_ruby_ext, Prev: ax_rpm_init, Up: The Macros ax_ruby_devel ============= Synopsis ******** AX_RUBY_DEVEL([version]) Description *********** This macro checks for Ruby and tries to get the include path to 'ruby.h'. It provides the $(RUBY_CPPFLAGS) and $(RUBY_LDFLAGS) output variables. It also exports $(RUBY_EXTRA_LIBS) for embedding Ruby in your code. You can search for some particular version of Ruby by passing a parameter to this macro, for example "2.2.1". Source Code *********** Download the latest version of 'ax_ruby_devel.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_ruby_devel.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_ruby_devel.m4). License ******* Copyright (C) 2008 Rafal Rzepecki Copyright (C) 2008 Sebastian Huber Copyright (C) 2008 Alan W. Irwin Copyright (C) 2008 Rafael Laboissiere Copyright (C) 2008 Andrew Collier Copyright (C) 2008 Matteo Settenvini Copyright (C) 2008 Horst Knorr This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_ruby_ext, Next: ax_save_flags, Prev: ax_ruby_devel, Up: The Macros ax_ruby_ext =========== Synopsis ******** AX_RUBY_EXT Description *********** Fetches the linker flags and C compiler flags for compiling and linking Ruby binary extensions. The macro substitutes RUBY_VERSION, RUBY_EXT_INC, RUBY_EXT_LIB, RUBY_EXT_CPPFLAGS, RUBY_EXT_LDFLAGS and RUBY_EXT_DLEXT variables if Ruby executable has been found. It also checks the same variables before trying to retrieve them from the Ruby configuration. RUBY_VERSION: version of the Ruby interpreter RUBY_EXT_INC: Ruby include directory RUBY_EXT_LIB: Ruby extensions destination directory RUBY_EXT_CPPFLAGS: C preprocessor flags to compile extensions RUBY_EXT_LDFLAGS: linker flags to build extensions RUBY_EXT_DLEXT: extensions suffix for ruby modules (e.g. "so") Examples: AX_RUBY_EXT if test x"$RUBY" = x; then AC_ERROR(["cannot find Ruby"]) fi Source Code *********** Download the latest version of 'ax_ruby_ext.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_ruby_ext.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_ruby_ext.m4). License ******* Copyright (C) 2011 Stanislav Sedov Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.  File: autoconf-archive.info, Node: ax_save_flags, Next: ax_save_flags_with_prefix, Prev: ax_ruby_ext, Up: The Macros ax_save_flags ============= Synopsis ******** AX_SAVE_FLAGS([NAMESPACE]) Description *********** Save common compilation flags into temporary variables. Compilation flags includes: CPPFLAGS, CFLAGS, CXXFLAGS, LDFLAGS, LIBS, OBJCFLAGS. By default these flags are saved to a global (empty) namespace, but user could specify a specific NAMESPACE to AX_SAVE_FLAGS macro and latter restore it by using AX_RESTORE_FLAGS(NAMESPACE). AX_SAVE_FLAGS(mypackage) CPPFLAGS="-Imypackagespath ${CPPFLAGS}" dnl .. do some detection ... AX_RESTORE_FLAGS(mypackage) Source Code *********** Download the latest version of 'ax_save_flags.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_save_flags.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_save_flags.m4). License ******* Copyright (C) 2009 Filippo Giunchedi Copyright (C) 2011 The Board of Trustees of the Leland Stanford Junior University Copyright (C) 2011 Russ Allbery Copyright (C) 2013 Bastien ROUCARIES Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_save_flags_with_prefix, Next: ax_set_default_paths_system, Prev: ax_save_flags, Up: The Macros ax_save_flags_with_prefix ========================= Synopsis ******** AX_SAVE_FLAGS_WITH_PREFIX(PREFIX, LIST-OF-FLAGS) Description *********** For each flag in LIST-OF-FLAGS, it expands to lower-cased shell variable with the prefix holding the flag original value. The saved variables can be restored by AX_RESTORE_FLAGS_WITH_PREFIX As an example: AX_SAVE_FLAGS_WITH_PREFIX([GL], [[CFLAGS],[LIBS]]) expands to gl_saved_flag_cflags="$CFLAGS" gl_saved_flag_libs="$LIBS" CFLAGS="$GL_CFLAGS $CFLAGS" LIBS="$GL_LIBS $LIBS" One common use case is to define a package specific wrapper macro around this one, and also setup other variables if needed. For example: AC_DEFUN([_AX_CHECK_GL_SAVE_FLAGS], [ AX_SAVE_FLAGS_WITH_PREFIX([GL],[$1]) AC_LANG_PUSH([C]) ]) # pushes GL_CFLAGS and GL_LIBS to CFLAGS and LIBS # also set the current language to test to C _AX_CHECK_GL_SAVE_FLAGS([[CFLAGS],[LIBS]]) Source Code *********** Download the latest version of 'ax_save_flags_with_prefix.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_save_flags_with_prefix.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_save_flags_with_prefix.m4). License ******* Copyright (C) 2016 Felix Chern This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_set_default_paths_system, Next: ax_short_sleep, Prev: ax_save_flags_with_prefix, Up: The Macros ax_set_default_paths_system =========================== Synopsis ******** AX_SET_DEFAULT_PATHS_SYSTEM Description *********** the most interesting changes go about windows-targets - where the default_prefix is set to /programs, and quite some directories are aliased: sbindir := libdir := bindir and the docprefix-defaults are also a bit different, even on FHS2-compliant systems where the mandir is going to $prefix/man only if prefix=/usr, otherwise they shall go to $datadir/man. We use an extra docprefix to express it which is either defined as being prefix or datadir. not SUBSTed here. Source Code *********** Download the latest version of 'ax_set_default_paths_system.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_set_default_paths_system.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_set_default_paths_system.m4). License ******* Copyright (C) 2008 Guido U. Draheim Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_short_sleep, Next: ax_silent_mode, Prev: ax_set_default_paths_system, Up: The Macros ax_short_sleep ============== Synopsis ******** AX_SHORT_SLEEP Description *********** This macro searches for a "sleep" function that has 1/1000 of a second accuracy. On some systems, this is known as nap() and on others usleep() / 1000. There are probably other functions like this defined in other system libraries, but we don't know how to search for them yet. Contributions joyously accepted. :) Source Code *********** Download the latest version of 'ax_short_sleep.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_short_sleep.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_short_sleep.m4). License ******* Copyright (C) 2008 Warren Young Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_silent_mode, Next: ax_sip_devel, Prev: ax_short_sleep, Up: The Macros ax_silent_mode ============== Synopsis ******** AX_SILENT_MODE(on|off) Description *********** Temporarily disable console output when running Autoconf macros. For example: AX_SILENT_MODE(on) dnl disable console output AC_PROG_CXX AX_SILENT_MODE(off) dnl enable console output AC_PROG_RANLIB Source Code *********** Download the latest version of 'ax_silent_mode.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_silent_mode.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_silent_mode.m4). License ******* Copyright (C) 2008 Peter Simons Copyright (C) 2008 Paolo Bonzini Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_sip_devel, Next: ax_spec_file, Prev: ax_silent_mode, Up: The Macros ax_sip_devel ============ Synopsis ******** AX_SIP_DEVEL([]) Description *********** Searches for the sip executable and the sip include path. The sip include path consists of two components, one which contains the file qt/qtmod.sip and the other one the path to sip.h, which should be found in the include/pythonX.Y directory. The macro bails out if the executable or the file cannot be located. Otherwise it defines: SIP the path to the sip executable SIP_CPPFLAGS include path: -I -I Example: AX_SIP_DEVEL AX_SIP_DEVEL([4.1]) Requires: perl (for version string comparison) FIXME: Use AX_COMPARE_VERSION instead. Source Code *********** Download the latest version of 'ax_sip_devel.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_sip_devel.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_sip_devel.m4). License ******* Copyright (C) 2008 Uwe Mayer Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_spec_file, Next: ax_spec_package_version, Prev: ax_sip_devel, Up: The Macros ax_spec_file ============ Synopsis ******** AX_SPEC_FILE [(rpmspecfile [,subdirpath])] Description *********** set the specfile - if no argument has been given then check whether the ac_unique_file looks like a .spec file and use it. This macro is ac_REQUIRED by many AX_SPEC_ routines. the AX_SPEC_EXTRACT macro is a helper used by many AX_SPEC_ routines and therefore placed here to be automatically included in the macro set of (older) aclocal/acinclude. AX_SPEC_EXTRACT(shellvar [,specvar [,defaultvalue]]) Source Code *********** Download the latest version of 'ax_spec_file.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_spec_file.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_spec_file.m4). License ******* Copyright (C) 2008 Guido U. Draheim Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_spec_package_version, Next: ax_split_version, Prev: ax_spec_file, Up: The Macros ax_spec_package_version ======================= Synopsis ******** AX_SPEC_PACKAGE_AND_VERSION ([specfile]) AX_SPEC_PACKAGE_NAME ([shellvar],[defaultvalue]) AX_SPEC_PACKAGE_VERSION ([shellvar],[defaultvalue]) AX_SPEC_PACKAGE_SUMMARY ([shellvar],[defaultvalue]) AX_SPEC_PACKAGE_LICENSE ([shellvar],[defaultvalue]) AX_SPEC_PACKAGE_CATEGORY ([shellvar],[defaultvalue]) AX_SPEC_PACKAGE_ICON ([shellvar],[defaultvalue]) AX_SPEC_DEFAULTS([specfile]) Description *********** set PACKAGE from the given specfile - default to basename of the rpmspecfile if no "name:" could be found in the spec file. set VERSION from the given specfile - default to a date-derived value if no "version:" could be found in the spec file. this macro builds on top of AX_SPEC_FILE / AX_SPEC_EXTRACT more specific: if not "name:" or "%define name" was found in the myproject.spec file then the PACKAGE var is set to the basename "myproject". When no spec file was present then it will usually default to "TODO". The version spec looks for "version:" or "%define version" in the spec file. When no such value was seen or no spec file had been present then the value is set to 'date +0.%y.%W%w'. the version value itself is sanitized somewhat with making it to always carry at least three digits (1.2.3) and cleansing superfluous "0" chars around from generating numbers elsewhere. additional macros are provided that extract a specific value from the spec file, among these: set PACKAGE_SUMMARY from the given specfile - default to package and try to detect a type suffix if "summary:" was not in the spec file set PACKAGE_LICENSE from the given specfile - if no "license:" tag was given in the spec file then various COPYING files are grepped to have a guess and the final fallback will be GNU GPL (or GNU LGPL). set PACKAGE_ICON from the given specfile - if no "icon:" tag was given in the spec file then we default to $PACKAGE-icon.png the final AX_SPEC_INIT(specfile) will initialize all variables to its defaults according to the spec file given. Source Code *********** Download the latest version of 'ax_spec_package_version.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_spec_package_version.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_spec_package_version.m4). License ******* Copyright (C) 2008 Guido U. Draheim Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_split_version, Next: ax_string_strcasecmp, Prev: ax_spec_package_version, Up: The Macros ax_split_version ================ Synopsis ******** AX_SPLIT_VERSION Description *********** Splits a version number in the format MAJOR.MINOR.POINT into its separate components. Sets the variables. Source Code *********** Download the latest version of 'ax_split_version.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_split_version.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_split_version.m4). License ******* Copyright (C) 2008 Tom Howard Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_string_strcasecmp, Next: ax_strings_strcasecmp, Prev: ax_split_version, Up: The Macros ax_string_strcasecmp ==================== Synopsis ******** AX_STRING_STRCASECMP Description *********** This macro tries to find strcasecmp() in string.h. Use this macro in conjunction with AX_STRINGS_STRCASECMP in your configure.in like so: AX_STRING_STRCASECMP if test x"$ac_cv_string_strcasecmp" = "xno" ; then AX_STRINGS_STRCASECMP fi This will cause either HAVE_STRING_STRCASECMP or HAVE_STRINGS_STRCASECMP to be defined in config.h, which will tell your code what header to include to get strcasecmp()'s prototype. Source Code *********** Download the latest version of 'ax_string_strcasecmp.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_string_strcasecmp.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_string_strcasecmp.m4). License ******* Copyright (C) 2008 Warren Young Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_strings_strcasecmp, Next: ax_struct_semun, Prev: ax_string_strcasecmp, Up: The Macros ax_strings_strcasecmp ===================== Synopsis ******** AX_STRINGS_STRCASECMP Description *********** This macro tries to find strcasecmp() in strings.h. See the AX_STRING_STRCASECMP macro's commentary for usage details. Source Code *********** Download the latest version of 'ax_strings_strcasecmp.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_strings_strcasecmp.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_strings_strcasecmp.m4). License ******* Copyright (C) 2008 Warren Young Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_struct_semun, Next: ax_subdir_files, Prev: ax_strings_strcasecmp, Up: The Macros ax_struct_semun =============== Synopsis ******** AX_STRUCT_SEMUN Description *********** This macro checks to see if sys/sem.h defines struct semun. Some systems do, some systems don't. Your code must be able to deal with this possibility; if HAVE_STRUCT_SEMUM isn't defined for a given system, you have to define this structure before you can call functions like semctl(). You should call AX_SYSV_IPC before this macro, to separate the check for System V IPC headers from the check for struct semun. Source Code *********** Download the latest version of 'ax_struct_semun.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_struct_semun.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_struct_semun.m4). License ******* Copyright (C) 2008 Warren Young Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_subdir_files, Next: ax_subdirs_configure, Prev: ax_struct_semun, Up: The Macros ax_subdir_files =============== Synopsis ******** AX_SUBDIR_FILES [(SUBDIRS [, CASEPATTERN])] Description *********** Look into subdirs and copy the (real) files that match pattern into the local directory. Preferably we use a symbolic link of course. existing local files are not overwritten. The default casepattern is "*.?|*.cc|*.cpp", the default subdir-list contains all subdirs available. Source Code *********** Download the latest version of 'ax_subdir_files.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_subdir_files.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_subdir_files.m4). License ******* Copyright (C) 2008 Guido U. Draheim Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_subdirs_configure, Next: ax_subst_with, Prev: ax_subdir_files, Up: The Macros ax_subdirs_configure ==================== Synopsis ******** AX_SUBDIRS_CONFIGURE( [subdirs], [mandatory arguments], [possibly merged arguments], [replacement arguments], [forbidden arguments]) Description *********** AX_SUBDIRS_CONFIGURE attempts to be the equivalent of AC_CONFIG_SUBDIRS with customizable options for configure scripts. Run the configure script for each directory from the comma-separated m4 list 'subdirs'. This macro can be used multiple times. All arguments of this macro must be comma-separated lists. All command line arguments from the parent configure script will be given to the subdirectory configure script after the following modifications (in that order): 1. The arguments from the 'mandatory arguments' list shall always be appended to the argument list. 2. The arguments from the 'possibly merged arguments' list shall be added if not present in the arguments of the parent configure script or merged with the existing argument otherwise. 3. The arguments from the 'replacement arguments' list shall be added if not present in the arguments of the parent configure script or replace the existing argument otherwise. 4. The arguments from the 'forbidden arguments' list shall always be removed from the argument list. The lists 'mandatory arguments' and 'forbidden arguments' can hold any kind of argument. The 'possibly merged arguments' and 'replacement arguments' expect their arguments to be of the form -option-name=value. This macro aims to remain as close as possible to the AC_CONFIG_SUBDIRS macro. It corrects the paths for '-srcdir' and adds '-disable-option-checking' and '-silent' if necessary. However, it does not change the '-cache-file' argument: typically, configure scripts run with different arguments will not be able to share the same cache. If you wish to share a single cache, you should give an absolute path to '-cache-file'. This macro also sets the output variable subdirs_extra to the list of directories recorded with AX_SUBDIRS_CONFIGURE. This variable can be used in Makefile rules or substituted in configured files. This macro shall do nothing more than managing the arguments of the configure script. Just like when using AC_CONFIG_SUBDIRS, it is up to the user to check any requirements or define and substitute any required variable for the remainder of the project. Configure scripts recorded with AX_SUBDIRS_CONFIGURE may be executed before configure scripts recorded with AC_CONFIG_SUBDIRS. Without additional arguments, the behaviour of AX_SUBDIRS_CONFIGURE should be identical to the behaviour of AC_CONFIG_SUBDIRS, apart from the contents of the variables subdirs and subdirs_extra (except that AX_SUBDIRS_CONFIGURE expects a comma-separated m4 list): AC_CONFIG_SUBDIRS([something]) AX_SUBDIRS_CONFIGURE([something]) This macro may be called multiple times. Usage example: Let us assume our project has 4 dependencies, namely A, B, C and D. Here are some characteristics of our project and its dependencies: - A does not require any special option. - we want to build B with an optional feature which can be enabled with its configure script's option '-enable-special-feature'. - B's configure script is strange and has an option '-with-B=build'. After close inspection of its documentation, we don't want B to receive this option. - C and D both need B. - Just like our project, C and D can build B themselves with the option '-with-B=build'. - We want C and D to use the B we build instead of building it themselves. Our top-level configure script will be called as follows: $ --with-A=build --with-B=build --with-C=build \ --with-D=build --some-option Thus we have to make sure that: - neither B, C or D receive the option '-with-B=build' - C and D know where to find the headers and libraries of B. Under those conditions, we can use the AC_CONFIG_SUBDIRS macro for A, but need to use AX_SUBDIRS_CONFIGURE for B, C and D: - B must receive '-enable-special-feature' but cannot receive '-with-B=build' - C and D cannot receive '-with-B=build' (or else it would be built thrice) and need to be told where to find B (since we are building it, it would probably not be available in standard paths). Here is a configure.ac snippet that solves our problem: AC_CONFIG_SUBDIRS([dependencies/A]) AX_SUBDIRS_CONFIGURE( [dependencies/B], [--enable-special-feature], [], [], [--with-B=build]) AX_SUBDIRS_CONFIGURE( [[dependencies/C],[dependencies/D]], [], [[CPPFLAGS=-I${ac_top_srcdir}/dependencies/B -I${ac_top_builddir}/dependencies/B], [LDFLAGS=-L${ac_abs_top_builddir}/dependencies/B/.libs]], [--with-B=system], []) If using automake, the following can be added to the Makefile.am (we use both $(subdirs) and $(subdirs_extra) since our example above used both AC_CONFIG_SUBDIRS and AX_SUBDIRS_CONFIGURE): SUBDIRS = $(subdirs) $(subdirs_extra) Source Code *********** Download the latest version of 'ax_subdirs_configure.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_subdirs_configure.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_subdirs_configure.m4). License ******* Copyright (C) 2017 Harenome Ranaivoarivony-Razanajato This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. Under Section 7 of GPL version 3, you are granted additional permissions described in the Autoconf Configure Script Exception, version 3.0, as published by the Free Software Foundation. You should have received a copy of the GNU General Public License along with this program. If not, see .  File: autoconf-archive.info, Node: ax_subst_with, Next: ax_swig_enable_cxx, Prev: ax_subdirs_configure, Up: The Macros ax_subst_with ============= Synopsis ******** AX_SUBST_WITH([varname]) Description *********** a very simple macro but also very helpful - the varname is usually the one from an AC_ARG_ENABLE or AC_ARG_WITH option. it is transliterated into uppercase and a prefix WITH_ and WITHOUT_ that are both _SUBSTed. Only one of these is set to "#" while the other is empty. In other words a call like AC_WITHNONE(enable-call) will create two SUBST-symbols as WITH_ENABLE_CALL and WITHOUT_ENABLE_CALL. When the varname had been set to something not "no" or "0" or ":" or "false" then it results in WITH_ENABLE_CALL="" ; WITHOUT_ENABLE_CALL="#" which you can use in your Makefile quite easily as if using an AM_CONDITIONAL but which can be also parsed by normal make USE = @WITH_ENABLE_CALL@ -Denabled USE = @WITHOUT_ENABLE_CALL@ -Dnot_enabled Source Code *********** Download the latest version of 'ax_subst_with.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_subst_with.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_subst_with.m4). License ******* Copyright (C) 2008 Guido U. Draheim Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_swig_enable_cxx, Next: ax_swig_multi_module_support, Prev: ax_subst_with, Up: The Macros ax_swig_enable_cxx ================== Synopsis ******** AX_SWIG_ENABLE_CXX Description *********** Enable SWIG C++ support. This affects all invocations of $(SWIG). Source Code *********** Download the latest version of 'ax_swig_enable_cxx.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_swig_enable_cxx.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_swig_enable_cxx.m4). License ******* Copyright (C) 2008 Sebastian Huber Copyright (C) 2008 Alan W. Irwin Copyright (C) 2008 Rafael Laboissiere Copyright (C) 2008 Andrew Collier This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_swig_multi_module_support, Next: ax_swig_python, Prev: ax_swig_enable_cxx, Up: The Macros ax_swig_multi_module_support ============================ Synopsis ******** AX_SWIG_MULTI_MODULE_SUPPORT Description *********** Enable support for multiple modules. This effects all invocations of $(SWIG). You have to link all generated modules against the appropriate SWIG runtime library. If you want to build Python modules for example, use the AX_SWIG_PYTHON macro and link the modules against $(AX_SWIG_PYTHON_LIBS). Source Code *********** Download the latest version of 'ax_swig_multi_module_support.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_swig_multi_module_support.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_swig_multi_module_support.m4). License ******* Copyright (C) 2008 Sebastian Huber Copyright (C) 2008 Alan W. Irwin Copyright (C) 2008 Rafael Laboissiere Copyright (C) 2008 Andrew Collier This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_swig_python, Next: ax_switch_flags, Prev: ax_swig_multi_module_support, Up: The Macros ax_swig_python ============== Synopsis ******** AX_SWIG_PYTHON([use-shadow-classes = {no, yes}]) Description *********** Checks for Python and provides the $(AX_SWIG_PYTHON_CPPFLAGS), and $(AX_SWIG_PYTHON_OPT) output variables. $(AX_SWIG_PYTHON_OPT) contains all necessary SWIG options to generate code for Python. Shadow classes are enabled unless the value of the optional first argument is exactly 'no'. If you need multi module support (provided by the AX_SWIG_MULTI_MODULE_SUPPORT macro) use $(AX_SWIG_PYTHON_LIBS) to link against the appropriate library. It contains the SWIG Python runtime library that is needed by the type check system for example. Source Code *********** Download the latest version of 'ax_swig_python.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_swig_python.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_swig_python.m4). License ******* Copyright (C) 2008 Sebastian Huber Copyright (C) 2008 Alan W. Irwin Copyright (C) 2008 Rafael Laboissiere Copyright (C) 2008 Andrew Collier This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_switch_flags, Next: ax_sys_dev_poll, Prev: ax_swig_python, Up: The Macros ax_switch_flags =============== Synopsis ******** AX_SWITCH_FLAGS(newnamespace,[oldnamespace]) Description *********** Switch common compilation flags from temporary variables between two compilation namespace. Compilation flags includes: CPPFLAGS, CFLAGS, CXXFLAGS, LDFLAGS, LIBS, OBJCFLAGS. By default these flags are restored to a global (empty) namespace, but user could restore from specific NAMESPACE by using AX_RESTORE_FLAGS(NAMESPACE) macro. Typical usage is like: AX_SAVE_FLAGS(beginprogram) CPPFLAGS="-Imypackagespath ${CPPFLAGS}" AX_SWITCH_FLAGS(mypackage,beginprogram) Source Code *********** Download the latest version of 'ax_switch_flags.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_switch_flags.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_switch_flags.m4). License ******* Copyright (C) 2009 Filippo Giunchedi Copyright (C) 2011 The Board of Trustees of the Leland Stanford Junior University Copyright (C) 2011 Russ Allbery Copyright (C) 2013 Bastien ROUCARIES Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_sys_dev_poll, Next: ax_sys_largefile_sensitive, Prev: ax_switch_flags, Up: The Macros ax_sys_dev_poll =============== Synopsis ******** AX_SYS_DEV_POLL([ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) Description *********** This macro tests for the presence of /dev/poll support in the build environment. It checks that the needed structure (dvpoll) is available, with the standard fields. /dev/poll is most often seen under Solaris. Note that it does not attempt to actually open /dev/poll - you should test for errors when you open it and then fall back to poll() if it is unavailable. Source Code *********** Download the latest version of 'ax_sys_dev_poll.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_sys_dev_poll.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_sys_dev_poll.m4). License ******* Copyright (C) 2008 Dave Benson Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_sys_largefile_sensitive, Next: ax_sys_perlsharpbang, Prev: ax_sys_dev_poll, Up: The Macros ax_sys_largefile_sensitive ========================== Synopsis ******** AX_SYS_LARGEFILE_SENSITIVE Description *********** Check whether the current system is sensitive to -Ddefines making off_t having different types/sizes. Automatically define a config.h symbol LARGEFILE_SENSITIVE if that is the case, otherwise leave everything as is. This macro builds on top of AC_SYS_LARGEFILE to detect whether special options are needed to make the code use 64bit off_t - in many setups this will also make the code use 64bit off_t immediately. The common use of a LARGEFILE_SENSITIVE config.h-define is to rename exported functions, usually adding a 64 to the original function name. Such renamings are only needed on systems being both (a) 32bit off_t by default and (b) implementing large.file extensions (as for unix98). a renaming section could look like this: #if defined LARGEFILE_SENSITIVE && _FILE_OFFSET_BITS+0 == 64 #define zzip_open zzip_open64 #define zzip_seek zzip_seek64 #endif for libraries, it is best to take advantage of the prefix-config.h macro, otherwise you want to export a renamed LARGEFILE_SENSITIVE in an installed header file. -> see AX_PREFIX_CONFIG_H Source Code *********** Download the latest version of 'ax_sys_largefile_sensitive.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_sys_largefile_sensitive.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_sys_largefile_sensitive.m4). License ******* Copyright (C) 2008 Guido U. Draheim Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_sys_perlsharpbang, Next: ax_sys_weak_alias, Prev: ax_sys_largefile_sensitive, Up: The Macros ax_sys_perlsharpbang ==================== Synopsis ******** AX_SYS_PERLSHARPBANG Description *********** Determine how the perl interpreter is located by the OS kernel and make substitution variable PERL_SHEBANG available. Does AC_PATH_PROG to find the path to perl. As a side-effect, that sets PERLINTERP and makes it available as a substitution variable. Note: The macro allows for the possibility (expected to be seldom used) of an explicit user override (the "user" being the operator executing the final 'configure' script, in this context) by making the option argument like: --with-perl-shebang='#! /my/funky/perlpath' # OR --with-perl-shebang='/my/funky/perlpath' # we just throw away the #! anyway # bec it must be absent in Makefile Rationale: The are various ways of starting an interpreter on different *nix-like systems. Many use the simple #!/usr/bin/perl but it could be instead #!/usr/local/bin/perl and there is even the possibility that the user wants #!/usr/bin/env perl to find whichever perl comes first in the current $PATH. This is preferred by some of us because we run multiple perl installations on the same box. Adjusting our $PATH then allows us to set precedence over other perls, even whatever the "house" version is. Users on very non-unix systems like MS Windows do not have a kernel that does this kind of thing from the first line of script files, but instead the perl on their machine is started and merely notices whatever comes after the interpreter path on this first line of the script (options like "-w"). Acknowledgement: this macro was in part inspired by Dean Povey's AC_PROG_PERL_VERSION. Source Code *********** Download the latest version of 'ax_sys_perlsharpbang.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_sys_perlsharpbang.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_sys_perlsharpbang.m4). License ******* Copyright (C) 2009 Soren Andersen Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_sys_weak_alias, Next: ax_sysv_ipc, Prev: ax_sys_perlsharpbang, Up: The Macros ax_sys_weak_alias ================= Synopsis ******** AX_SYS_WEAK_ALIAS Description *********** Determines whether weak aliases are supported on the system, and if so, what scheme is used to declare them. Also checks to see if aliases can cross object file boundaries, as some systems don't permit them to. Most systems permit something called a "weak alias" or "weak symbol." These aliases permit a library to provide a stub form of a routine defined in another library, thus allowing the first library to operate even if the other library is not linked. This macro will check for support of weak aliases, figure out what schemes are available, and determine some characteristics of the weak alias support - primarily, whether a weak alias declared in one object file may be referenced from another object file. There are four known schemes of declaring weak symbols; each scheme is checked in turn, and the first one found is preferred. Note that only one of the mentioned preprocessor macros will be defined! 1. Function attributes This scheme was first introduced by the GNU C compiler, and attaches attributes to particular functions. It is among the easiest to use, and so is the first one checked. If this scheme is detected, the preprocessor macro HAVE_SYS_WEAK_ALIAS_ATTRIBUTE will be defined to 1. This scheme is used as in the following code fragment: void __weakf(int c) { /* Function definition... */ } void weakf(int c) __attribute__((weak, alias("__weakf"))); 2. #pragma weak This scheme is in use by many compilers other than the GNU C compiler. It is also particularly easy to use, and fairly portable - well, as portable as these things get. If this scheme is detected first, the preprocessor macro HAVE_SYS_WEAK_ALIAS_PRAGMA will be defined to 1. This scheme is used as in the following code fragment: extern void weakf(int c); #pragma weak weakf = __weakf void __weakf(int c) { /* Function definition... */ } 3. #pragma _HP_SECONDARY_DEF This scheme appears to be in use by the HP compiler. As it is rather specialized, this is one of the last schemes checked. If it is the first one detected, the preprocessor macro HAVE_SYS_WEAK_ALIAS_HPSECONDARY will be defined to 1. This scheme is used as in the following code fragment: extern void weakf(int c); #pragma _HP_SECONDARY_DEF __weakf weakf void __weakf(int c) { /* Function definition... */ } 4. #pragma _CRI duplicate This scheme appears to be in use by the Cray compiler. As it is rather specialized, it too is one of the last schemes checked. If it is the first one detected, the preprocessor macro HAVE_SYS_WEAK_ALIAS_CRIDUPLICATE will be defined to 1. This scheme is used as in the following code fragment: extern void weakf(int c); #pragma _CRI duplicate weakf as __weakf void __weakf(int c) { /* Function definition... */ } In addition to the preprocessor macros listed above, if any scheme is found, the preprocessor macro HAVE_SYS_WEAK_ALIAS will also be defined to 1. Once a weak aliasing scheme has been found, a check will be performed to see if weak aliases are honored across object file boundaries. If they are, the HAVE_SYS_WEAK_ALIAS_CROSSFILE preprocessor macro is defined to 1. This Autoconf macro also makes two substitutions. The first, WEAK_ALIAS, contains the name of the scheme found (one of "attribute", "pragma", "hpsecondary", or "criduplicate"), or "no" if no weak aliasing scheme was found. The second, WEAK_ALIAS_CROSSFILE, is set to "yes" or "no" depending on whether or not weak aliases may cross object file boundaries. Source Code *********** Download the latest version of 'ax_sys_weak_alias.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_sys_weak_alias.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_sys_weak_alias.m4). License ******* Copyright (C) 2008 Kevin L. Mitchell Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_sysv_ipc, Next: ax_tls, Prev: ax_sys_weak_alias, Up: The Macros ax_sysv_ipc =========== Synopsis ******** AX_SYSV_IPC Description *********** This macro checks for the SysV IPC header files. It only checks that you can compile a program with them, not whether the system actually implements working SysV IPC. Source Code *********** Download the latest version of 'ax_sysv_ipc.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_sysv_ipc.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_sysv_ipc.m4). License ******* Copyright (C) 2008 Warren Young Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_tls, Next: ax_trilinos_amesos, Prev: ax_sysv_ipc, Up: The Macros ax_tls ====== Synopsis ******** AX_TLS([action-if-found], [action-if-not-found]) Description *********** Provides a test for the compiler support of thread local storage (TLS) extensions. Defines TLS if it is found. Currently knows about C++11, GCC/ICC, and MSVC. I think SunPro uses the same as GCC, and Borland apparently supports either. Source Code *********** Download the latest version of 'ax_tls.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_tls.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_tls.m4). License ******* Copyright (C) 2008 Alan Woodland Copyright (C) 2010 Diego Elio Petteno' This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_trilinos_amesos, Next: ax_trilinos_base, Prev: ax_tls, Up: The Macros ax_trilinos_amesos ================== Synopsis ******** AX_TRILINOS_AMESOS([, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) Description *********** On success, adds "include Makefile.export.amesos" statements to every Automake file containing @INC_AMINCLUDE@. Requires that Trilinos was configured with the -enable-export-makefiles option. When ACTION-IF-NOT-FOUND is not specified, the default behavior is for configure to fail. Source Code *********** Download the latest version of 'ax_trilinos_amesos.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_trilinos_amesos.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_trilinos_amesos.m4). License ******* Copyright (C) 2009 Rhys Ulerich Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_trilinos_base, Next: ax_trilinos_epetra, Prev: ax_trilinos_amesos, Up: The Macros ax_trilinos_base ================ Synopsis ******** AX_TRILINOS_BASE([, MINIMUM-VERSION [, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]]) Description *********** Test for the Trilinos (http://trilinos.sandia.gov/) libraries. Provides a -with-trilinos=DIR option. Searches -with-trilinos, $TRILINOS_HOME, and the usual places for Trilinos installation headers. Requires that a development branch or released version greater than MINIMUM-VERSION be found. If not specified, the default minimum version is 8.0.0. Supports separately specifying -with-trilinos-include or -with-trilinos-libdir to override default locations underneath either -with-trilinos or $TRILINOS_HOME. On success, adds -Ipath to CPPFLAGS, -Lpath to LDFLAGS, sets the variable TRILINOS_INCLUDE based on the discovered location of Trilinos_version.h, and #defines HAVE_TRILINOS. When ACTION-IF-NOT-FOUND is not specified, the default behavior is for configure to fail. Source Code *********** Download the latest version of 'ax_trilinos_base.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_trilinos_base.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_trilinos_base.m4). License ******* Copyright (C) 2009 Rhys Ulerich Copyright (C) 2009 Thomas Porschberg Copyright (C) 2009 Caolan McNamara Copyright (C) 2009 Alexandre Duret-Lutz Copyright (C) 2009 Matthew Mueller Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_trilinos_epetra, Next: ax_trilinos_epetraext, Prev: ax_trilinos_base, Up: The Macros ax_trilinos_epetra ================== Synopsis ******** AX_TRILINOS_EPETRA([, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) Description *********** On success, adds "include Makefile.export.epetra" statements to every Automake file containing @INC_AMINCLUDE@. Requires that Trilinos was configured with the -enable-export-makefiles option. When ACTION-IF-NOT-FOUND is not specified, the default behavior is for configure to fail. Source Code *********** Download the latest version of 'ax_trilinos_epetra.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_trilinos_epetra.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_trilinos_epetra.m4). License ******* Copyright (C) 2009 Rhys Ulerich Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_trilinos_epetraext, Next: ax_trilinos_epetraext_hdf5, Prev: ax_trilinos_epetra, Up: The Macros ax_trilinos_epetraext ===================== Synopsis ******** AX_TRILINOS_EPETRAEXT([, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) Description *********** On success, adds "include Makefile.export.epetraext" statements to every Automake file containing @INC_AMINCLUDE@. Requires that Trilinos was configured with the -enable-export-makefiles option. When ACTION-IF-NOT-FOUND is not specified, the default behavior is for configure to fail. Source Code *********** Download the latest version of 'ax_trilinos_epetraext.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_trilinos_epetraext.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_trilinos_epetraext.m4). License ******* Copyright (C) 2009 Rhys Ulerich Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_trilinos_epetraext_hdf5, Next: ax_trilinos_rtop, Prev: ax_trilinos_epetraext, Up: The Macros ax_trilinos_epetraext_hdf5 ========================== Synopsis ******** AX_TRILINOS_EPETRAEXT_HDF5([, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) Description *********** Checks if EpetraExt was compiled with HDF5 support (-enable-epetraext-hdf5) enabled. When ACTION-IF-NOT-FOUND is not specified, the default behavior is for configure to fail. Source Code *********** Download the latest version of 'ax_trilinos_epetraext_hdf5.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_trilinos_epetraext_hdf5.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_trilinos_epetraext_hdf5.m4). License ******* Copyright (C) 2009 Rhys Ulerich Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_trilinos_rtop, Next: ax_trilinos_rythmos, Prev: ax_trilinos_epetraext_hdf5, Up: The Macros ax_trilinos_rtop ================ Synopsis ******** AX_TRILINOS_RTOP([, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) Description *********** On success, adds "include Makefile.export.rtop" statements to every Automake file containing @INC_AMINCLUDE@. Requires that Trilinos was configured with the -enable-export-makefiles option. When ACTION-IF-NOT-FOUND is not specified, the default behavior is for configure to fail. Source Code *********** Download the latest version of 'ax_trilinos_rtop.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_trilinos_rtop.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_trilinos_rtop.m4). License ******* Copyright (C) 2009 Rhys Ulerich Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_trilinos_rythmos, Next: ax_trilinos_teuchos, Prev: ax_trilinos_rtop, Up: The Macros ax_trilinos_rythmos =================== Synopsis ******** AX_TRILINOS_RYTHMOS([, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) Description *********** On success, adds "include Makefile.export.rythmos" statements to every Automake file containing @INC_AMINCLUDE@. Requires that Trilinos was configured with the -enable-export-makefiles option. When ACTION-IF-NOT-FOUND is not specified, the default behavior is for configure to fail. Source Code *********** Download the latest version of 'ax_trilinos_rythmos.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_trilinos_rythmos.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_trilinos_rythmos.m4). License ******* Copyright (C) 2009 Rhys Ulerich Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_trilinos_teuchos, Next: ax_trilinos_thyra, Prev: ax_trilinos_rythmos, Up: The Macros ax_trilinos_teuchos =================== Synopsis ******** AX_TRILINOS_TEUCHOS([, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) Description *********** On success, adds "include Makefile.export.teuchos" statements to every Automake file containing @INC_AMINCLUDE@. Requires that Trilinos was configured with the -enable-export-makefiles option. When ACTION-IF-NOT-FOUND is not specified, the default behavior is for configure to fail. Source Code *********** Download the latest version of 'ax_trilinos_teuchos.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_trilinos_teuchos.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_trilinos_teuchos.m4). License ******* Copyright (C) 2009 Rhys Ulerich Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_trilinos_thyra, Next: ax_trilinos_thyra_epetra, Prev: ax_trilinos_teuchos, Up: The Macros ax_trilinos_thyra ================= Synopsis ******** AX_TRILINOS_THYRA([, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) Description *********** On success, adds "include Makefile.export.thyra" statements to every Automake file containing @INC_AMINCLUDE@. Requires that Trilinos was configured with the -enable-export-makefiles option. When ACTION-IF-NOT-FOUND is not specified, the default behavior is for configure to fail. Source Code *********** Download the latest version of 'ax_trilinos_thyra.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_trilinos_thyra.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_trilinos_thyra.m4). License ******* Copyright (C) 2009 Rhys Ulerich Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_trilinos_thyra_epetra, Next: ax_trilinos_thyra_epetraext, Prev: ax_trilinos_thyra, Up: The Macros ax_trilinos_thyra_epetra ======================== Synopsis ******** AX_TRILINOS_THYRA_EPETRA([, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) Description *********** Checks if the Thyra/Epetra adapters were compiled with Trilinos. When ACTION-IF-NOT-FOUND is not specified, the default behavior is for configure to fail. Source Code *********** Download the latest version of 'ax_trilinos_thyra_epetra.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_trilinos_thyra_epetra.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_trilinos_thyra_epetra.m4). License ******* Copyright (C) 2009 Rhys Ulerich Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_trilinos_thyra_epetraext, Next: ax_try_awk_anyout, Prev: ax_trilinos_thyra_epetra, Up: The Macros ax_trilinos_thyra_epetraext =========================== Synopsis ******** AX_TRILINOS_THYRA_EPETRAEXT([, ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) Description *********** Checks if the Thyra/EpetraExt adapters were compiled with Trilinos. When ACTION-IF-NOT-FOUND is not specified, the default behavior is for configure to fail. Source Code *********** Download the latest version of 'ax_trilinos_thyra_epetraext.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_trilinos_thyra_epetraext.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_trilinos_thyra_epetraext.m4). License ******* Copyright (C) 2009 Rhys Ulerich Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_try_awk_anyout, Next: ax_try_awk_expout, Prev: ax_trilinos_thyra_epetraext, Up: The Macros ax_try_awk_anyout ================= Synopsis ******** AX_TRY_AWK_ANYOUT(NAME,TEST-INPUT,TEST-BODY,[ACTION-IF-SUCCESS],[ACTION-IF-FAILURE]) Description *********** Run a test using the awk program found on AWK variable. The test being run has TEST-BODY as body and is feeded with TEST-INPUT. If successful execute ACTION-IF-SUCCESS otherwise ACTION-IF-FAILURE This work is heavily based upon testawk.sh script by Heiner Steven. You should find his script (and related works) at . Thanks to Alessandro Massignan for his suggestions and extensive nawk tests on FreeBSD. Source Code *********** Download the latest version of 'ax_try_awk_anyout.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_try_awk_anyout.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_try_awk_anyout.m4). License ******* Copyright (C) 2009 Francesco Salvestrini Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_try_awk_expout, Next: ax_try_compile_java, Prev: ax_try_awk_anyout, Up: The Macros ax_try_awk_expout ================= Synopsis ******** AX_TRY_AWK_EXPOUT(NAME,TEST-INPUT,TEST-BODY,EXPECTED-OUTPUT,[ACTION-IF-SUCCESS],[ACTION-IF-FAILURE]) Description *********** Run a test using the awk program found on AWK variable. The test being run has TEST-BODY as body and is feeded with TEST-INPUT. Check if the test gives the expected output. If successful execute ACTION-IF-SUCCESS otherwise ACTION-IF-FAILURE. This work is heavily based upon testawk.sh script by Heiner Steven. You should find his script (and related works) at . Thanks to Alessandro Massignan for his suggestions and extensive nawk tests on FreeBSD. Source Code *********** Download the latest version of 'ax_try_awk_expout.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_try_awk_expout.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_try_awk_expout.m4). License ******* Copyright (C) 2009 Francesco Salvestrini Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_try_compile_java, Next: ax_try_run_java, Prev: ax_try_awk_expout, Up: The Macros ax_try_compile_java =================== Synopsis ******** AX_TRY_COMPILE_JAVA Description *********** AX_TRY_COMPILE_JAVA attempt to compile user given source. *Warning*: its success or failure can depend on a proper setting of the CLASSPATH env. variable. Note: This is part of the set of autoconf M4 macros for Java programs. It is VERY IMPORTANT that you download the whole set, some macros depend on other. Unfortunately, the autoconf archive does not support the concept of set of macros, so I had to break it for submission. The general documentation, as well as the sample configure.in, is included in the AX_PROG_JAVA macro. Source Code *********** Download the latest version of 'ax_try_compile_java.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_try_compile_java.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_try_compile_java.m4). License ******* Copyright (C) 2008 Devin Weaver Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_try_run_java, Next: ax_type_socklen_t, Prev: ax_try_compile_java, Up: The Macros ax_try_run_java =============== Synopsis ******** AX_TRY_RUN_JAVA Description *********** AX_TRY_RUN_JAVA attempt to compile and run user given source. *Warning*: its success or failure can depend on a proper setting of the CLASSPATH env. variable. Note: This is part of the set of autoconf M4 macros for Java programs. It is VERY IMPORTANT that you download the whole set, some macros depend on other. Unfortunately, the autoconf archive does not support the concept of set of macros, so I had to break it for submission. The general documentation, as well as the sample configure.in, is included in the AX_PROG_JAVA macro. Source Code *********** Download the latest version of 'ax_try_run_java.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_try_run_java.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_try_run_java.m4). License ******* Copyright (C) 2008 Devin Weaver Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_type_socklen_t, Next: ax_upload, Prev: ax_try_run_java, Up: The Macros ax_type_socklen_t ================= Synopsis ******** AX_TYPE_SOCKLEN_T Description *********** Check whether sys/socket.h defines type socklen_t. Please note that some systems require sys/types.h to be included before sys/socket.h can be compiled. Source Code *********** Download the latest version of 'ax_type_socklen_t.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_type_socklen_t.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_type_socklen_t.m4). License ******* Copyright (C) 2008 Lars Brinkhoff This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_upload, Next: ax_valgrind_check, Prev: ax_type_socklen_t, Up: The Macros ax_upload ========= Synopsis ******** AX_UPLOAD([command]) Description *********** Adds support for uploading dist files. %%s in the command will be substituted with the name of the file. e.g: AX_UPLOAD([ncftpput -v upload.sourceforge.net /incoming %%s]) To add upload support for other custom dists add upload- to UPLOAD_BIN or UPLOAD_SRC, where is the type of dist that is being uploaded and add a mapping from to the dist file name in the format '{=>}' to UPLOAD_TARGETS. For example: UPLOAD_BIN += upload-foobar UPLOAD_TARGETS += {foobar=>@PACKAGE@-@VERSION@.fb} You can then upload of the src distribution files by running: make upload-src all the binary distribution files by running: make upload-bin or both by running: make upload Source Code *********** Download the latest version of 'ax_upload.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_upload.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_upload.m4). License ******* Copyright (C) 2009 Tom Howard Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_valgrind_check, Next: ax_var_pop, Prev: ax_upload, Up: The Macros ax_valgrind_check ================= Synopsis ******** AX_VALGRIND_DFLT(memcheck|helgrind|drd|sgcheck, on|off) AX_VALGRIND_CHECK() Description *********** AX_VALGRIND_CHECK checks whether Valgrind is present and, if so, allows running 'make check' under a variety of Valgrind tools to check for memory and threading errors. Defines VALGRIND_CHECK_RULES which should be substituted in your Makefile; and $enable_valgrind which can be used in subsequent configure output. VALGRIND_ENABLED is defined and substituted, and corresponds to the value of the -enable-valgrind option, which defaults to being enabled if Valgrind is installed and disabled otherwise. Individual Valgrind tools can be disabled via -disable-valgrind-, the default is configurable via the AX_VALGRIND_DFLT command or is to use all commands not disabled via AX_VALGRIND_DFLT. All AX_VALGRIND_DFLT calls must be made before the call to AX_VALGRIND_CHECK. If unit tests are written using a shell script and automake's LOG_COMPILER system, the $(VALGRIND) variable can be used within the shell scripts to enable Valgrind, as described here: https://www.gnu.org/software/gnulib/manual/html_node/Running-self_002dtests-under-valgrind.html Usage example: configure.ac: AX_VALGRIND_DFLT([sgcheck], [off]) AX_VALGRIND_CHECK in each Makefile.am with tests: @VALGRIND_CHECK_RULES@ VALGRIND_SUPPRESSIONS_FILES = my-project.supp EXTRA_DIST = my-project.supp This results in a "check-valgrind" rule being added. Running 'make check-valgrind' in that directory will recursively run the module's test suite ('make check') once for each of the available Valgrind tools (out of memcheck, helgrind and drd) while the sgcheck will be skipped unless enabled again on the commandline with -enable-valgrind-sgcheck. The results for each check will be output to test-suite-$toolname.log. The target will succeed if there are zero errors and fail otherwise. Alternatively, a "check-valgrind-$TOOL" rule will be added, for $TOOL in memcheck, helgrind, drd and sgcheck. These are useful because often only some of those tools can be ran cleanly on a codebase. The macro supports running with and without libtool. Source Code *********** Download the latest version of 'ax_valgrind_check.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_valgrind_check.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_valgrind_check.m4). License ******* Copyright (C) 2014, 2015, 2016 Philip Withnall Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_var_pop, Next: ax_var_push, Prev: ax_valgrind_check, Up: The Macros ax_var_pop ========== Synopsis ******** AX_VAR_POPVALUE(VARIABLE) Description *********** Restores a variable's previous value. Compile, link and running tests usually require the programmer to provide additional flags. However, it is strongly recommended not to override flags defined by the user through the configure command. AX_VAR_PUSHVALUE and AX_VAR_POPVALUE are clean way to temporarily store a variable's value and restore it later, using a stack-like behaviour. This macro supports nesting. Example: AX_VAR_PUSHVALUE([CXXFLAGS],["my test flags"]) perform some checks with CXXFLAGS... CXXFLAGS value will be "my test flags" AX_VAR_POPVALUE([CXXFLAGS]) CXXFLAGS is restored to its original value Source Code *********** Download the latest version of 'ax_var_pop.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_var_pop.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_var_pop.m4). License ******* Copyright (C) 2015 Jorge Bellon This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_var_push, Next: ax_var_timezone_externals, Prev: ax_var_pop, Up: The Macros ax_var_push =========== Synopsis ******** AX_VAR_PUSHVALUE(VARIABLE, [VALUE]) Description *********** Stores a copy of variable_name's value and assigns it to 'value' If no value is given, its original value is kept. Compile, link and running tests usually require the programmer to provide additional flags. However, it is strongly recommended not to override flags defined by the user through the configure command. AX_VAR_PUSHVALUE and AX_VAR_POPVALUE are clean way to temporarily store a variable's value and restore it later, using a stack-like behaviour. This macro supports nesting. Example: AX_VAR_PUSHVALUE([CXXFLAGS],["my test flags"]) perform some checks with CXXFLAGS... CXXFLAGS value will be "my test flags" AX_VAR_POPVALUE([CXXFLAGS]) CXXFLAGS is restored to its original value Source Code *********** Download the latest version of 'ax_var_push.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_var_push.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_var_push.m4). License ******* Copyright (C) 2015 Jorge Bellon This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_var_timezone_externals, Next: ax_very_nice, Prev: ax_var_push, Up: The Macros ax_var_timezone_externals ========================= Synopsis ******** AX_VAR_TIMEZONE_EXTERNALS Description *********** Use instead of 'AC_STRUCT_TIMEZONE' to determine whether the external timezone variables 'timezone', 'altzone' and 'daylight' exist, defining 'HAVE_TIMEZONE', 'HAVE_ALTZONE' and 'HAVE_DAYLIGHT' respectively (as well as gaining the macros defined by 'AC_STRUCT_TIMEZONE'). Rewritten for Autoconf 2.68, and made robust against BSD's timezone() function, by Daniel Richard G. Source Code *********** Download the latest version of 'ax_var_timezone_externals.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_var_timezone_externals.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_var_timezone_externals.m4). License ******* Copyright (C) 2008 Mark R. Bannister Copyright (C) 2011 Daniel Richard G. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_very_nice, Next: ax_warning_default_aclocaldir, Prev: ax_var_timezone_externals, Up: The Macros ax_very_nice ============ Synopsis ******** AX_VERY_NICE Description *********** A macro to check the options of nice, in order to have a VERY_NICE variable which runs a program at the lowest priority VERY_NICE is undefined if we don't find the proper options, so you can safely use: @VERY_NICE@ mycommand in a shell script. The VERY_NICE variable includes the placeholder NICE_VALUE that you have to instantiate at run-time. If you give a argument to AX_VERY_NICE, it will be used as an argument of nice for testing and included in VERY_NICE instead of the above placeholder. Source Code *********** Download the latest version of 'ax_very_nice.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_very_nice.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_very_nice.m4). License ******* Copyright (C) 2008 Stephane Bortzmeyer This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_warning_default_aclocaldir, Next: ax_warning_default_pkgconfig, Prev: ax_very_nice, Up: The Macros ax_warning_default_aclocaldir ============================= Synopsis ******** AX_WARNING_DEFAULT_ACLOCALDIR [(dirvariable [,[defsetting][,[A][,[N/A]]]])] AX_ENABLE_DEFAULT_ACLOCALDIR [(dirvariable [,defsetting])] Description *********** print a warning message if the $(datadir)/aclocal directory is not in the dirlist searched by the aclocal tool. This macro is useful if some 'make install' would target $(datadir)/aclocal to install an autoconf m4 file of your project to be picked up by other projects. default $1 dirvariable = aclocaldir default $2 defsetting = ${datadir}/aclocal default $3 action = nothing to do default $4 action = warn the user about mismatch In the _WARNING_ variant, the defsetting is not placed in dirvariable nor is it ac_subst'ed in any way. The default fail-action $4 is to send a warning message to the user, and the default accept-action $3 is nothing. It is expected that a Makefile is generated with aclocaldir=${datadir}/aclocal The _ENABLE_ variant however will set not only the $aclocaldir shell var of the script, but it is also AC-SUBST'ed on default - and furthermore a configure option "-enable-default-aclocaldir" is provided. Only if that option is set then $2 default is not set to the canonic default in the a $prefix subpath but instead $2 default is set to the primary path where 'aclocal' looks for macros. The user may also override the default on the command line. Source Code *********** Download the latest version of 'ax_warning_default_aclocaldir.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_warning_default_aclocaldir.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_warning_default_aclocaldir.m4). License ******* Copyright (C) 2008 Guido U. Draheim Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_warning_default_pkgconfig, Next: ax_wint_t, Prev: ax_warning_default_aclocaldir, Up: The Macros ax_warning_default_pkgconfig ============================ Synopsis ******** AX_WARNING_DEFAULT_PKGCONFIGDIR [(dirvariable [,[defsetting][,[A][,[N/A]]]])] AX_ENABLE_DEFAULT_PKGCONFIGDIR [(dirvariable [,defsetting])] Description *********** print a warning message if the $(datadir)/aclocal directory is not in the dirlist searched by the aclocal tool. This macro is useful if some 'make install' would target $(datadir)/aclocal to install an autoconf m4 file of your project to be picked up by other projects. default $1 dirvariable = pkgconfigdir default $2 defsetting = ${libdir}/pkgconfig default $3 action = nothing to do default $4 action = warn the user about mismatch In the _WARNING_ variant, the defsetting is not placed in dirvariable nor is it ac_subst'ed in any way. The default fail-action $4 is to send a warning message to the user, and the default accept-action $3 is nothing. It is expected that a Makefile is generated with pkgconfigdir=${libdir}/pkgconfig The _ENABLE_ variant however will set not only the $pkgconfigdir shell var of the script, but it is also AC-SUBST'ed on default - and furthermore a configure option "-enable-default-pkgconfigdir" is provided. Only if that option is set then $2 default is not set to the canonic default in the a $prefix subpath but instead $2 default is set to the primary path where 'pkg-config' looks for .pc files. The user may also override the default on the command line. Source Code *********** Download the latest version of 'ax_warning_default_pkgconfig.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_warning_default_pkgconfig.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_warning_default_pkgconfig.m4). License ******* Copyright (C) 2008 Guido U. Draheim Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_wint_t, Next: ax_with_apxs, Prev: ax_warning_default_pkgconfig, Up: The Macros ax_wint_t ========= Synopsis ******** AX_WINT_T Description *********** It turns out that MacOS X doesn't guarantee to provide the "wint_t" type unless you include the strange header in addition to . Consequently, the "do I have a system wint_t?" probe fails and an alternate gets used. Unfortunately, by the time the program gets built, one way or another that funny header winds up getting included and the "#define wint_t unsigned int" patch-up-hack mutilates the typedef. This macro will get it right. Source Code *********** Download the latest version of 'ax_wint_t.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_wint_t.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_wint_t.m4). License ******* Copyright (C) 2008 Bruce Korb Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_with_apxs, Next: ax_with_build_path, Prev: ax_wint_t, Up: The Macros ax_with_apxs ============ Synopsis ******** AX_WITH_APXS([value-if-not-found], [path]) Description *********** Locates an installed apxs binary, placing the result in the precious variable $APXS. Accepts a preset $APXS, then -with-apxs, and failing that searches for apxs in the given path (which defaults to the system path). If apxs is found, $APXS is set to the full path of the binary; otherwise it is set to VALUE-IF-NOT-FOUND, which defaults to apxs. Example: AX_WITH_APXS(missing) Source Code *********** Download the latest version of 'ax_with_apxs.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_with_apxs.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_with_apxs.m4). License ******* Copyright (C) 2008 Dustin J. Mitchell Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_with_build_path, Next: ax_with_curses, Prev: ax_with_apxs, Up: The Macros ax_with_build_path ================== Synopsis ******** AX_WITH_BUILD_PATH Description *********** This macro adds a "-with-build-path" option to the configure script. This configure option provides a convenient way to add "-I" options to CPPFLAGS and "-L" options to LDFLAGS, at configure time. Invoking "./configure -with-build-path=DIR" results in "-I DIR/include" being added to CPPFLAGS if DIR/include exists, and "-L DIR/lib" being added to LDFLAGS if DIR/lib exists. Separate multiple directories using colons; e.g. "-with-build-path=DIR1:DIR2:DIR3". Source Code *********** Download the latest version of 'ax_with_build_path.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_with_build_path.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_with_build_path.m4). License ******* Copyright (C) 2008 Steve M. Robbins Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_with_curses, Next: ax_with_curses_extra, Prev: ax_with_build_path, Up: The Macros ax_with_curses ============== Synopsis ******** AX_WITH_CURSES Description *********** This macro checks whether a SysV or X/Open-compatible Curses library is present, along with the associated header file. The NcursesW (wide-character) library is searched for first, followed by Ncurses, then the system-default plain Curses. The first library found is the one returned. Finding libraries will first be attempted by using pkg-config, and should the pkg-config files not be available, will fallback to combinations of known flags itself. The following options are understood: -with-ncursesw, -with-ncurses, -without-ncursesw, -without-ncurses. The "-with" options force the macro to use that particular library, terminating with an error if not found. The "-without" options simply skip the check for that library. The effect on the search pattern is: (no options) - NcursesW, Ncurses, Curses --with-ncurses --with-ncursesw - NcursesW only [*] --without-ncurses --with-ncursesw - NcursesW only [*] --with-ncursesw - NcursesW only [*] --with-ncurses --without-ncursesw - Ncurses only [*] --with-ncurses - NcursesW, Ncurses [**] --without-ncurses --without-ncursesw - Curses only --without-ncursesw - Ncurses, Curses --without-ncurses - NcursesW, Curses [*] If the library is not found, abort the configure script. [**] If the second library (Ncurses) is not found, abort configure. The following preprocessor symbols may be defined by this macro if the appropriate conditions are met: HAVE_CURSES - if any SysV or X/Open Curses library found HAVE_CURSES_ENHANCED - if library supports X/Open Enhanced functions HAVE_CURSES_COLOR - if library supports color (enhanced functions) HAVE_CURSES_OBSOLETE - if library supports certain obsolete features HAVE_NCURSESW - if NcursesW (wide char) library is to be used HAVE_NCURSES - if the Ncurses library is to be used HAVE_CURSES_H - if is present and should be used HAVE_NCURSESW_H - if should be used HAVE_NCURSES_H - if should be used HAVE_NCURSESW_CURSES_H - if should be used HAVE_NCURSES_CURSES_H - if should be used (These preprocessor symbols are discussed later in this document.) The following output variables are defined by this macro; they are precious and may be overridden on the ./configure command line: CURSES_LIBS - library to add to xxx_LDADD CURSES_CFLAGS - include paths to add to xxx_CPPFLAGS In previous versions of this macro, the flags CURSES_LIB and CURSES_CPPFLAGS were defined. These have been renamed, in keeping with AX_WITH_CURSES's close bigger brother, PKG_CHECK_MODULES, which should eventually supersede the use of AX_WITH_CURSES. Neither the library listed in CURSES_LIBS, nor the flags in CURSES_CFLAGS are added to LIBS, respectively CPPFLAGS, by default. You need to add both to the appropriate xxx_LDADD/xxx_CPPFLAGS line in your Makefile.am. For example: prog_LDADD = @CURSES_LIBS@ prog_CPPFLAGS = @CURSES_CFLAGS@ If CURSES_LIBS is set on the configure command line (such as by running "./configure CURSES_LIBS=-lmycurses"), then the only header searched for is . If the user needs to specify an alternative path for a library (such as for a non-standard NcurseW), the user should use the LDFLAGS variable. The following shell variables may be defined by this macro: ax_cv_curses - set to "yes" if any Curses library found ax_cv_curses_enhanced - set to "yes" if Enhanced functions present ax_cv_curses_color - set to "yes" if color functions present ax_cv_curses_obsolete - set to "yes" if obsolete features present ax_cv_ncursesw - set to "yes" if NcursesW library found ax_cv_ncurses - set to "yes" if Ncurses library found ax_cv_plaincurses - set to "yes" if plain Curses library found ax_cv_curses_which - set to "ncursesw", "ncurses", "plaincurses" or "no" These variables can be used in your configure.ac to determine the level of support you need from the Curses library. For example, if you must have either Ncurses or NcursesW, you could include: AX_WITH_CURSES if test "x$ax_cv_ncursesw" != xyes && test "x$ax_cv_ncurses" != xyes; then AC_MSG_ERROR([requires either NcursesW or Ncurses library]) fi If any Curses library will do (but one must be present and must support color), you could use: AX_WITH_CURSES if test "x$ax_cv_curses" != xyes || test "x$ax_cv_curses_color" != xyes; then AC_MSG_ERROR([requires an X/Open-compatible Curses library with color]) fi Certain preprocessor symbols and shell variables defined by this macro can be used to determine various features of the Curses library. In particular, HAVE_CURSES and ax_cv_curses are defined if the Curses library found conforms to the traditional SysV and/or X/Open Base Curses definition. Any working Curses library conforms to this level. HAVE_CURSES_ENHANCED and ax_cv_curses_enhanced are defined if the library supports the X/Open Enhanced Curses definition. In particular, the wide-character types attr_t, cchar_t and wint_t, the functions wattr_set() and wget_wch() and the macros WA_NORMAL and _XOPEN_CURSES are checked. The Ncurses library does NOT conform to this definition, although NcursesW does. HAVE_CURSES_COLOR and ax_cv_curses_color are defined if the library supports color functions and macros such as COLOR_PAIR, A_COLOR, COLOR_WHITE, COLOR_RED and init_pair(). These are NOT part of the X/Open Base Curses definition, but are part of the Enhanced set of functions. The Ncurses library DOES support these functions, as does NcursesW. HAVE_CURSES_OBSOLETE and ax_cv_curses_obsolete are defined if the library supports certain features present in SysV and BSD Curses but not defined in the X/Open definition. In particular, the functions getattrs(), getcurx() and getmaxx() are checked. To use the HAVE_xxx_H preprocessor symbols, insert the following into your system.h (or equivalent) header file: #if defined HAVE_NCURSESW_CURSES_H # include #elif defined HAVE_NCURSESW_H # include #elif defined HAVE_NCURSES_CURSES_H # include #elif defined HAVE_NCURSES_H # include #elif defined HAVE_CURSES_H # include #else # error "SysV or X/Open-compatible Curses header file required" #endif For previous users of this macro: you should not need to change anything in your configure.ac or Makefile.am, as the previous (serial 10) semantics are still valid. However, you should update your system.h (or equivalent) header file to the fragment shown above. You are encouraged also to make use of the extended functionality provided by this version of AX_WITH_CURSES, as well as in the additional macros AX_WITH_CURSES_PANEL, AX_WITH_CURSES_MENU and AX_WITH_CURSES_FORM. Source Code *********** Download the latest version of 'ax_with_curses.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_with_curses.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_with_curses.m4). License ******* Copyright (C) 2009 Mark Pulford Copyright (C) 2009 Damian Pietras Copyright (C) 2012 Reuben Thomas Copyright (C) 2011 John Zaitseff This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_with_curses_extra, Next: ax_with_dmalloc, Prev: ax_with_curses, Up: The Macros ax_with_curses_extra ==================== Synopsis ******** AX_WITH_CURSES_PANEL AX_WITH_CURSES_MENU AX_WITH_CURSES_FORM Description *********** These macros try to find additional libraries that often come with SysV-compatible Curses. In particular, the Panel, Menu and Form libraries are searched, along with their header files. These macros depend on AX_WITH_CURSES. The following preprocessor symbols may be defined by these macros: By AX_WITH_CURSES_PANEL: HAVE_PANEL - if the Panel library is present HAVE_PANEL_H - if is present and should be used HAVE_NCURSES_PANEL_H - if should be used HAVE_NCURSESW_PANEL_H - if should be used By AX_WITH_CURSES_MENU: HAVE_MENU - if the Menu library is present HAVE_MENU_H - if is present and should be used HAVE_NCURSES_MENU_H - if should be used HAVE_NCURSESW_MENU_H - if should be used By AX_WITH_CURSES_FORM: HAVE_FORM - if the Form library is present HAVE_FORM_H - if is present and should be used HAVE_NCURSES_FORM_H - if should be used HAVE_NCURSESW_FORM_H - if should be used The following output variables may be defined by these macros; these are precious and may be overridden on the ./configure command line: PANEL_LIBS - library to add to xxx_LDADD before CURSES_LIBS MENU_LIBS - library to add to xxx_LDADD before CURSES_LIBS FORM_LIBS - library to add to xxx_LDADD before CURSES_LIBS In previous versions of this macro, the flags PANEL_LIB, MENU_LIB and FORM_LIB were defined. These have been renamed, in keeping with the variable scheme of PKG_CHECK_MODULES, which should eventually supersede the use of AX_WITH_CURSES and AX_WITH_CURSES_* macros. These libraries are NOT added to LIBS by default. You need to add them to the appropriate xxx_LDADD line in your Makefile.am in front of the equivalent CURSES_LIBS incantation. For example: prog_LDADD = @PANEL_LIBS@ @CURSES_LIBS@ If one of the xxx_LIBS variables is set on the configure command line (such as by running "./configure PANEL_LIBS=-lmypanel"), then the header file searched must NOT contain a subpath. In this case, in other words, only would be searched for. The user may use the CPPFLAGS precious variable to override the standard #include search path. The following shell variables may be defined by these macros: ax_cv_panel - set to "yes" if Panels library is present ax_cv_menu - set to "yes" if Menu library is present ax_cv_form - set to "yes" if Form library is present These variables can be used in your configure.ac to determine whether a library you require is actually present. For example: AX_WITH_CURSES if test "x$ax_cv_curses" != xyes; then AC_MSG_ERROR([requires a SysV or X/Open-compatible Curses library]) fi AX_WITH_CURSES_PANEL if test "x$ax_cv_panel" != xyes; then AC_MSG_ERROR([requires the Curses Panel library]) fi To use the HAVE_xxx_H preprocessor symbols, insert the following into your system.h (or equivalent) header file: For AX_WITH_CURSES_PANEL: #if defined HAVE_NCURSESW_PANEL_H # include #elif defined HAVE_NCURSES_PANEL_H # include #elif defined HAVE_PANEL_H # include #else # error "SysV-compatible Curses Panel header file required" #endif For AX_WITH_CURSES_MENU: #if defined HAVE_NCURSESW_MENU_H # include #elif defined HAVE_NCURSES_MENU_H # include #elif defined HAVE_MENU_H # include #else # error "SysV-compatible Curses Menu header file required" #endif For AX_WITH_CURSES_FORM: #if defined HAVE_NCURSESW_FORM_H # include #elif defined HAVE_NCURSES_FORM_H # include #elif defined HAVE_FORM_H # include #else # error "SysV-compatible Curses Form header file required" #endif Source Code *********** Download the latest version of 'ax_with_curses_extra.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_with_curses_extra.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_with_curses_extra.m4). License ******* Copyright (C) 2011 John Zaitseff This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_with_dmalloc, Next: ax_with_mpatrol, Prev: ax_with_curses_extra, Up: The Macros ax_with_dmalloc =============== Synopsis ******** AX_WITH_DMALLOC Description *********** Let the user enable/disable support for the dmalloc library available from . The macro adds the command-line flag "-with-dmalloc". Furthermore, "-IPREFIX/include" will be added to "$CPPFLAGS", "-LPREFIX/lib" to "$LDFLAGS", and "-DDEBUG_DMALLOC" and "-DDMALLOC_FUNC_CHECK" to "$CPPFLAGS". To enable dmalloc support in your code, add the following snippet to your header files: #ifdef DEBUG_DMALLOC # include #endif Source Code *********** Download the latest version of 'ax_with_dmalloc.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_with_dmalloc.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_with_dmalloc.m4). License ******* Copyright (C) 2008 Peter Simons Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_with_mpatrol, Next: ax_with_prog, Prev: ax_with_dmalloc, Up: The Macros ax_with_mpatrol =============== Synopsis ******** AX_WITH_MPATROL(DEFAULT) Description *********** Integrates the mpatrol malloc debugging library into a new or existing project and also attempts to determine the support libraries that need to be linked in when libmpatrol is used. It takes one optional parameter specifying whether mpatrol should be included in the project ('yes') or not ('no'). This can also be specified as 'threads' if you wish to use the threadsafe version of the mpatrol library. You can override the value of the optional parameter with the '-with-mpatrol' option to the resulting 'configure' shell script. Source Code *********** Download the latest version of 'ax_with_mpatrol.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_with_mpatrol.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_with_mpatrol.m4). License ******* Copyright (C) 2008 Graeme S. Roy Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_with_prog, Next: ax_xercesc, Prev: ax_with_mpatrol, Up: The Macros ax_with_prog ============ Synopsis ******** AX_WITH_PROG([VARIABLE],[program],[VALUE-IF-NOT-FOUND],[PATH]) Description *********** Locates an installed program binary, placing the result in the precious variable VARIABLE. Accepts a present VARIABLE, then -with-program, and failing that searches for program in the given path (which defaults to the system path). If program is found, VARIABLE is set to the full path of the binary; if it is not found VARIABLE is set to VALUE-IF-NOT-FOUND if provided, unchanged otherwise. A typical example could be the following one: AX_WITH_PROG(PERL,perl) NOTE: This macro is based upon the original AX_WITH_PYTHON macro from Dustin J. Mitchell . Source Code *********** Download the latest version of 'ax_with_prog.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_with_prog.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_with_prog.m4). License ******* Copyright (C) 2008 Francesco Salvestrini Copyright (C) 2008 Dustin J. Mitchell Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_xercesc, Next: ax_xsdcxx, Prev: ax_with_prog, Up: The Macros ax_xercesc ========== Synopsis ******** AX_XERCESC Description *********** Define $HAVE_LIBXERCES_C, $LIBXERCES_C, and $LTLIBXERCES_C to signify whether Xerces is available. Source Code *********** Download the latest version of 'ax_xercesc.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_xercesc.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_xercesc.m4). License ******* Copyright (C) 2008 Ronald Landheer-Cieslak This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_xsdcxx, Next: ax_xtra_classpath, Prev: ax_xercesc, Up: The Macros ax_xsdcxx ========= Synopsis ******** AX_XSDCXX Description *********** This macro tries to find the CodeSynthesis XSD executable and the corresponding headers. Supported options: --with-xsdcxx use CodeSynthesis XSD from given prefix (ARG=path); check PATH (ARG=yes); disable (ARG=no) --with-xsdcxx-inc path to CodeSynthesis XSD headers (ARG=path); use standard prefix (ARG=yes); disable (ARG=no) Output variables: XSDCXX XSDCXX_CPPFLAGS Source Code *********** Download the latest version of 'ax_xsdcxx.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_xsdcxx.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_xsdcxx.m4). License ******* Copyright (C) 2013 Laszlo Kajan Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_xtra_classpath, Next: ax_zmq, Prev: ax_xsdcxx, Up: The Macros ax_xtra_classpath ================= Synopsis ******** AX_XTRA_CLASSPATH(,,,,) Description *********** Set $1 to extra classpath components required for class $2 found in a jar file in $3. If the class is found do $4 and otherwise do $5. Uses AX_JAVA_CHECK_CLASS for testing whether a class is available Source Code *********** Download the latest version of 'ax_xtra_classpath.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_xtra_classpath.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_xtra_classpath.m4). License ******* Copyright (C) 2008 Duncan Simpson This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . As a special exception, the respective Autoconf Macro's copyright owner gives unlimited permission to copy, distribute and modify the configure scripts that are the output of Autoconf when processing the Macro. You need not follow the terms of the GNU General Public License when using or distributing such scripts, even though portions of the text of the Macro appear in them. The GNU General Public License (GPL) does govern all other use of the material that constitutes the Autoconf Macro. This special exception to the GPL applies to versions of the Autoconf Macro released by the Autoconf Archive. When you make and distribute a modified version of the Autoconf Macro, you may extend this special exception to the GPL to apply to your modified version as well.  File: autoconf-archive.info, Node: ax_zmq, Next: ax_zoneinfo, Prev: ax_xtra_classpath, Up: The Macros ax_zmq ====== Synopsis ******** AX_ZMQ([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) Description *********** Test for the ZMQ libraries of a particular version (or newer). The default version tested for is 4.0.0. The macro tests for ZMQ libraries in the library/include path, and, when provided, also in the path given by -with-zmq. This macro calls: AC_SUBST(ZMQ_CPPFLAGS) / AC_SUBST(ZMQ_LDFLAGS) / AC_SUBST(ZMQ_LIBS) And sets: HAVE_ZMQ Source Code *********** Download the latest version of 'ax_zmq.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_zmq.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_zmq.m4). License ******* Copyright (C) 2016 Jeroen Meijer Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: ax_zoneinfo, Prev: ax_zmq, Up: The Macros ax_zoneinfo =========== Synopsis ******** AX_ZONEINFO([options...]) Description *********** This macro finds compiled zoneinfo files. If successful it will define HAVE_ZONEINFO per: AC_DEFINE([HAVE_ZONEINFO], [1], [...]) and have the variable TZDIR point to the zoneinfo directory as per AC_SUBST([TZDIR]) AC_DEFINE_UNQUOTED([TZDIR], [/path/to/zic/files], [...]) Optionally, OPTIONS can be 'right' to trigger further tests that will determine if leap second fix-ups are available. If so the variables HAVE_ZONEINFO_RIGHT, ZONEINFO_UTC_RIGHT and TZDIR_RIGHT will be populated: AC_DEFINE([HAVE_ZONEINFO_RIGHT], [1], [...]) AC_SUBST([TZDIR_RIGHT]) AC_DEFINE_UNQUOTED([TZDIR_RIGHT], [/path/to/right/zic/files], [...]) AC_SUBST([ZONEINFO_UTC_RIGHT]) AC_DEFINE_UNQUOTED([ZONEINFO_UTC_RIGHT], [$ZONEINFO_UTC_RIGHT], [...]) Source Code *********** Download the latest version of 'ax_zoneinfo.m4' (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_zoneinfo.m4) or browse the macro's revision history (http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=history;f=m4/ax_zoneinfo.m4). License ******* Copyright (C) 2012 Sebastian Freundt Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. This file is offered as-is, without any warranty.  File: autoconf-archive.info, Node: GNU Free Documentation License, Prev: The Macros, Up: Top Appendix A GNU Free Documentation License ***************************************** Version 1.3, 3 November 2008 Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. 0. PREAMBLE The purpose of this License is to make a manual, textbook, or other functional and useful document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others. This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software. We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference. 1. APPLICABILITY AND DEFINITIONS This License applies to any manual or other work, in any medium, that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. Such a notice grants a world-wide, royalty-free license, unlimited in duration, to use that work under the conditions stated herein. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you". You accept the license if you copy, modify or distribute the work in a way requiring permission under copyright law. A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language. A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (Thus, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them. The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License. If a section does not fit the above definition of Secondary then it is not allowed to be designated as Invariant. The Document may contain zero Invariant Sections. If the Document does not identify any Invariant Sections then there are none. The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License. A Front-Cover Text may be at most 5 words, and a Back-Cover Text may be at most 25 words. A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, that is suitable for revising the document straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup, or absence of markup, has been arranged to thwart or discourage subsequent modification by readers is not Transparent. An image format is not Transparent if used for any substantial amount of text. A copy that is not "Transparent" is called "Opaque". Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML, PostScript or PDF designed for human modification. Examples of transparent image formats include PNG, XCF and JPG. Opaque formats include proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML, PostScript or PDF produced by some word processors for output purposes only. The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text. The "publisher" means any person or entity that distributes copies of the Document to the public. A section "Entitled XYZ" means a named subunit of the Document whose title either is precisely XYZ or contains XYZ in parentheses following text that translates XYZ in another language. (Here XYZ stands for a specific section name mentioned below, such as "Acknowledgements", "Dedications", "Endorsements", or "History".) To "Preserve the Title" of such a section when you modify the Document means that it remains a section "Entitled XYZ" according to this definition. The Document may include Warranty Disclaimers next to the notice which states that this License applies to the Document. These Warranty Disclaimers are considered to be included by reference in this License, but only as regards disclaiming warranties: any other implication that these Warranty Disclaimers may have is void and has no effect on the meaning of this License. 2. VERBATIM COPYING You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3. You may also lend copies, under the same conditions stated above, and you may publicly display copies. 3. COPYING IN QUANTITY If you publish printed copies (or copies in media that commonly have printed covers) of the Document, numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects. If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages. If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a computer-network location from which the general network-using public has access to download using public-standard network protocols a complete Transparent copy of the Document, free of added material. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public. It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document. 4. MODIFICATIONS You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version: A. Use in the Title Page (and on the covers, if any) a title distinct from that of the Document, and from those of previous versions (which should, if there were any, be listed in the History section of the Document). You may use the same title as a previous version if the original publisher of that version gives permission. B. List on the Title Page, as authors, one or more persons or entities responsible for authorship of the modifications in the Modified Version, together with at least five of the principal authors of the Document (all of its principal authors, if it has fewer than five), unless they release you from this requirement. C. State on the Title page the name of the publisher of the Modified Version, as the publisher. D. Preserve all the copyright notices of the Document. E. Add an appropriate copyright notice for your modifications adjacent to the other copyright notices. F. Include, immediately after the copyright notices, a license notice giving the public permission to use the Modified Version under the terms of this License, in the form shown in the Addendum below. G. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document's license notice. H. Include an unaltered copy of this License. I. Preserve the section Entitled "History", Preserve its Title, and add to it an item stating at least the title, year, new authors, and publisher of the Modified Version as given on the Title Page. If there is no section Entitled "History" in the Document, create one stating the title, year, authors, and publisher of the Document as given on its Title Page, then add an item describing the Modified Version as stated in the previous sentence. J. Preserve the network location, if any, given in the Document for public access to a Transparent copy of the Document, and likewise the network locations given in the Document for previous versions it was based on. These may be placed in the "History" section. You may omit a network location for a work that was published at least four years before the Document itself, or if the original publisher of the version it refers to gives permission. K. For any section Entitled "Acknowledgements" or "Dedications", Preserve the Title of the section, and preserve in the section all the substance and tone of each of the contributor acknowledgements and/or dedications given therein. L. Preserve all the Invariant Sections of the Document, unaltered in their text and in their titles. Section numbers or the equivalent are not considered part of the section titles. M. Delete any section Entitled "Endorsements". Such a section may not be included in the Modified Version. N. Do not retitle any existing section to be Entitled "Endorsements" or to conflict in title with any Invariant Section. O. Preserve any Warranty Disclaimers. If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles. You may add a section Entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard. You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one. The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version. 5. COMBINING DOCUMENTS You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice, and that you preserve all their Warranty Disclaimers. The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work. In the combination, you must combine any sections Entitled "History" in the various original documents, forming one section Entitled "History"; likewise combine any sections Entitled "Acknowledgements", and any sections Entitled "Dedications". You must delete all sections Entitled "Endorsements." 6. COLLECTIONS OF DOCUMENTS You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects. You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document. 7. AGGREGATION WITH INDEPENDENT WORKS A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, is called an "aggregate" if the copyright resulting from the compilation is not used to limit the legal rights of the compilation's users beyond what the individual works permit. When the Document is included in an aggregate, this License does not apply to the other works in the aggregate which are not themselves derivative works of the Document. If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one half of the entire aggregate, the Document's Cover Texts may be placed on covers that bracket the Document within the aggregate, or the electronic equivalent of covers if the Document is in electronic form. Otherwise they must appear on printed covers that bracket the whole aggregate. 8. TRANSLATION Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License, and all the license notices in the Document, and any Warranty Disclaimers, provided that you also include the original English version of this License and the original versions of those notices and disclaimers. In case of a disagreement between the translation and the original version of this License or a notice or disclaimer, the original version will prevail. If a section in the Document is Entitled "Acknowledgements", "Dedications", or "History", the requirement (section 4) to Preserve its Title (section 1) will typically require changing the actual title. 9. TERMINATION You may not copy, modify, sublicense, or distribute the Document except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, or distribute it is void, and will automatically terminate your rights under this License. However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, receipt of a copy of some or all of the same material does not give you any rights to use it. 10. FUTURE REVISIONS OF THIS LICENSE The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See . Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation. If the Document specifies that a proxy can decide which future versions of this License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Document. 11. RELICENSING "Massive Multiauthor Collaboration Site" (or "MMC Site") means any World Wide Web server that publishes copyrightable works and also provides prominent facilities for anybody to edit those works. A public wiki that anybody can edit is an example of such a server. A "Massive Multiauthor Collaboration" (or "MMC") contained in the site means any set of copyrightable works thus published on the MMC site. "CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0 license published by Creative Commons Corporation, a not-for-profit corporation with a principal place of business in San Francisco, California, as well as future copyleft versions of that license published by that same organization. "Incorporate" means to publish or republish a Document, in whole or in part, as part of another Document. An MMC is "eligible for relicensing" if it is licensed under this License, and if all works that were first published under this License somewhere other than this MMC, and subsequently incorporated in whole or in part into the MMC, (1) had no cover texts or invariant sections, and (2) were thus incorporated prior to November 1, 2008. The operator of an MMC Site may republish an MMC contained in the site under CC-BY-SA on the same site at any time before August 1, 2009, provided the MMC is eligible for relicensing. ADDENDUM: How to use this License for your documents ==================================================== To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page: Copyright (C) YEAR YOUR NAME. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled ``GNU Free Documentation License''. If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, replace the "with...Texts." line with this: with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. If you have Invariant Sections without Cover Texts, or some other combination of the three, merge those two alternatives to suit the situation. If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.