ax_append_flag.m4 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. # ===========================================================================
  2. # https://www.gnu.org/software/autoconf-archive/ax_append_flag.html
  3. # ===========================================================================
  4. #
  5. # SYNOPSIS
  6. #
  7. # AX_APPEND_FLAG(FLAG, [FLAGS-VARIABLE])
  8. #
  9. # DESCRIPTION
  10. #
  11. # FLAG is appended to the FLAGS-VARIABLE shell variable, with a space
  12. # added in between.
  13. #
  14. # If FLAGS-VARIABLE is not specified, the current language's flags (e.g.
  15. # CFLAGS) is used. FLAGS-VARIABLE is not changed if it already contains
  16. # FLAG. If FLAGS-VARIABLE is unset in the shell, it is set to exactly
  17. # FLAG.
  18. #
  19. # NOTE: Implementation based on AX_CFLAGS_GCC_OPTION.
  20. #
  21. # LICENSE
  22. #
  23. # Copyright (c) 2008 Guido U. Draheim <guidod@gmx.de>
  24. # Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com>
  25. #
  26. # This program is free software: you can redistribute it and/or modify it
  27. # under the terms of the GNU General Public License as published by the
  28. # Free Software Foundation, either version 3 of the License, or (at your
  29. # option) any later version.
  30. #
  31. # This program is distributed in the hope that it will be useful, but
  32. # WITHOUT ANY WARRANTY; without even the implied warranty of
  33. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
  34. # Public License for more details.
  35. #
  36. # You should have received a copy of the GNU General Public License along
  37. # with this program. If not, see <https://www.gnu.org/licenses/>.
  38. #
  39. # As a special exception, the respective Autoconf Macro's copyright owner
  40. # gives unlimited permission to copy, distribute and modify the configure
  41. # scripts that are the output of Autoconf when processing the Macro. You
  42. # need not follow the terms of the GNU General Public License when using
  43. # or distributing such scripts, even though portions of the text of the
  44. # Macro appear in them. The GNU General Public License (GPL) does govern
  45. # all other use of the material that constitutes the Autoconf Macro.
  46. #
  47. # This special exception to the GPL applies to versions of the Autoconf
  48. # Macro released by the Autoconf Archive. When you make and distribute a
  49. # modified version of the Autoconf Macro, you may extend this special
  50. # exception to the GPL to apply to your modified version as well.
  51. #serial 7
  52. AC_DEFUN([AX_APPEND_FLAG],
  53. [dnl
  54. AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_SET_IF
  55. AS_VAR_PUSHDEF([FLAGS], [m4_default($2,_AC_LANG_PREFIX[FLAGS])])
  56. AS_VAR_SET_IF(FLAGS,[
  57. AS_CASE([" AS_VAR_GET(FLAGS) "],
  58. [*" $1 "*], [AC_RUN_LOG([: FLAGS already contains $1])],
  59. [
  60. AS_VAR_APPEND(FLAGS,[" $1"])
  61. AC_RUN_LOG([: FLAGS="$FLAGS"])
  62. ])
  63. ],
  64. [
  65. AS_VAR_SET(FLAGS,[$1])
  66. AC_RUN_LOG([: FLAGS="$FLAGS"])
  67. ])
  68. AS_VAR_POPDEF([FLAGS])dnl
  69. ])dnl AX_APPEND_FLAG