Changeset 3ca4d9c in git
- Timestamp:
- Nov 14, 2022, 12:24:38 PM (3 months ago)
- Branches:
- (u'spielwiese', 'ad2543eab51733612ba7d118afc77edca719600e')
- Children:
- 660715de78e3fdf9dcc3f9388b1a1c61ec1c2ec5
- Parents:
- f0d4bd4caae9db63763bba2f6c56156355628e8b
- Location:
- m4
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
m4/ax_append_compile_flags.m4
rf0d4bd4 r3ca4d9c 1 # =========================================================================== =2 # http s://www.gnu.org/software/autoconf-archive/ax_append_compile_flags.html3 # =========================================================================== =1 # =========================================================================== 2 # http://www.gnu.org/software/autoconf-archive/ax_append_compile_flags.html 3 # =========================================================================== 4 4 # 5 5 # SYNOPSIS 6 6 # 7 # AX_APPEND_COMPILE_FLAGS([FLAG1 FLAG2 ...], [FLAGS-VARIABLE], [EXTRA-FLAGS] , [INPUT])7 # AX_APPEND_COMPILE_FLAGS([FLAG1 FLAG2 ...], [FLAGS-VARIABLE], [EXTRA-FLAGS]) 8 8 # 9 9 # DESCRIPTION … … 21 21 # force the compiler to issue an error when a bad flag is given. 22 22 # 23 # INPUT gives an alternative input source to AC_COMPILE_IFELSE.24 #25 23 # NOTE: This macro depends on the AX_APPEND_FLAG and 26 24 # AX_CHECK_COMPILE_FLAG. Please keep this macro in sync with … … 31 29 # Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com> 32 30 # 33 # Copying and distribution of this file, with or without modification, are 34 # permitted in any medium without royalty provided the copyright notice 35 # and this notice are preserved. This file is offered as-is, without any 36 # warranty. 31 # This program is free software: you can redistribute it and/or modify it 32 # under the terms of the GNU General Public License as published by the 33 # Free Software Foundation, either version 3 of the License, or (at your 34 # option) any later version. 35 # 36 # This program is distributed in the hope that it will be useful, but 37 # WITHOUT ANY WARRANTY; without even the implied warranty of 38 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General 39 # Public License for more details. 40 # 41 # You should have received a copy of the GNU General Public License along 42 # with this program. If not, see <http://www.gnu.org/licenses/>. 43 # 44 # As a special exception, the respective Autoconf Macro's copyright owner 45 # gives unlimited permission to copy, distribute and modify the configure 46 # scripts that are the output of Autoconf when processing the Macro. You 47 # need not follow the terms of the GNU General Public License when using 48 # or distributing such scripts, even though portions of the text of the 49 # Macro appear in them. The GNU General Public License (GPL) does govern 50 # all other use of the material that constitutes the Autoconf Macro. 51 # 52 # This special exception to the GPL applies to versions of the Autoconf 53 # Macro released by the Autoconf Archive. When you make and distribute a 54 # modified version of the Autoconf Macro, you may extend this special 55 # exception to the GPL to apply to your modified version as well. 37 56 38 #serial 757 #serial 3 39 58 40 59 AC_DEFUN([AX_APPEND_COMPILE_FLAGS], 41 [A X_REQUIRE_DEFINED([AX_CHECK_COMPILE_FLAG])42 A X_REQUIRE_DEFINED([AX_APPEND_FLAG])60 [AC_REQUIRE([AX_CHECK_COMPILE_FLAG]) 61 AC_REQUIRE([AX_APPEND_FLAG]) 43 62 for flag in $1; do 44 AX_CHECK_COMPILE_FLAG([$flag], [AX_APPEND_FLAG([$flag], [$2])], [], [$3] , [$4])63 AX_CHECK_COMPILE_FLAG([$flag], [AX_APPEND_FLAG([$flag], [$2])], [], [$3]) 45 64 done 46 65 ])dnl AX_APPEND_COMPILE_FLAGS 47 -
m4/ax_append_flag.m4
rf0d4bd4 r3ca4d9c 1 1 # =========================================================================== 2 # http s://www.gnu.org/software/autoconf-archive/ax_append_flag.html2 # http://www.gnu.org/software/autoconf-archive/ax_append_flag.html 3 3 # =========================================================================== 4 4 # … … 24 24 # Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com> 25 25 # 26 # Copying and distribution of this file, with or without modification, are 27 # permitted in any medium without royalty provided the copyright notice 28 # and this notice are preserved. This file is offered as-is, without any 29 # warranty. 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 <http://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. 30 51 31 #serial 852 #serial 2 32 53 33 54 AC_DEFUN([AX_APPEND_FLAG], 34 [dnl 35 AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_SET_IF 36 AS_VAR_PUSHDEF([FLAGS], [m4_default($2,_AC_LANG_PREFIX[FLAGS])]) 37 AS_VAR_SET_IF(FLAGS,[ 38 AS_CASE([" AS_VAR_GET(FLAGS) "], 39 [*" $1 "*], [AC_RUN_LOG([: FLAGS already contains $1])], 40 [ 41 AS_VAR_APPEND(FLAGS,[" $1"]) 42 AC_RUN_LOG([: FLAGS="$FLAGS"]) 43 ]) 44 ], 45 [ 46 AS_VAR_SET(FLAGS,[$1]) 47 AC_RUN_LOG([: FLAGS="$FLAGS"]) 48 ]) 55 [AC_PREREQ(2.59)dnl for _AC_LANG_PREFIX 56 AS_VAR_PUSHDEF([FLAGS], [m4_default($2,_AC_LANG_PREFIX[FLAGS])])dnl 57 AS_VAR_SET_IF(FLAGS, 58 [case " AS_VAR_GET(FLAGS) " in 59 *" $1 "*) 60 AC_RUN_LOG([: FLAGS already contains $1]) 61 ;; 62 *) 63 AC_RUN_LOG([: FLAGS="$FLAGS $1"]) 64 AS_VAR_SET(FLAGS, ["AS_VAR_GET(FLAGS) $1"]) 65 ;; 66 esac], 67 [AS_VAR_SET(FLAGS,["$1"])]) 49 68 AS_VAR_POPDEF([FLAGS])dnl 50 69 ])dnl AX_APPEND_FLAG 51 -
m4/ax_append_link_flags.m4
rf0d4bd4 r3ca4d9c 1 1 # =========================================================================== 2 # http s://www.gnu.org/software/autoconf-archive/ax_append_link_flags.html2 # http://www.gnu.org/software/autoconf-archive/ax_append_link_flags.html 3 3 # =========================================================================== 4 4 # 5 5 # SYNOPSIS 6 6 # 7 # AX_APPEND_LINK_FLAGS([FLAG1 FLAG2 ...], [FLAGS-VARIABLE], [EXTRA-FLAGS] , [INPUT])7 # AX_APPEND_LINK_FLAGS([FLAG1 FLAG2 ...], [FLAGS-VARIABLE], [EXTRA-FLAGS]) 8 8 # 9 9 # DESCRIPTION … … 20 20 # issue an error when a bad flag is given. 21 21 # 22 # INPUT gives an alternative input source to AC_COMPILE_IFELSE.23 #24 22 # NOTE: This macro depends on the AX_APPEND_FLAG and AX_CHECK_LINK_FLAG. 25 23 # Please keep this macro in sync with AX_APPEND_COMPILE_FLAGS. … … 29 27 # Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com> 30 28 # 31 # Copying and distribution of this file, with or without modification, are 32 # permitted in any medium without royalty provided the copyright notice 33 # and this notice are preserved. This file is offered as-is, without any 34 # warranty. 29 # This program is free software: you can redistribute it and/or modify it 30 # under the terms of the GNU General Public License as published by the 31 # Free Software Foundation, either version 3 of the License, or (at your 32 # option) any later version. 33 # 34 # This program is distributed in the hope that it will be useful, but 35 # WITHOUT ANY WARRANTY; without even the implied warranty of 36 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General 37 # Public License for more details. 38 # 39 # You should have received a copy of the GNU General Public License along 40 # with this program. If not, see <http://www.gnu.org/licenses/>. 41 # 42 # As a special exception, the respective Autoconf Macro's copyright owner 43 # gives unlimited permission to copy, distribute and modify the configure 44 # scripts that are the output of Autoconf when processing the Macro. You 45 # need not follow the terms of the GNU General Public License when using 46 # or distributing such scripts, even though portions of the text of the 47 # Macro appear in them. The GNU General Public License (GPL) does govern 48 # all other use of the material that constitutes the Autoconf Macro. 49 # 50 # This special exception to the GPL applies to versions of the Autoconf 51 # Macro released by the Autoconf Archive. When you make and distribute a 52 # modified version of the Autoconf Macro, you may extend this special 53 # exception to the GPL to apply to your modified version as well. 35 54 36 #serial 755 #serial 3 37 56 38 57 AC_DEFUN([AX_APPEND_LINK_FLAGS], 39 [A X_REQUIRE_DEFINED([AX_CHECK_LINK_FLAG])40 A X_REQUIRE_DEFINED([AX_APPEND_FLAG])58 [AC_REQUIRE([AX_CHECK_LINK_FLAG]) 59 AC_REQUIRE([AX_APPEND_FLAG]) 41 60 for flag in $1; do 42 AX_CHECK_LINK_FLAG([$flag], [AX_APPEND_FLAG([$flag], [m4_default([$2], [LDFLAGS])])], [], [$3] , [$4])61 AX_CHECK_LINK_FLAG([$flag], [AX_APPEND_FLAG([$flag], [m4_default([$2], [LDFLAGS])])], [], [$3]) 43 62 done 44 63 ])dnl AX_APPEND_LINK_FLAGS 45 -
m4/ax_check_compile_flag.m4
rf0d4bd4 r3ca4d9c 1 1 # =========================================================================== 2 # https://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html2 # http://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html 3 3 # =========================================================================== 4 4 # 5 5 # SYNOPSIS 6 6 # 7 # AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS] , [INPUT])7 # AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS]) 8 8 # 9 9 # DESCRIPTION … … 20 20 # force the compiler to issue an error when a bad flag is given. 21 21 # 22 # INPUT gives an alternative input source to AC_COMPILE_IFELSE.23 #24 22 # NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this 25 23 # macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG. … … 30 28 # Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com> 31 29 # 32 # Copying and distribution of this file, with or without modification, are 33 # permitted in any medium without royalty provided the copyright notice 34 # and this notice are preserved. This file is offered as-is, without any 35 # warranty. 30 # This program is free software: you can redistribute it and/or modify it 31 # under the terms of the GNU General Public License as published by the 32 # Free Software Foundation, either version 3 of the License, or (at your 33 # option) any later version. 34 # 35 # This program is distributed in the hope that it will be useful, but 36 # WITHOUT ANY WARRANTY; without even the implied warranty of 37 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General 38 # Public License for more details. 39 # 40 # You should have received a copy of the GNU General Public License along 41 # with this program. If not, see <http://www.gnu.org/licenses/>. 42 # 43 # As a special exception, the respective Autoconf Macro's copyright owner 44 # gives unlimited permission to copy, distribute and modify the configure 45 # scripts that are the output of Autoconf when processing the Macro. You 46 # need not follow the terms of the GNU General Public License when using 47 # or distributing such scripts, even though portions of the text of the 48 # Macro appear in them. The GNU General Public License (GPL) does govern 49 # all other use of the material that constitutes the Autoconf Macro. 50 # 51 # This special exception to the GPL applies to versions of the Autoconf 52 # Macro released by the Autoconf Archive. When you make and distribute a 53 # modified version of the Autoconf Macro, you may extend this special 54 # exception to the GPL to apply to your modified version as well. 36 55 37 #serial 656 #serial 2 38 57 39 58 AC_DEFUN([AX_CHECK_COMPILE_FLAG], 40 [AC_PREREQ(2. 64)dnl for _AC_LANG_PREFIX and AS_VAR_IF59 [AC_PREREQ(2.59)dnl for _AC_LANG_PREFIX 41 60 AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl 42 61 AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [ 43 62 ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS 44 _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1 "45 AC_COMPILE_IFELSE([ m4_default([$5],[AC_LANG_PROGRAM()])],63 _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1 -Werror" 64 AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], 46 65 [AS_VAR_SET(CACHEVAR,[yes])], 47 66 [AS_VAR_SET(CACHEVAR,[no])]) 48 67 _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags]) 49 AS_ VAR_IF(CACHEVAR,yes,68 AS_IF([test x"AS_VAR_GET(CACHEVAR)" = xyes], 50 69 [m4_default([$2], :)], 51 70 [m4_default([$3], :)]) 52 71 AS_VAR_POPDEF([CACHEVAR])dnl 53 72 ])dnl AX_CHECK_COMPILE_FLAGS 54 -
m4/ax_check_link_flag.m4
rf0d4bd4 r3ca4d9c 1 1 # =========================================================================== 2 # http s://www.gnu.org/software/autoconf-archive/ax_check_link_flag.html2 # http://www.gnu.org/software/autoconf-archive/ax_check_link_flag.html 3 3 # =========================================================================== 4 4 # 5 5 # SYNOPSIS 6 6 # 7 # AX_CHECK_LINK_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS] , [INPUT])7 # AX_CHECK_LINK_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS]) 8 8 # 9 9 # DESCRIPTION … … 20 20 # issue an error when a bad flag is given. 21 21 # 22 # INPUT gives an alternative input source to AC_LINK_IFELSE.23 #24 22 # NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this 25 23 # macro in sync with AX_CHECK_{PREPROC,COMPILE}_FLAG. … … 30 28 # Copyright (c) 2011 Maarten Bosmans <mkbosmans@gmail.com> 31 29 # 32 # Copying and distribution of this file, with or without modification, are 33 # permitted in any medium without royalty provided the copyright notice 34 # and this notice are preserved. This file is offered as-is, without any 35 # warranty. 30 # This program is free software: you can redistribute it and/or modify it 31 # under the terms of the GNU General Public License as published by the 32 # Free Software Foundation, either version 3 of the License, or (at your 33 # option) any later version. 34 # 35 # This program is distributed in the hope that it will be useful, but 36 # WITHOUT ANY WARRANTY; without even the implied warranty of 37 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General 38 # Public License for more details. 39 # 40 # You should have received a copy of the GNU General Public License along 41 # with this program. If not, see <http://www.gnu.org/licenses/>. 42 # 43 # As a special exception, the respective Autoconf Macro's copyright owner 44 # gives unlimited permission to copy, distribute and modify the configure 45 # scripts that are the output of Autoconf when processing the Macro. You 46 # need not follow the terms of the GNU General Public License when using 47 # or distributing such scripts, even though portions of the text of the 48 # Macro appear in them. The GNU General Public License (GPL) does govern 49 # all other use of the material that constitutes the Autoconf Macro. 50 # 51 # This special exception to the GPL applies to versions of the Autoconf 52 # Macro released by the Autoconf Archive. When you make and distribute a 53 # modified version of the Autoconf Macro, you may extend this special 54 # exception to the GPL to apply to your modified version as well. 36 55 37 #serial 656 #serial 2 38 57 39 58 AC_DEFUN([AX_CHECK_LINK_FLAG], 40 [AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF 41 AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_ldflags_$4_$1])dnl 59 [AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_ldflags_$4_$1])dnl 42 60 AC_CACHE_CHECK([whether the linker accepts $1], CACHEVAR, [ 43 61 ax_check_save_flags=$LDFLAGS 44 62 LDFLAGS="$LDFLAGS $4 $1" 45 AC_LINK_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])], 63 _save_cflags="$CFLAGS" 64 CFLAGS="$CFLAGS -Werror" 65 AC_LINK_IFELSE([AC_LANG_PROGRAM()], 46 66 [AS_VAR_SET(CACHEVAR,[yes])], 47 67 [AS_VAR_SET(CACHEVAR,[no])]) 68 CFLAGS="$_save_cflags" 48 69 LDFLAGS=$ax_check_save_flags]) 49 AS_ VAR_IF(CACHEVAR,yes,70 AS_IF([test x"AS_VAR_GET(CACHEVAR)" = xyes], 50 71 [m4_default([$2], :)], 51 72 [m4_default([$3], :)]) 52 73 AS_VAR_POPDEF([CACHEVAR])dnl 53 74 ])dnl AX_CHECK_LINK_FLAGS 54 -
m4/ax_compute_relative_paths.m4
rf0d4bd4 r3ca4d9c 1 # ============================================================================= =2 # http s://www.gnu.org/software/autoconf-archive/ax_compute_relative_paths.html3 # ============================================================================= =1 # ============================================================================= 2 # http://www.gnu.org/software/autoconf-archive/ax_compute_relative_paths.html 3 # ============================================================================= 4 4 # 5 5 # SYNOPSIS … … 34 34 # encode $bin_to_data and try to determine $bindir at run-time. 35 35 # 36 # This macro requires AX_NORMALIZE_PATH and AX_RECURSIVE_EVAL.36 # This macro requires AX_NORMALIZE_PATH. 37 37 # 38 38 # LICENSE … … 51 51 # 52 52 # You should have received a copy of the GNU General Public License along 53 # with this program. If not, see <http s://www.gnu.org/licenses/>.53 # with this program. If not, see <http://www.gnu.org/licenses/>. 54 54 # 55 55 # As a special exception, the respective Autoconf Macro's copyright owner … … 66 66 # exception to the GPL to apply to your modified version as well. 67 67 68 #serial 1268 #serial 6 69 69 70 70 AU_ALIAS([ADL_COMPUTE_RELATIVE_PATHS], [AX_COMPUTE_RELATIVE_PATHS]) … … 96 96 dnl of $RESULT to that value. This function work on raw filenames 97 97 dnl (for instead it will considerate /usr//local and /usr/local as 98 dnl two distinct paths), you should really use AX_COMPUTE_RE LATIVE_PATHS98 dnl two distinct paths), you should really use AX_COMPUTE_REALTIVE_PATHS 99 99 dnl instead to have the paths sanitized automatically. 100 100 dnl … … 136 136 dnl AX_COMPUTE_SUFFIX_PATH(PATH, SUBPATH, RESULT) 137 137 dnl ============================================== 138 dnl Sub tract$SUBPATH from $PATH, and set the resulting suffix138 dnl Substrack $SUBPATH from $PATH, and set the resulting suffix 139 139 dnl (or the empty string if $SUBPATH is not a subpath of $PATH) 140 140 dnl to $RESULT. 141 141 dnl 142 dnl For insta nce:142 dnl For instace: 143 143 dnl first_path=/somewhere/on/my/disk/bin 144 144 dnl second_path=/somewhere/on … … 173 173 done]) 174 174 175 176 dnl AX_RECURSIVE_EVAL(VALUE, RESULT) 177 dnl ================================= 178 dnl Interpolate the VALUE in loop until it doesn't change, 179 dnl and set the result to $RESULT. 180 dnl WARNING: It's easy to get an infinite loop with some unsane input. 181 AC_DEFUN([AX_RECURSIVE_EVAL], 182 [_lcl_receval="$1" 183 $2=`(test "x$prefix" = xNONE && prefix="$ac_default_prefix" 184 test "x$exec_prefix" = xNONE && exec_prefix="${prefix}" 185 _lcl_receval_old='' 186 while test "[$]_lcl_receval_old" != "[$]_lcl_receval"; do 187 _lcl_receval_old="[$]_lcl_receval" 188 eval _lcl_receval="\"[$]_lcl_receval\"" 189 done 190 echo "[$]_lcl_receval")`]) -
m4/ax_normalize_path.m4
rf0d4bd4 r3ca4d9c 1 1 # =========================================================================== 2 # https://www.gnu.org/software/autoconf-archive/ax_normalize_path.html2 # http://www.gnu.org/software/autoconf-archive/ax_normalize_path.html 3 3 # =========================================================================== 4 4 # … … 81 81 # 82 82 # You should have received a copy of the GNU General Public License along 83 # with this program. If not, see <http s://www.gnu.org/licenses/>.83 # with this program. If not, see <http://www.gnu.org/licenses/>. 84 84 # 85 85 # As a special exception, the respective Autoconf Macro's copyright owner … … 96 96 # exception to the GPL to apply to your modified version as well. 97 97 98 #serial 898 #serial 5 99 99 100 100 AU_ALIAS([ADL_NORMALIZE_PATH], [AX_NORMALIZE_PATH]) … … 107 107 :*:) ;; 108 108 esac 109 # sque eze repeated slashes109 # squeze repeated slashes 110 110 case ifelse($2,,"[$]$1",$2) in 111 111 # if the path contains any backslashes, turn slashes into backslashes … … 114 114 *) $1=`echo "[$]$1" | sed 's,\(.\)[[\\/]][[\\/]]*,\1/,g'` ;; 115 115 esac]) 116 -
m4/ax_prog_cc_for_build.m4
rf0d4bd4 r3ca4d9c 33 33 # warranty. 34 34 35 #serial 2135 #serial 18 36 36 37 37 AU_ALIAS([AC_PROG_CC_FOR_BUILD], [AX_PROG_CC_FOR_BUILD]) … … 45 45 pushdef([ac_cv_prog_CPP], ac_cv_build_prog_CPP)dnl 46 46 pushdef([ac_cv_prog_cc_c89], ac_cv_build_prog_cc_c89)dnl 47 pushdef([ac_cv_prog_cc_c99], ac_cv_build_prog_cc_c99)dnl48 pushdef([ac_cv_prog_cc_c11], ac_cv_build_prog_cc_c11)dnl49 47 pushdef([ac_cv_prog_gcc], ac_cv_build_prog_gcc)dnl 50 48 pushdef([ac_cv_prog_cc_works], ac_cv_build_prog_cc_works)dnl … … 86 84 87 85 AC_LANG_PUSH([C]) 88 89 dnl The pushdef([ac_cv_c_compiler_gnu], ...) currently does not cover90 dnl the use of this variable in _AC_LANG_COMPILER_GNU called by91 dnl AC_PROG_CC. Unset this cache variable temporarily as a workaround.92 was_set_c_compiler_gnu=${[ac_cv_c_compiler_gnu]+y}93 AS_IF([test ${was_set_c_compiler_gnu}],94 [saved_c_compiler_gnu=$[ac_cv_c_compiler_gnu]95 AS_UNSET([[ac_cv_c_compiler_gnu]])])96 97 86 AC_PROG_CC 98 99 dnl Restore ac_cv_c_compiler_gnu100 AS_IF([test ${was_set_c_compiler_gnu}],101 [[ac_cv_c_compiler_gnu]=$[saved_c_compiler_gnu]])102 103 87 _AC_COMPILER_EXEEXT 104 88 _AC_COMPILER_OBJEXT … … 154 138 AC_SUBST([LDFLAGS_FOR_BUILD])dnl 155 139 ]) 156 -
m4/ax_pthread.m4
rf0d4bd4 r3ca4d9c 1 1 # =========================================================================== 2 # http s://www.gnu.org/software/autoconf-archive/ax_pthread.html2 # http://www.gnu.org/software/autoconf-archive/ax_pthread.html 3 3 # =========================================================================== 4 4 # … … 15 15 # flags/libs to be tested by setting these environment variables.) 16 16 # 17 # Also sets PTHREAD_CC and PTHREAD_CXX to any special C compiler that is 18 # needed for multi-threaded programs (defaults to the value of CC 19 # respectively CXX otherwise). (This is necessary on e.g. AIX to use the 20 # special cc_r/CC_r compiler alias.) 17 # Also sets PTHREAD_CC to any special C compiler that is needed for 18 # multi-threaded programs (defaults to the value of CC otherwise). (This 19 # is necessary on AIX to use the special cc_r compiler alias.) 21 20 # 22 21 # NOTE: You are assumed to not only compile your program with these flags, 23 22 # but also to link with them as well. For example, you might link with 24 23 # $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS 25 # $PTHREAD_CXX $CXXFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS26 24 # 27 25 # If you are only building threaded programs, you may wish to use these … … 30 28 # LIBS="$PTHREAD_LIBS $LIBS" 31 29 # CFLAGS="$CFLAGS $PTHREAD_CFLAGS" 32 # CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS"33 30 # CC="$PTHREAD_CC" 34 # CXX="$PTHREAD_CXX"35 31 # 36 32 # In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute constant … … 60 56 # Copyright (c) 2008 Steven G. Johnson <stevenj@alum.mit.edu> 61 57 # Copyright (c) 2011 Daniel Richard G. <skunk@iSKUNK.ORG> 62 # Copyright (c) 2019 Marc Stevens <marc.stevens@cwi.nl>63 58 # 64 59 # This program is free software: you can redistribute it and/or modify it … … 73 68 # 74 69 # You should have received a copy of the GNU General Public License along 75 # with this program. If not, see <http s://www.gnu.org/licenses/>.70 # with this program. If not, see <http://www.gnu.org/licenses/>. 76 71 # 77 72 # As a special exception, the respective Autoconf Macro's copyright owner … … 88 83 # exception to the GPL to apply to your modified version as well. 89 84 90 #serial 3185 #serial 23 91 86 92 87 AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD]) … … 110 105 ax_pthread_save_LIBS="$LIBS" 111 106 AS_IF([test "x$PTHREAD_CC" != "x"], [CC="$PTHREAD_CC"]) 112 AS_IF([test "x$PTHREAD_CXX" != "x"], [CXX="$PTHREAD_CXX"])113 107 CFLAGS="$CFLAGS $PTHREAD_CFLAGS" 114 108 LIBS="$PTHREAD_LIBS $LIBS" … … 130 124 # libraries is broken (non-POSIX). 131 125 132 # Create a list of thread flags to try. Items with a "," contain both 133 # C compiler flags (before ",") and linker flags (after ","). Other items 134 # starting with a "-" are C compiler flags, and remaining items are 135 # library names, except for "none" which indicates that we try without 136 # any flags at all, and "pthread-config" which is a program returning 137 # the flags for the Pth emulation library. 126 # Create a list of thread flags to try. Items starting with a "-" are 127 # C compiler flags, and other items are library names, except for "none" 128 # which indicates that we try without any flags at all, and "pthread-config" 129 # which is a program returning the flags for the Pth emulation library. 138 130 139 131 ax_pthread_flags="pthreads none -Kthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" … … 203 195 # standard Solaris way of linking pthreads (-mt -lpthread). 204 196 205 ax_pthread_flags="-mt, -lpthread pthread $ax_pthread_flags"197 ax_pthread_flags="-mt,pthread pthread $ax_pthread_flags" 206 198 ;; 207 199 esac 200 201 # GCC generally uses -pthread, or -pthreads on some platforms (e.g. SPARC) 202 203 AS_IF([test "x$GCC" = "xyes"], 204 [ax_pthread_flags="-pthread -pthreads $ax_pthread_flags"]) 205 206 # The presence of a feature test macro requesting re-entrant function 207 # definitions is, on some systems, a strong hint that pthreads support is 208 # correctly enabled 209 210 case $host_os in 211 darwin* | hpux* | linux* | osf* | solaris*) 212 ax_pthread_check_macro="_REENTRANT" 213 ;; 214 215 aix*) 216 ax_pthread_check_macro="_THREAD_SAFE" 217 ;; 218 219 *) 220 ax_pthread_check_macro="--" 221 ;; 222 esac 223 AS_IF([test "x$ax_pthread_check_macro" = "x--"], 224 [ax_pthread_check_cond=0], 225 [ax_pthread_check_cond="!defined($ax_pthread_check_macro)"]) 208 226 209 227 # Are we compiling with Clang? … … 225 243 ax_pthread_clang="$ax_cv_PTHREAD_CLANG" 226 244 227 228 # GCC generally uses -pthread, or -pthreads on some platforms (e.g. SPARC) 229 230 # Note that for GCC and Clang -pthread generally implies -lpthread, 231 # except when -nostdlib is passed. 232 # This is problematic using libtool to build C++ shared libraries with pthread: 233 # [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25460 234 # [2] https://bugzilla.redhat.com/show_bug.cgi?id=661333 235 # [3] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=468555 236 # To solve this, first try -pthread together with -lpthread for GCC 237 238 AS_IF([test "x$GCC" = "xyes"], 239 [ax_pthread_flags="-pthread,-lpthread -pthread -pthreads $ax_pthread_flags"]) 240 241 # Clang takes -pthread (never supported any other flag), but we'll try with -lpthread first 242 243 AS_IF([test "x$ax_pthread_clang" = "xyes"], 244 [ax_pthread_flags="-pthread,-lpthread -pthread"]) 245 246 247 # The presence of a feature test macro requesting re-entrant function 248 # definitions is, on some systems, a strong hint that pthreads support is 249 # correctly enabled 250 251 case $host_os in 252 darwin* | hpux* | linux* | osf* | solaris*) 253 ax_pthread_check_macro="_REENTRANT" 254 ;; 255 256 aix*) 257 ax_pthread_check_macro="_THREAD_SAFE" 258 ;; 259 260 *) 261 ax_pthread_check_macro="--" 262 ;; 263 esac 264 AS_IF([test "x$ax_pthread_check_macro" = "x--"], 265 [ax_pthread_check_cond=0], 266 [ax_pthread_check_cond="!defined($ax_pthread_check_macro)"]) 267 268 269 if test "x$ax_pthread_ok" = "xno"; then 270 for ax_pthread_try_flag in $ax_pthread_flags; do 271 272 case $ax_pthread_try_flag in 273 none) 274 AC_MSG_CHECKING([whether pthreads work without any flags]) 275 ;; 276 277 *,*) 278 PTHREAD_CFLAGS=`echo $ax_pthread_try_flag | sed "s/^\(.*\),\(.*\)$/\1/"` 279 PTHREAD_LIBS=`echo $ax_pthread_try_flag | sed "s/^\(.*\),\(.*\)$/\2/"` 280 AC_MSG_CHECKING([whether pthreads work with "$PTHREAD_CFLAGS" and "$PTHREAD_LIBS"]) 281 ;; 282 283 -*) 284 AC_MSG_CHECKING([whether pthreads work with $ax_pthread_try_flag]) 285 PTHREAD_CFLAGS="$ax_pthread_try_flag" 286 ;; 287 288 pthread-config) 289 AC_CHECK_PROG([ax_pthread_config], [pthread-config], [yes], [no]) 290 AS_IF([test "x$ax_pthread_config" = "xno"], [continue]) 291 PTHREAD_CFLAGS="`pthread-config --cflags`" 292 PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`" 293 ;; 294 295 *) 296 AC_MSG_CHECKING([for the pthreads library -l$ax_pthread_try_flag]) 297 PTHREAD_LIBS="-l$ax_pthread_try_flag" 298 ;; 299 esac 300 301 ax_pthread_save_CFLAGS="$CFLAGS" 302 ax_pthread_save_LIBS="$LIBS" 303 CFLAGS="$CFLAGS $PTHREAD_CFLAGS" 304 LIBS="$PTHREAD_LIBS $LIBS" 305 306 # Check for various functions. We must include pthread.h, 307 # since some functions may be macros. (On the Sequent, we 308 # need a special flag -Kthread to make this header compile.) 309 # We check for pthread_join because it is in -lpthread on IRIX 310 # while pthread_create is in libc. We check for pthread_attr_init 311 # due to DEC craziness with -lpthreads. We check for 312 # pthread_cleanup_push because it is one of the few pthread 313 # functions on Solaris that doesn't have a non-functional libc stub. 314 # We try pthread_create on general principles. 315 316 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <pthread.h> 317 # if $ax_pthread_check_cond 318 # error "$ax_pthread_check_macro must be defined" 319 # endif 320 static void *some_global = NULL; 321 static void routine(void *a) 322 { 323 /* To avoid any unused-parameter or 324 unused-but-set-parameter warning. */ 325 some_global = a; 326 } 327 static void *start_routine(void *a) { return a; }], 328 [pthread_t th; pthread_attr_t attr; 329 pthread_create(&th, 0, start_routine, 0); 330 pthread_join(th, 0); 331 pthread_attr_init(&attr); 332 pthread_cleanup_push(routine, 0); 333 pthread_cleanup_pop(0) /* ; */])], 334 [ax_pthread_ok=yes], 335 []) 336 337 CFLAGS="$ax_pthread_save_CFLAGS" 338 LIBS="$ax_pthread_save_LIBS" 339 340 AC_MSG_RESULT([$ax_pthread_ok]) 341 AS_IF([test "x$ax_pthread_ok" = "xyes"], [break]) 342 343 PTHREAD_LIBS="" 344 PTHREAD_CFLAGS="" 345 done 346 fi 347 245 ax_pthread_clang_warning=no 348 246 349 247 # Clang needs special handling, because older versions handle the -pthread … … 363 261 # -pthread does define _REENTRANT, and while the Darwin headers 364 262 # ignore this macro, third-party headers might not.) 263 264 PTHREAD_CFLAGS="-pthread" 265 PTHREAD_LIBS= 266 267 ax_pthread_ok=yes 365 268 366 269 # However, older versions of Clang make a point of warning the user … … 392 295 ax_pthread_save_ac_link="$ac_link" 393 296 ax_pthread_sed='s/conftest\.\$ac_ext/conftest.$ac_objext/g' 394 ax_pthread_link_step=` AS_ECHO(["$ac_link"])| sed "$ax_pthread_sed"`297 ax_pthread_link_step=`$as_echo "$ac_link" | sed "$ax_pthread_sed"` 395 298 ax_pthread_2step_ac_link="($ac_compile) && (echo ==== >&5) && ($ax_pthread_link_step)" 396 299 ax_pthread_save_CFLAGS="$CFLAGS" … … 418 321 fi # $ax_pthread_clang = yes 419 322 420 323 if test "x$ax_pthread_ok" = "xno"; then 324 for ax_pthread_try_flag in $ax_pthread_flags; do 325 326 case $ax_pthread_try_flag in 327 none) 328 AC_MSG_CHECKING([whether pthreads work without any flags]) 329 ;; 330 331 -mt,pthread) 332 AC_MSG_CHECKING([whether pthreads work with -mt -lpthread]) 333 PTHREAD_CFLAGS="-mt" 334 PTHREAD_LIBS="-lpthread" 335 ;; 336 337 -*) 338 AC_MSG_CHECKING([whether pthreads work with $ax_pthread_try_flag]) 339 PTHREAD_CFLAGS="$ax_pthread_try_flag" 340 ;; 341 342 pthread-config) 343 AC_CHECK_PROG([ax_pthread_config], [pthread-config], [yes], [no]) 344 AS_IF([test "x$ax_pthread_config" = "xno"], [continue]) 345 PTHREAD_CFLAGS="`pthread-config --cflags`" 346 PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`" 347 ;; 348 349 *) 350 AC_MSG_CHECKING([for the pthreads library -l$ax_pthread_try_flag]) 351 PTHREAD_LIBS="-l$ax_pthread_try_flag" 352 ;; 353 esac 354 355 ax_pthread_save_CFLAGS="$CFLAGS" 356 ax_pthread_save_LIBS="$LIBS" 357 CFLAGS="$CFLAGS $PTHREAD_CFLAGS" 358 LIBS="$PTHREAD_LIBS $LIBS" 359 360 # Check for various functions. We must include pthread.h, 361 # since some functions may be macros. (On the Sequent, we 362 # need a special flag -Kthread to make this header compile.) 363 # We check for pthread_join because it is in -lpthread on IRIX 364 # while pthread_create is in libc. We check for pthread_attr_init 365 # due to DEC craziness with -lpthreads. We check for 366 # pthread_cleanup_push because it is one of the few pthread 367 # functions on Solaris that doesn't have a non-functional libc stub. 368 # We try pthread_create on general principles. 369 370 AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <pthread.h> 371 # if $ax_pthread_check_cond 372 # error "$ax_pthread_check_macro must be defined" 373 # endif 374 static void routine(void *a) { a = 0; } 375 static void *start_routine(void *a) { return a; }], 376 [pthread_t th; pthread_attr_t attr; 377 pthread_create(&th, 0, start_routine, 0); 378 pthread_join(th, 0); 379 pthread_attr_init(&attr); 380 pthread_cleanup_push(routine, 0); 381 pthread_cleanup_pop(0) /* ; */])], 382 [ax_pthread_ok=yes], 383 []) 384 385 CFLAGS="$ax_pthread_save_CFLAGS" 386 LIBS="$ax_pthread_save_LIBS" 387 388 AC_MSG_RESULT([$ax_pthread_ok]) 389 AS_IF([test "x$ax_pthread_ok" = "xyes"], [break]) 390 391 PTHREAD_LIBS="" 392 PTHREAD_CFLAGS="" 393 done 394 fi 421 395 422 396 # Various other checks: … … 465 439 [ax_cv_PTHREAD_PRIO_INHERIT], 466 440 [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <pthread.h>]], 467 [[int i = PTHREAD_PRIO_INHERIT; 468 return i;]])], 441 [[int i = PTHREAD_PRIO_INHERIT;]])], 469 442 [ax_cv_PTHREAD_PRIO_INHERIT=yes], 470 443 [ax_cv_PTHREAD_PRIO_INHERIT=no]) … … 488 461 AS_CASE(["x$CC"], 489 462 [x/*], 490 [ 491 AS_IF([AS_EXECUTABLE_P([${CC}_r])],[PTHREAD_CC="${CC}_r"]) 492 AS_IF([test "x${CXX}" != "x"], [AS_IF([AS_EXECUTABLE_P([${CXX}_r])],[PTHREAD_CXX="${CXX}_r"])]) 493 ], 494 [ 495 AC_CHECK_PROGS([PTHREAD_CC],[${CC}_r],[$CC]) 496 AS_IF([test "x${CXX}" != "x"], [AC_CHECK_PROGS([PTHREAD_CXX],[${CXX}_r],[$CXX])]) 497 ] 498 ) 499 ]) 463 [AS_IF([AS_EXECUTABLE_P([${CC}_r])],[PTHREAD_CC="${CC}_r"])], 464 [AC_CHECK_PROGS([PTHREAD_CC],[${CC}_r],[$CC])])]) 500 465 ;; 501 466 esac … … 504 469 505 470 test -n "$PTHREAD_CC" || PTHREAD_CC="$CC" 506 test -n "$PTHREAD_CXX" || PTHREAD_CXX="$CXX"507 471 508 472 AC_SUBST([PTHREAD_LIBS]) 509 473 AC_SUBST([PTHREAD_CFLAGS]) 510 474 AC_SUBST([PTHREAD_CC]) 511 AC_SUBST([PTHREAD_CXX])512 475 513 476 # Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: … … 521 484 AC_LANG_POP 522 485 ])dnl AX_PTHREAD 523
Note: See TracChangeset
for help on using the changeset viewer.